征题5月5日截止!2021 KCTF 春季赛 等你来挑战!
2021-05-01 18:59:00 Author: mp.weixin.qq.com(查看原文) 阅读量:130 收藏

2021 KCTF春季赛 防守方征题 正在火热进行中!
本次CTF大赛赛题背景设置为刀光剑影的江湖
你可以自定义武侠少年一步步成长的轨迹

想掌握上帝视角吗?

想亲自见证少年的成长吗?

打开你的脑洞

为一代武林盟主的诞生铺设道路,

设计有趣好玩的题目

给武林少年最大的考验吧!

还有丰厚的大奖可以赢取!

武林江湖防守战队

这个春天我们等你!

比 赛 详 情

一、活动时间

2021年3月1日 ~ 5月05日(防守方题目准备阶段)
2021年5月10日 ~ 待定(根据攻击方比赛而定)

二、活动地点

看雪CTF 官方网站:https://ctf.pediy.com/
2021 KCTF 比赛页面:https://ctf.pediy.com/game-team_list-14-17.htm

扫码前往👆

三、主办方

看雪学院: https://www.kanxue.com
合作伙伴:虚位以待

防守方 比赛赛制

本届看雪CTF团队赛为线上赛,由论坛会员自由组成攻、防两方团队,每个团队人数不超过 5人。由防守方出题,攻击方夺旗。
1、 防守方提交题目
参加防守的团队,每个团队需要提供一个防守题目到提交区:https://bbs.pediy.com/forum-122.htm(题目名称请注明2021 KCTF)。评委审核通过后方可作为防守方参赛,审核结果在攻击赛开始前一天公布。
2、 赛期
规则:顺序发题、弹性赛期
防守题的赛期根据被破解情况决定,最少1天,最多4天。
一律中午12点发题。发题当天记作第0天。
若第i天上午6点该题被破解次数大于等于3^(3-i),则在第i天中午12点结束该题,发下一题。
解释: 
 发题后的第1天6点,若破解次数少于9人,则继续比赛;  
 发题后的第2天6点,若破解次数少于3人,则继续比赛; 
 发题后的第3天6点,若破解次数少于1人,则继续比赛; 
 以上任意一天继续比赛的条件不满足,就中午12点换下一题;
(6点至12点之间的破解,依然有效) 发题后的第4天中午12点,此题一定结束。
3、 积分规则
3.1 基本原则
    1)根据防守题在赛期内被破解的次数和时间,计算防守题的难度分,进而得到防守方得分。
    2)根据攻击方破解的题目的难度分和破解时间,计算攻击方得分。
    3)防守题难度分是根据攻击方提交flag的情况而更新的,以体现各题之间的相对难度。因此每道题的分数都可能随着赛事的发展会发生变化。比赛结束时的分数将决定最终比赛结果。 
3.2 计算方法
   3.2.1   防守题难度分 = 出题基本分(50分)+难度系数 × 难度加权分(150分)
     1)每道题的原始难度系数 = - log(k*sigma(1/Bi)/T),其中T是此题赛期(天数),k是此题被破解的次数,Bi是此题的被破解时间,i从1到k。
     2)将每道题的原始难度系数线性归一化到[0,1],即得到每道题的难度系数。(在比赛中,尚未被破解的题(含尚未开始比赛的题),暂计其难度系数为1)
     3) 解释:
          i.   被破解次数越少、被破解时间越长、挺得赛期越久的防守题, 其难度系数越大。
          ii.  最简单的题难度系数为0,最难的题为1。
          iii. 最简单的题的难度分是:出题基本分;最难的题是:出题基本分 + 难度加权分
   3.2.2  一血加分 = 防守题难度分 × 一血加权系数(20%)
     1)解释:
          i. 一血的定义是指,题目第一次被破解。 
  3.2.3  攻击方得分 = 攻击方在其破解的每道题上的得分之和
     1) 攻击方在某一道题上的得分 = 此题难度分 × (此题一血时间/此攻击方破解此题的时间+1)/2 ;若此攻击方是此题的一血破解者,则额外获得一血加分
     2) 解释:
          i.   此题的一血破解者将获得:此题难度分 + 一血加分
          ii.  其他破解者无一血加分,且得分依破解时间递减,理论上最少将获得此题难度分的一半。
          iii. 如果未破解成功,则不得分。
   3.2.4   防守方得分 = 防守题难度分
        1)若比赛结束时还无人破解,则额外获得一血加分。   
   3.2.5 此题得分 = 此题难度分  × (80%^n)。
解释:
n:在本题比赛进行状态中,被发现多解次数,n最大值为3。
解释:
n:被发现多解次数,n最大值为3。
如果无人发现多解,则此题得分 = 此题难度分;
如果被1个破解方发现多解,则此题得分 = 此题难度分×80%;
如果被第2个破解方发现多解,则此题得分 = 此题难度分×80%×80%;
如果被第3个破解方发现多解,则此题得分 = 此题难度分×80%×80%×80%=此题难度分×0.512;
攻击方在此题获得的成绩保留不受影响

征 题 说 明

1、征题范围

CrackMe/Reverse(Windows、Android、linux、iOT等)、PWN、WEB、Crypto、Misc 等相关题目。

2、征题数量

将从征集的题目里抽选出一定数量较为优秀的题目来参与KCTF 赛,其他符合规则的题目将录入平台数据库备用。

3、征题期限

2021年3月1日 ~ 5月05日

4、征题要求

A.  所有题目必须是原创并且没有公开过。

B.  防守方应打包提交以下内容:

团队名称、团长QQ、出题者联系电话、参赛题目、题目答案(攻击脚本)、详细的题目设计说明和破解思路以及其他需要说明的各个问题。提交资料不完整的不予通过!

C. 题目提交到看雪CTF提交区:https://bbs.pediy.com/forum-122.htm(题目名称请注明2021 KCTF)

5、题目规则
5.1  关于PWN的设计规则
  • 设计一个存在漏洞的程序。
  • 漏洞包括不限于堆栈溢出、UAF、DOUBLE FREE、OFF BY ONE、格式化、逻辑错误等漏洞。
  • 提供稳定的漏洞利用EXP,攻击者根据漏洞攻击成功后能获得flag,flag格式flag{***}。   
  • 题目以docker形式提交,并提供详细的部署方法。

5.2 关于Window平台CrackMe设计规则

Windows平台题目规则有两个方案,参赛者可以任选一种方案来出题参赛。如果选手采用方案二参赛,必须在提交题目时明确参赛模式,否则默认以方案一模式参赛。

2021年规则更新列表:
1)方案一中不允许使用自己实现VM或壳;
2)方案二中允许使用自己实现的VM或壳,VM或壳的嵌套最多2层。

5.2.1  方案一


A)关于注册码
  

1)CrackMe应有且仅有唯一注册码,除给定的注册码外。如果 CrackMe 被发现多解,则给防守方1次修改机会,并扣多解罚分。若修改后又多解,则下线退赛,攻击方在此题获得的成绩保留不受影响。CrackMe的注册码字符集限定为['!','~'],即ASCII码范围是[33,126],共94个可选字符。不允许将注册码绑定硬件ID。

2)CrackMe界面   

参赛CrackMe界面必须有且仅有注册码输入项,例如类似的(界面仅供参考,可以是控制台):

3)CrackMe输入
i. CrackMe在没有被附加调试的情况下运行时,第一次运行时输入正确注册码,必须显示成功提示信息,若是重启验证的,在重启后必须显示。
ii. 在CrackMe没有被改动且没有被其他程序干扰的情况下,只要输入了注册码,显示了成功信息,则认为该注册码是正确的,否则设计不合理。
4) CrackMe输出显示
i. 注册成功,要出现成功提示信息。
ii. CrackMe里不允许出现虚假的注册成功提示信息。
B) 算法规则

1)不鼓励穷举

在当前技术条件下,序列号从理论上讲,是可逆或可求出来的,如果破解者必须通过穷举才能得到注册码的,设计文档里一定要描述清楚,并且将穷举代码和程序发给评委验证。评委验证时,如果穷举时间超过5分钟则不通过,另外如果CrackMe的启动时间超过10秒也不通过,需要返回修改,每次比赛每个提交的题目有两次验证机会。

2)其他限制条件

  1. 参赛 CrackMe 必须可以在 WIN10/32、WIN10/64 、WIN7/32、WIN7/64、WINXP其中一种系统正确运行。 

  2. 参赛 CrackMe 不可使用第三方保护工具来保护CrackMe,例如第三方壳和VM。

  3. 参赛 CrackMe不可使用VM来保护,包括第三方VM和自己写的VM(注:若要用自己实现VM参赛,请按方案二规则提交题目)

  4. 参赛CrackMe执行后,不能干扰破解者正常使用电脑(比如关闭显示器、禁用键盘鼠标、关机、暴力占用内存cpu资源使电脑死机、破坏电脑文件等类似操作不允许),但允许采用技术手段关闭调试器,防止破解者破解。

  5. 参赛CrackMe设计的总体原则是绿色安全,不可含木马或 rootkit,没有任何危险或恶意程序,不能对系统进行破坏,可以正常结束,结束后不能给系统留下垃圾(比如临时文件要删除,驱动要卸载干净),不可使系统重启。

  6. 参赛CrackMe如果有任何危险或者恶意行为,ban ID。如果有杀软或者360等安全软件报CrackMe有异常的行为,评委有权要求参赛选手解释。

  7. 参赛CrackMe 不可以联机到网络,或使用服务器注册,CrackMe必须可以在单机运行。

  8. 所提交的参赛CrackMe运行的文件包括.exe.dll.sys等一起在不打包压缩时总大小不超过1M。

  9. 如果评审有怀疑,例如怀疑加壳伪装,可以要求队伍提供CrackMe 的源码。

  10. 如果评审认为 CrackMe 使用了不合理的设计,或违反比赛精神,便会判定CrackMe无效,取消奖品和名次,并把参赛者提交的技术文件,在论坛公开,让会员公开讨论。

   

5.2.2  方案二

A)界面
1)防守方发布的Crackme应允许输入用户名和序列号,并提示用户名和序列号是否匹配正确。例如类似的(界面仅供参考,可以是控制台):
2)防守方在发布CrackMe时,应向大众公开一组用户名和序列号,即 “ Name/Serial ” ,其中公开的这个用户名“Name“,必须是该CrackMe文件的 hash值。
hash算法指定为SHA256,用户名为hash结果的前64bit的16进制大写文字例如:参赛CrackMe.exe文件的hash结果是 50be38745d82d93f3a974701e86c1cafcbc2ec83d1f1913d216079022ba7317f,则用户名 “Name“ 应为 50BE38745D82D93F如果CrackMe不止一个文件的话,计算hash时应包含CrackMe的所有文件(第三方共享库除外)。
参考hash计算工具:https://codebeautify.org/sha2-hash-generator

B)判胜条件

1)若攻击方找出特定用户名(“KCTF”,不含引号) 的序列号,经KCTF系统自动确认,将认定攻击方获胜;

2)若攻击方找出特定用户名(“KCTF”,不含引号) 的第二个序列号,经KCTF官方确认,将认定攻击方获胜,且此题多解;

C)规则限制

1)干净环境中,10秒内出提示且不能虚假提示;
2)KeyGen算法不能基于“未在CrackMe中公开的秘密信息”。如果需要穷举,则穷举时间在目前主流机型中必须小于5分钟;
3)不能依赖网络、不能依赖硬件;
4)禁止使用第三方保护工具、禁止恶意破坏机器;
5)参赛 CrackMe 允许用自己未公布的壳或VM或其他手工处理的方法来保护程序(VM或壳的嵌套最多2层),但必须将保护该CrackMe所使用的壳或VM或其他手工处理的方法与CrackMe一同提交,评委审核通过后方可参赛。
所提交的壳或VM或其他手工处理的方法将在赛后向广大会员公开。凡违反该比赛规则的CrackMe将作废,设计该CrackMe的会员将取消本届比赛的参赛资格。
6)文件尺寸不超过10M;
7)同一用户名不应有多个序列号,否则罚分。  
8)禁止在Crackme中为特定用户名(“KCTF”)设立独立验证路径,以绕开hash用户名的验证路径 。
9)放宽技术限制
i. 不限制使用套娃。可以使用任何数据和代码变换;
ii. 不限制线索隐藏方式。可以将线索以任何形式置于CrackMe的任何位置;
iii. 序列号字符集限定为['!','~'],即ASCII码范围是[33,126],共94个可选字符。
5.3 关于Android/iOS平台CrackMe设计规则

参考Windows平台规则(规则一和规则二),确保CrackMe能在常见移动端稳定运行。


5.4 关于WEB题目设计规则
  • 设计一个存在WEB漏洞的WEB程序
  • 漏洞包括不限于注入、命令执行、文件上传等漏洞
  • 攻击者根据漏洞攻击成功后能获得flag,flag格式flag{***}
  • 题目以docker形式提交,并提供详细的部署方法。

5.5 关于智能硬件PWN设计规则
  • 设计一个可以运行于模拟器如qemu中基于uboot的arm32位程序。
  • 该程序能够通过uboot引导并稳定执行。
  • 该程序可设计为存在漏洞程序、crackme程序等。
  • 参赛者可以解题成功后获得flag{*********}。
  • 设计者需提供可以运行设计程序的qeum版本信息、以及让uboot成功运行起来的必要信息(如模拟的目标板、内存等等)。
  • 设计者还需要提供已经设计好的uboot二进制文件、比赛程序、以及解题思路及答案。

奖 品

奖项设置 

一等奖:极米(XGIMI)H3 投影仪 智能家庭影院

攻防双方各一名

勋章+证书

二等奖:任天堂 Nintendo Switch 国行续航增强版红蓝主机 & 健身环大冒险

攻防双方各一名

勋章+证书

三等奖:雷蛇 Razer 巴塞利斯蛇终极版

攻防双方各一名

勋章+证书

幸运奖:看雪最新定制T恤

(攻防双方 4~9名)

最受欢迎奖:HarmonyOS鸿蒙开发板 HiSpark IPC DIY开发套件

评选对象:2021 KCTF春季赛 参赛战队(包含防守方+攻击方)

评选方式:登陆看雪账号,并为喜欢的战队投票,每支战队可投一票。

投票时间:比赛结束后一周

新思路奖:HarmonyOS鸿蒙开发板 HiSpark IPC DIY开发套件

评选对象:2021 KCTF春季赛参赛防守方战队

评选方式:

1、会员投票(占比60%):登陆看雪账号,并为喜欢的战队投票,每支战队可投一票。

2、看雪KCTF专家评审团投票(占比40%):5位评审团成员投票,每人一票。

投票时间:比赛结束后一周

主办方

看雪CTF(简称KCTF)是圈内知名度最高的技术竞技之一,从原CrackMe攻防大赛中发展而来,采取线上PK的方式,规则设置严格周全,题目涵盖Windows、Android、iOS、Pwn、智能设备、Web等众多领域。
看雪CTF比赛历史悠久、影响广泛。自2007年以来,看雪已经举办十多个比赛,与包括金山、360、腾讯、阿里等在内的各大公司共同合作举办赛事。比赛吸引了国内一大批安全人士的广泛关注,历年来CTF中人才辈出,汇聚了来自国内众多安全人才,高手对决,精彩异常,成为安全圈的一次比赛盛宴,突出了看雪论坛复合型人才多的优势,成为企业挑选人才的重要途径,在社会安全事业发展中产生了巨大的影响力。
热血江湖,英雄辈出,
还在等什么,快来参赛吧!

扫码前往👆


- End -
公众号ID:ikanxue
官方微博:看雪安全
商务合作:[email protected]

球分享

球点赞

球在看


文章来源: http://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458384191&idx=3&sn=3d68182b43fa1474cc945c2f978037b5&chksm=b180c7b586f74ea3910d19896426d82512936cd500f0703fd0f4a847ea0e7fc2dbfc85bf003c#rd
如有侵权请联系:admin#unsafe.sh