结合CTF竞赛模式的信息安全课堂教学

2018年1月31日10:35:41 发表评论 9 阅读

?P键词:信息安全;CTF;莫尔斯码;信息隐藏;教学实践

0 引 言

在信息安全概论、网络攻击与防御、信息隐藏等课堂上,教师一般采用PPT、提问、演示等传统方法教学,较难激发学生的兴趣。将学生身边的故事结合竞赛的方式,特别是采用夺旗赛(capture the flag,CTF)模式,可有效激发学生的学习热情和专业兴趣。

CTF源自1996年DEFCON全球黑客大会,是一种网络安全技术人员之间进行的可受控环境的技术竞技形式,从而取代之前真实的网络攻击竞赛,至今已成为全球范围内网络安全圈流行的竞赛形式。DEFCON CTF是目前全球最高技术水平和影响力的CTF竞赛。CTF竞赛分为以下3种模式[1]。

(1)解题模式(jeopardy)。参赛队伍通过互联网或者现场网络参与竞赛,题目主要包含密码学、数字取证、逆向分析、漏洞挖掘与利用、Web渗透、隐写分析、安全编程等类别,通常用于在线选拔赛,以解题的分值和时间排名。

(2)攻防模式(attack-defense)。参赛队伍在受控环境的网络空间进行相互攻击和防守,通过挖掘网络服务漏洞并攻击对手服务得分,修补自身服务漏洞进行防御,避免丢分。比赛情况可通过得分实时反映,以最终得分定胜负。比赛一般会持续48h以上,因此比赛既考验参赛队员的智力和技术水平,又考验他们的体力和团队合作能力。这种模式是一种竞争激烈、高度透明且具有很强观赏性的网络安全赛制。

(3)混合模式(mix)。结合解题模式与攻防模式,参赛队伍通过解题获取一个初始分数,然后通过攻防对抗进行得分的增减,以最终得分高低确定胜负。

1 莫尔斯码破译

1.1 莫尔斯码里的爱情故事

曾经神秘的莫尔斯密码,在网络空间演绎了一段费尽周折的爱情猜谜传奇。在百度的密码吧,一则2009年1月23日4时12分首发,已有1 316页50 738个跟帖,标题为“求救,我已经快想爆了”的帖子里,帖主说[2]:

“最近和一个心仪的女生告白,谁知道她给了一个摩斯密码给我,说解出来了才答应和我约会。可是我用尽了所有方法都解不开这个密码。好郁闷啊。只能求教你们了。

****-/*----/----*/****-/****-/*----/---**/*----/****-/*----/-****/***--/****-/*----/----*/**---/-****/**---/**---/***--/--***/****-/

她唯一给我的提示就是这个是5层加密的密码......

也就是说要破解5层密码才是答案......

好郁闷啊......

救救我吧......”

网友根据莫尔斯密码对照表,发现对应的数字组合为“4194418141634192622374”。网友“片羿天使”将其转换成手机键盘字母,以上述“41”为例,其对应的就是“4”上的第一个字母“G”,“94”则是“9”的第4个字母“Z”。这样得到第2层答案:“GZGTGOGXNCS”。

片羿天使说“因为QWE的格式是被世人所认可的,也就有可能成为密码的码表。码表QWE=ABC依次类推。”据此,将上述手机键盘字母转换为第3层答案:“OTOEOIOUYVL”;然后将这组字母分成 “OTOEOI”和“OUYVL”两排,对插并重组得到排列:“OOTUOYEVOLI”;最后一层倒序即得到最终答案“I LOVE YOU TOO”。

爱情故事有了完美的答案,将上述故事的密码内容稍作修改,就可使其成为很好的课堂竞赛素材。

1.2 竞赛素材准备

编写莫尔斯电码与英文字母、数字及部分标点符号的互译程序[3]。其中,文本的空格在译成电码后用“_”代替,程序中未包括的符号用“+”代替。文本用“word.txt”文件保存,电码用“morse.txt”文件保存。输入的文本可有大小写,输出的文本只有小写。运行程序输入“1”是将文本译成电码,程序可译包括26个英文字母、*#/()@$?-.,;":!=_' 以及数字;输入“2”是将电码译成文本,输入“4”为退出。译完之后,再输入任意键程序结束退出。相关程序源代码和编译工程文件可参考文献[3]。

结合上述爱情故事,为适当增加破译难度,可采用凯撒方法,译码时可进行移位处理。以如下文字为例,“today we continue a never ending journey to bridge the meaning of those words with the realities of our time for history tells us that while these truths may be self-evident they’ve never been self-executing that while freedom is a gift from god it must be secured by his people here on earth”,通过移位6位后生成的摩尔斯码测试纸如图1所示。

1.3 莫尔斯码密码分析

密码分析学的主要任务是破译密码或伪造认证密码,窃取机密信息或进行欺诈破坏活动。攻击的方法有两种:一种是对一个保密系统截获密文进行分析,称为被动进攻;另一种是非法入侵者采用删除、更改、添加、重放、伪造等手段向系统注入假消息,称为主动进攻。典型的攻击方法有如下几种[4]。   (1)密文攻击。攻击者仅仅基于截获的加密消息,尝试破解明文。这种攻击对攻击者而言基本上是开放的,对密钥的暴力攻击是此类攻击的一个典型示例。

(2)已知明文攻击。在某些情况下,攻击者可能知道部分或全部加密的明文。典型的已知明文攻击例子是攻击者知道加密后的内容包含标准头文件格式,或者攻击者知道消息与某一特定主题相关,这有助于攻击者破译密钥或其他消息。

(3)选择明文攻击。攻击者通过插入一些特定的明文并截取其加密内容,确定该加密方法的某些统计特性,然后选择一些明文分别测试所确定的加密方法参数。例如,假设Alice的邮件服务器上运行一个可过滤电子邮件病毒的程序,同时她将疑似病毒的邮件加密后转发给病毒专家Bob。攻击者故意将一个病毒邮寄给Alice,从而就知道某些特定的内容将出现在Alice发送给Bob的邮件中,这样就可部分或全部破解Alice的加密方法。

(4)选择密文攻击。攻击者有可能确定如何对选中的密文解密。例如,攻击者伪造一份从Bob到Alice的加密消息(该消息中夹杂攻击者欲解密的密文),Alice试图对消息解密时得到一些杂乱的数据。通过截获Alice回寄给Bob或者以某种不安全方式存储的这些杂乱数据,攻击者有可能获得实际解密的信息。

攻击算法中较为传统且高效的破译方法是“字母频率攻击”,古代密码多可通过字母频率攻击破解。以恺撒密码为例,即使在不知道移位所对应数字的情况下,可通过检查26个字母出现的频率来推测。事实证明,英语(或拉丁语)字母出现的频率彼此差异很大。字母“e”在正常的英语散文中出现频率高达13%(仅统计字母,不包括标点和空格),这样攻击者可知道原始消息中有多少个“e”,因为密文中出现频率为13%左右的任何字母都极可能是表示“e”,其次最常用的字母是“t”和“n”。对使用恺撒密码的消息进行加密不会改变消息中字母的统计分布,它只会使另外的字母以同一频率出现。

在讲述典型的攻击方法和攻击算法后,教师应将前述准备的竞赛素材发给学生,为防止作弊,可准备多组素材或者提供每名学生一份独立的素材;要求学生破译完成后通过邮件或者手机短信甚至微博、微信留言等方式提交,从而确定最先成功破译的前几名学生。在不同专业和不同班级的教学实践中发现,学生对破译工作兴趣盎然,甚至到废寝忘食的地步,基本熟练掌握莫尔斯编码和字母频率攻击方法并取得较好的成绩。

2 乱码图片制作

传统的信息隐藏技术主要有两种[5]:①技术隐写术,将秘密传递的消息记录下来,然后通过其他媒体发送出去,即将记录的“信息”隐藏起来的技术,称为“技术隐写术”,如将信息隐藏在信使的鞋底或妇女的耳饰中、使用隐写墨水在报纸的某些字母上作标记、将信息隐藏在缩微胶片中等;②语义隐写术,将“记录”这个行为本身隐藏起来,称为“语义隐写术”,即消息由隐藏的“写”的语言或语言形式所组成,如改变字母笔画的高低以隐藏信息、制作特殊的雕刻或绘画作品使得从不同角度观察会显现不同的影像等。

很多人可能经常在微信朋友圈见到一些“乱码图”,当你闭上一只眼睛,用一只眼睛从手机充电口看屏幕时就会恍然大悟[6]。微信朋友圈中的乱码图其实是一种语义隐写。在介绍传统的信息隐藏技术后,我??对2013级信息安全专业的学生发出制作微信乱码图的挑战,要求可以自行组建每组最多3人的团队,可以上网查找理论,不限开发语言,能够将给定的短语自动生成乱码图片,奖励是第一、第二完成任务的团队成员的该课程平时成绩分别评定为“优秀” “良好”。上午第4节课上布置任务,当天下午1点多就收到第1个完成的作品,是用Matlab语言实现的上述功能,内容为“这个优我们拿定了,陈添明和信明权组”,如图2所示。

稍后收到第2组同学的作品,采用了不同的算法,用C语言实现,内容为“雕栏玉砌应犹在只是朱颜改,问君能有几多愁恰似春水流”,如图3所示。

之后收到其他几个小组的作品,但思路与前述作品大同小异。后续课程中,邀请第1名和第2名小组就各自方法分别作技术报告,气氛热烈,收到很好的课堂教学效果。

3 教学成果

将上述教学方法应用于信息安全专业信息隐藏课程,经过一个学期的教学实践,教学效果良好。表1为该班级的考试课程卷面成绩分析,及格率为100%,平均分为75.01。

通过表1可以看到,全班学生均通过闭卷考试,其中有24.64%的学生成绩为优良。以下是部分学生对该课程的反馈信息:

“原本一直以为图片信息隐藏是很传奇的存在,当然,现在它的存在依旧很传奇,但是在魏老师名师手把手的带领下,突然有种我们信息安全专业终于也能做一点东西出来的感觉。”――学号:20136007

“本次实验在老师的带领下,我学会了这些原本认为很复杂的知识,虽然有很多困难和问题,但是更多的则是新知识的补充。最喜欢我们这门课的原因是老师给了我们很大的自我发挥空间,既自学到很多内容,又在一次次实验中发掘出自己的潜力,提高了自己的总结归纳能力和分析解决问题的能力,同时,认真和严谨的精神再次被唤醒。”――学号:20136153

“这学期学习信息隐藏技术与应用对我来说是一次愉快的经历,我非常喜欢老师上课轻松幽默的风格,我觉得某种程度上说这才应该是大学应有的学习氛围。通过老师课堂上举的生动实例,我了解了信息隐藏这门学科的分支技术和应用领域,虽然我的专业课成绩不是很好,但是对于这门课程我是真的感兴趣的,我以后会更加努力学习专业知识,提升自己的能力。”――学号:20133275

4 结 语

在信息安全概论、网络攻击与防御、信息隐藏等课程的教学过程中,通过将有趣的网络故事“莫尔斯码破译”、流行的微信朋友圈“乱码图片制作”素材进行加工提炼,结合相关专业知识,采用CTF竞赛的教学方法,深受学生的欢迎,极大激发了学生的创新热情。在2015―2016学年第2学期,我们所指导的信息安全专业有3组学生申请获批上海市大学生创新创业训练计划项目3项,另有2组学生发表了2篇与网络攻击与防御相关的学术论文(其中1篇期刊论文,1篇会议论文),成功申请3项软件著作权,取得了较好的效果。下一步,我们计划结合相应知识点设计更多的类似案例,针对部分适合在受控网络空间进行相互攻击和防守的案例采用攻防模式,以期最大化地激发学生的学习热情,培养团队协作能力和提高动手能力。

weinxin
微信客服
有需要论文代写代发服务的亲可以扫描微信二维码联系客服MM沟通。或者加我们客服的QQ281391381咨询。