欢迎来到天天文库
浏览记录
ID:20513694
大小:50.52 KB
页数:11页
时间:2018-10-13
《夺旗竞赛引入软件逆向分析实践教学的探索》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、夺旗竞赛引入软件逆向分析实践教学的探索摘要针对软件逆向分析课重点培养学生逆向思维能力的教学实际,结合该课程和夺旗竞赛都存在正向逆向对抗的特点,在实践教学中引入夺旗竞赛形式,通过学习效果验证了该教学方式的有效性。关键词软件逆向分析夺旗竞赛逆向思维中图分类号:G424文献标识码:ADOI10.16400/j.cnki.kjdkz.2015.05.048IntroducingCTFinSoftwareReverseAnalysisCoursePENGJianshan[l],ZHANGMi[2],CAOYu[l]([1]PLAInformationEngin
2、eeringUniversity,Zhengzhou,He^an450002;[2]He'nanProvinceArchitectureProfessionalTechnologyInstitute,Zhengzhou,He’nan450002)AbstractThecourse"SoftwareReverseAnalysis"focusesontrainingstudents'reversethinkingability.Ithasthecharacteristicofagainstcompetitionbetweenforwardandrever
3、sethinking,sodoesCTFcompetition.WeintroducedCTFcompetitionforminteachingpractice,and夺旗竞赛引入软件逆向分析实践教学的探索摘要针对软件逆向分析课重点培养学生逆向思维能力的教学实际,结合该课程和夺旗竞赛都存在正向逆向对抗的特点,在实践教学中引入夺旗竞赛形式,通过学习效果验证了该教学方式的有效性。关键词软件逆向分析夺旗竞赛逆向思维中图分类号:G424文献标识码:ADOI10.16400/j.cnki.kjdkz.2015.05.048IntroducingCTFinSof
4、twareReverseAnalysisCoursePENGJianshan[l],ZHANGMi[2],CAOYu[l]([1]PLAInformationEngineeringUniversity,Zhengzhou,He^an450002;[2]He'nanProvinceArchitectureProfessionalTechnologyInstitute,Zhengzhou,He’nan450002)AbstractThecourse"SoftwareReverseAnalysis"focusesontrainingstudents'rev
5、ersethinkingability.Ithasthecharacteristicofagainstcompetitionbetweenforwardandreversethinking,sodoesCTFcompetition.WeintroducedCTFcompetitionforminteachingpractice,andverifiedthevalidityofthismethodthroughlearningeffect.Keywordssoftwarereverseanalysis;CTF;reversethinking软件逆向分析
6、课是我校计算机科学与技术、网络工程专业的必修课程,旨在使学生掌握软件逆向分析的原理方法和工具使用,既是对C语言、汇编语言等课程知识的综合运用,也是后续专业课程学习的重要基础。该课程重点培养学生的逆向思维能力,而逆向思维过程往往是与正向思维博弈对抗的过程。我们观察到该特点,尝试将具有典型对抗特点的夺旗竞赛(CTF,CaptureTheFlag)形式引入该课程的实践教学,做了一次有益的教学方式改进探索。1软件逆向分析课特点软件逆向分析课安排在第五学期开设,前提课程有计算机原理、C语言与程序设计、X86汇编语言、操作系统结构等,教学内容包括反汇编原理和算法
7、、数据流和控制流分析、逆向分析工具使用、函数工作过程、算法逆向分析实例等。该课程具有以下特点:1.1逆向思维与正向思维的对抗软件逆向分析被涵盖在软件逆向工程范畴内。①软件逆向工程是软件科学和计算机科学的一个分支,它综合了加密和解密、编译和反编译、系统分析、程序理解等多种计算机技术,从可运行的程序系统出发,生成对应的源程序、系统结构以及相关设计原理和算法思想的文档等。②可见软件逆向是对已构建程序的解构还原,从二进制代码出发,逆向猜测、推理、分析出程序原本的功能、逻辑甚至源代码。由于软件在编译为二进制代码时已消除了高级语言中的语义、数据类型、数据结构等方
8、便人们理解的信息,极大增加了逆向分析的难度,所以逆向分析不可能针对软件的所有部分,大多数时候都是在推理或猜测
此文档下载收益归作者所有