查看原文
其他

2019 KCTF Q2 | 你来布阵,我来破阵!

看雪CTF 看雪学院 2019-05-25

你来布阵,我来破阵

一来一往,创意的火花油然而生。

 

这也是CTF 比赛的意义所在。在网络空间中的PK和过招,不是武力的对抗,而是丰富多彩思想的碰撞!

 

这个碰撞不分国界,不分种族,没有年龄代沟,没有男女歧视,在这场CTF 实力的PK中,你可以和各路大神汲取经验,他可能是一名医生,可能是一个铁路管道工,也可能是一个刚刚毕业的小学生......

 

玩CTF,最有趣的,不是我的题无人破解,而是居然有人用了我始料未及的方法花式破解了我的题。英雄遇见英雄,自是一件乐事。

 

来2019 KCTF,出一道题,和各路大神过过招吧!



活动详情


一、时间:2019年4月1日~2019年6月10日


二、地点:看雪 CTF 官方网站:https://ctf.pediy.com/


三、主办方:看雪



本次看雪CTF对比赛赛制进行了重大更新。由原来的单场赛事升级为年度赛事,比赛分为晋级赛及总决赛两个阶段,时间横跨整个2019年,热度持续不断。让我们一起来看看究竟有哪些更新吧!




比赛赛制


本届看雪CTF团队赛为线上赛,由论坛会员自由组成攻、防两方团队,每个团队人数不超过 5人。由防守方出题,攻击方夺旗。


攻防团队通过晋级赛,争取决赛名额。


晋级赛共有三场比赛,分别为Q1、Q2、Q3



防守征题规则


1、提交题目


参加防守的团队,每个团队需要提供一个防守题目到征题平台(2019 看雪CTF提交区https://bbs.pediy.com/forum-122.htm),评委审核通过后方可作为防守方参赛,审核结果在攻击赛开始前一天公布。


晋级赛阶段(Q1、Q2、Q3),每个防守方团队可以提交多题,但本赛季仅可参选1题。


2、比赛规则


每个赛季,评委选出6~8题参赛;


比赛开始时(3月10日、6月10日、9月10日)中午12点,所有题目同时放出来。


比赛时间为1-2周,共14天结束。


晋级赛阶段三个赛季,每季的第一名可直接晋级总决赛。三季累计排名前6名防守者成功晋级总决赛(若已经直接晋级或弃权,依次往后排),角逐最终大奖!



征题说明


1、征题范围

PWN、CrackMe(Windows、Android)、WEB、智能硬件等相关题目。


2、征题数量

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


3、征题时间

2019年1月31日~2019年12月31 日


4、征题要求


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

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


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


5、题目规则


(1)关于PWN的设计规则


  • 设计一个存在漏洞的程序。

  • 漏洞包括不限于堆栈溢出、UAF、DOUBLE FREE、OFF BY ONE、格式化、逻辑错误等漏洞。

  • 提供稳定的漏洞利用EXP,攻击者根据漏洞攻击成功后能获得flag,flag格式flag{***}。


(2)关于Window平台CrackMe设计规则


  • 关于注册码

A. CrackMe应有且仅有唯一注册码,除给定的注册码外,在该题目结束前,攻击者每提交一个不同的正确的注册码,防守方的分数将被扣分200。CrackMe的注册码只能由数字、字母构成,可以是纯数字或纯字母,也可以是字母和数字组合,不允许有其他字符。不允许将注册码绑定硬件ID。


B. CrackMe界面

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


C. CrackMe输入

 1) CrackMe在没有被附加调试的情况下运行时,第一次运行时输入正确注册码,必须显示成功提示信息,若是重启验证的,在重启后必须显示。

 2) 在CrackMe没有被改动且没有被其他程序干扰的情况下,只要输入了注册码,显示了成功信息,则认为该注册码是正确的,否则设计不合理。


D.  CrackMe输出显示

1) 注册成功,要出现成功提示信息。

2) CrackMe里不允许出现虚假的注册成功提示信息。


  • 算法规则


A. 不鼓励穷举

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


B. 其他限制条件

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

  • 所有 CrackMe 不可使用第三方保护工具来保护CrackMe,例如第三方壳和VM.,允许用自己未公布的壳或vm或其他手工处理的方法来保护程序,但必须将保护该CrackMe所使用的壳或VM或其他手工处理的方法与CrackMe一同提交,评委审核通过后方可参赛。所提交的壳或VM或其他手工处理的方法将在赛后向广大会员公开。凡违反该比赛规则的CrackMe将作废,设计该CrackMe的会员将取消本届比赛的参赛资格。

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

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

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

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

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

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

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


(3)关于Android/iOS平台CrackMe设计规则


参考Windows平台规则,确保CrackMe能在常见移动端稳定运行,题目打包压缩后不得超过3M,不建议采用LLVM保护。


(4)关于WEB题目设计规则


  • 设计一个存在WEB漏洞的WEB程序

  • 漏洞包括不限于注入、命令执行、文件上传等漏洞

  • 攻击者根据漏洞攻击成功后能获得flag,flag格式flag{***}


(5)关于智能硬件PWN设计规则


  • 设计一个可以运行于模拟器如qemu中基于uboot的arm32位程序。

  • 该程序能够通过uboot引导并稳定执行。

  • 该程序可设计为存在漏洞程序、crackme程序等。

  • 参赛者可以解题成功后获得flag{*********}。

  • 设计者需提供可以运行设计程序的qeum版本信息、以及让uboot成功运行起来的必要信息(如模拟的目标板、内存等等)。

  • 设计者还需要提供已经设计好的uboot二进制文件、比赛程序、以及解题思路及答案。



注意


题目设计过程中,不提倡用套娃式出题手法,套娃手法最多2层,超过2层的,采纳与否视题目质量由评委讨论决定。 


套娃式出题是一种出题方式,指防守方在设计crackme时,要求攻击方必须顺序破解多个难题才能得到正确序列号,且这些难题之间缺乏内在关联。这些难题之间唯一的联系是:如果没有成功破解前一个难题,就无法看到后一个难题的完整代码或数据,无法展开分析。除此以外,前序破解工作不能为后序破解工作提供任何帮助或线索。本质上就是强迫攻击方破解多个不相关的题。 


典型的套娃式出题有:

1) SMC,即必须使用前一个难题的解题key才能正确解密下一个难题的代码;


2)前一个难题的解题key,是下一个数学难题不可或缺的关键参数。


还在等什么,快来提交题目吧~~~



- End -





自2000年至今,看雪社区经过近二十年的发展,聚集了国内众多安全圈大咖。看雪 CTF(简称KCTF),采取线上PK的方式,参赛人数过万,人气火爆!历年来CTF人才辈出,CTF的题目也愈加丰富多彩,题目涵盖二进制、Web、Pwn、智能设备、Android、iOS 等众多领域,突出了看雪论坛复合型人才的优势,成为各企业挑选人才的重要途径。





公众号ID:ikanxue

官方微博:看雪安全

商务合作:wsc@kanxue.com



↙点击下方“阅读原文”,去提交题目!

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存