index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html
![]()
东南大学杨望老师分享了将DataCon大数据安全分析竞赛融入“网络入侵检测与数字取证”和“软件安全与恶意代码分析”课程的教学经验。通过课程设计、竞赛设置和数据分析,提升学生实战能力和综合素质,培养应对大数据时代网络安全挑战的能力。文章详细介绍了课程改革方案,包括实验项目、竞赛设置、数据处理和分析等,为其他高校提供了宝贵的教学参考。
🛡️ 将DataCon竞赛融入网络安全课程,弥补传统实践课程的不足,强化学生在大数据时代应对网络安全挑战的综合能力,是现代网络空间安全培养方案改革的重要方向。
💻 课程设计上,增设基于真实数据集的实验项目,如使用机器学习模型识别异常网络行为、通过大数据对恶意代码进行检测和分类,培养学生清洗、分析、可视化数据的能力。
🏆 竞赛设置上,不同于CTF,DataCon数据竞赛更侧重于解决实际工作中的大数据分析难题,鼓励团队合作,模拟真实的网络安全团队协作环境。
📊 通过对竞赛数据分析,评估课程教学效能,并根据不同题目的难度差异,调整教学策略,确保竞赛题目对学生能力培养的有效性。
原创 东南大学 杨望 2025-03-27 11:46 北京
东南大学教学经验分享。

DataCon是国内首个以大数据安全分析为核心的大型竞赛,大赛将竞赛、教学与科研三者紧密结合,致力于提升高校学生以及网络安全从业人员在真实网络中的数据分析水平,全面培养实战型网络安全人才。截至目前,DataCon累计发布了20部开放数据集,收到来自100多所高校和机构的500多份有效申请。目前,至少有60多篇已公开发表的学术论文、专利等科研成果引用了该开放数据集。这些数据集还被用于教学实践环节,其中,东南大学网络空间安全学院用于课程教学和考核。本篇文章,东南大学杨望老师为大家分享与DataCon结合的相关教学经验。
杨望,工学博士,东南大学网络空间安全学院国产开源创新中心主任,讲师, CERNET华东(北)地区网络安全事件响应组(NJCERT)技术负责人,腾讯TCTF百人计划导师,东南大学SUS战队指导老师,曾在匹兹堡大学访问进修,主要研究方向为自动化威胁情报分析和威胁追踪,以及人工智能中的安全挑战。主持和参与国家科技支撑计划、国家自然科学基金等各类科研项目20余项,先后发表论文40余篇,并带领东南大学SUS战队多次参与各类网络安全竞赛,获得“挑战杯”特等奖 2次,“全国大学生信息安全竞赛”一等奖4次,累计各种奖项20余项。并获得江苏省科学进步奖一二等奖各1次。
在当前网络空间安全教学培养方案中,传统的教学方法正逐渐向更为实战化、数据驱动的方向转型,以更好地适应日新月异的网络安全挑战。尽管在现有的网络安全课程实践中,Capture The Flag (CTF) 比赛因其高度模拟真实攻击与防御场景而备受青睐,通过分析二进制程序、挖掘Web漏洞、破译密码学挑战等,有效提升了学生的实战技能与应急响应能力,但这种模式往往聚焦于“小数据”环境下的技术细节,重视的是一个程序、一个网站的分析,忽视了大数据分析在现代网络安全中的核心地位。鉴于此,数据科学作为一股不可忽视的力量,开始渗透并重塑网络安全教学的框架。它不仅能够帮助学生掌握处理大规模数据集的技能,还能培养其利用数据洞察潜在威胁、预测风险趋势的能力,这是CTF所难以全面覆盖的领域。因此,将数据科学竞赛(如DataCon)融入网络安全课程,成为一种创新的教学模式,弥补传统实践课程的不足,强化学生在大数据时代应对网络安全挑战的综合能力,是现代网络空间安全培养方案改革的一个重要方向。 东南大学网络空间安全学院,在 “网络入侵检测与数字取证”及“软件安全与恶意代码分析”两门课程中率先将DataCon数据竞赛纳入课程评价体系,锻炼学生的数据科学能力,这不仅是对传统教学模式的一次突破,更是对数据科学在网络安全领域应用潜力的深刻认识与实践探索。在课程设置上我们主要进行了如下两个改动:第一,数据科学相关的实验课程:课程内容不再局限于理论讲授,而是增设了一系列基于真实数据集的实验项目,如使用机器学习模型识别异常网络行为、通过大数据对恶意代码进行检测和分类等。这些实验要求学生不仅要熟悉网络流量和恶意代码相关安全技术,更要具备清洗、分析、可视化数据的能力,从而在复杂的数据海洋中精准捕获安全信号。 第二,课程中的竞赛设置:不同于传统的CTF,DataCon数据竞赛更侧重于解决实际工作中的大数据分析难题,如通过分析大量日志数据发现攻击模式、构建模型预测安全事件等。竞赛不仅考验学生的快速学习和解决问题的能力,还鼓励团队合作,模拟真实的网络安全团队协作环境,提升跨学科交流与协同作战的实战经验。为了更好地介绍课程的改革方案,下面主要从课程设计、竞赛设置、竞赛数据分析三个方面进行阐述,介绍了这两门课程的进行DataCon竞赛实验的一点经验,希望能对兄弟院校相关专业人才培养有所裨益。目前,我们已经将DataCon竞赛相关内容引入培养方案中与奇安信技术研究院合作的两门专业课程,分别是“网络入侵检测与数字取证”和“软件安全与恶意软件代码分析”(如图1所示)。“网络入侵检测与数字取证”作为专业主干课,旨在培养学生掌握网络入侵检测的基本原理和方法,以及数字取证的技术和流程。而“软件安全与恶意代码分析”作为专业选修课,则侧重于培养学生对恶意代码的检测和分析能力。这两门课程的共同点是都需要处理海量数据,入侵检测课程需要学习海量流量相关的检测技术,而恶意代码则需要分析海量恶意代码样本,所以这两门课程都与数据科学密切相关,引入DataCon竞赛可以更好地锻炼学生的综合素质和实战能力。这两门开设的时间在大三的春季学习,之前学生已经学习了相应前置课程,如计算机网络、操作系统、模式识别、计算机网络安全和系统安全。其中模式识别课程以理论为主。“网络入侵检测与数字取证”课程的设计我们进行了多年的迭代和改进,逐步适应数据科学技术教学的需求。2019年课程第一次开设时课程内容偏向于入侵检测基本原理和技术的介绍,通过介绍和对比三种不同的开源检测系统Snort/Suircata/Zeek的工作原理,让学生学习了如何利用入侵检测系统发现报文/流/符合流量中的攻击行为。在Zeek系统中,通过其Sumstats统计模块的使用,让学生学习如何通过统计流量特征发现异常行为。2020~2021年课程引入了如何通过机器学习工具进行入侵检测的内容,介绍了如何利用机器学习的分类和聚类方法,并以互联网上公开的DGA域名数据集为素材,设计了DGA域名检测作为课程考核内容。2022年,课程首次将“DataCon2020-DNS恶意域名分析”题目以课程竞赛的方式作为课程最终考核。课程竞赛参照完整DataCon竞赛模式,向学生提供样本数据集,以3周为竞赛周期,学生通过不同方式向助教提交程序,助教则每天针对测试数据集是那个运行各组的程序进行打分排名。为了更好地实现教学目标,我们对课程内容进行了设计编排以确保学生能顺利完成竞赛。首先,我们会对机器学习算法进行回顾,确保学生能够熟练掌握相关知识和技能。尽管在《模式识别》课上学生已了解机器学习相关的算法,但此前并没有相应的实验课程进行足够的练习。因此我们还需要加强学生在机器学习编程上的练习,通过学习如何利用机器学习相关的库如scikit-learn调用和执行相应的算法。其次,我们通过实例培养学生数据处理和分析的能力。标准的实验数据是干净完整的,但是真实的实验数据在提交给机器学习算法前有大量的处理工作,包括数据特征的提取、数据的编码、数据的清洗和缺失数据的处理等等。在这一步我们会引入pandas库,让学生能更熟练地对数据进行处理。最后,我们通过FastFlux域名检测例子的演示和DGA域名检测的小作业,以加深他们对数据处理和机器学习检测方法的理解和应用。这两个案例的数据相对检测,FastFlux域名我们引入了最小TTL、最大TTL和IP数三个测度,DGA域名我们引入了域名长度、域名数字占比两个测度,这样学生的重心可以放在数据处理和完成完整的机器学习检测算法上。通过三步的训练,学生已基本掌握了通过机器学习去解决实际问题的能力,为进行DataCon课程竞赛做好准备。与“网络入侵检测与数字取证”课程相比,在 “软件安全与恶意代码分析”的教学过程中,我们注重培养学生的逆向思维和分析能力,引导他们深入剖析恶意代码的工作原理和检测方式。“软件安全与恶意代码分析”课程开设于2022年,是一门与奇安信技术研究院星图实验室合作的校企共建课程,共同研究如何通过机器学习、图和可视化等数据科学方法对大规模的恶意软件进行分析,希望把企业在数据科学最先进的经验和知识经过一定的改编和整理带到课堂上,适应本科学生的学习。这样培养出的人才能够更加熟悉和掌握企业的需求。这门课程在开设时即考虑了引入DataCon竞赛数据作为考核,并最终选择了DataCon2020-恶意代码数据集在DataCon竞赛平台开始了在线的课程竞赛作为考核方式。这门课程的内容相对入侵检测来说更为聚焦,整个课程以设计一个工业级的恶意软件分类程序为目标,通过几个步骤逐步实现教学目标。课程首先从恶意代码软件分析的基础出发,细致讲解静态分析与动态分析的核心技术。静态分析部分介绍了PE文件分析、反汇编和文件资源提取方法,帮助学生了解如何在不运行代码的情况下识别恶意代码特征。动态分析则侧重于系统调用及网络通信,以捕捉实时的恶意活动行为特征。课程的第二板块聚焦于可视化技术在数据分析过程中的应用。在这个部分我们介绍了matplotlib和seaborn两个绘图工具库,让学生了解如何通过不同格式的图来对特征数据进行对比分析。此外我们还介绍了networkx库,引入图论算法在恶意软件分析中的应用,让学生了解如何通过构建图来发现恶意软件间的联系,这些往往是手工分析难以捕捉的线索。接下来,课程将引领学生进入机器学习在恶意软件检测领域的应用实践。这一部分首先回顾经典的机器学习算法,如支持向量机、随机森林、神经网络等,并深入探讨如何针对恶意软件特性选择最具区分度的特征集。课程中讨论了Ember和Packing Heat两篇论文的测度比较,让学生理解为了提高模型的效率与准确性,如何设计和抽取测度。以及如何对海量测度通过信息熵等手段逆行选择以特征降维技术,并通过交叉验证、精确率、召回率等指标来科学评估分类器的表现。最后,课程介绍了一些相对深入的技术如minhash、sketch、深度学习等,这些技术由于其基础需要一定的数学基础,相对于本科生来说有一些学习的挑战,因为更多的是学生了解面对海量数据时的我们需要的技术手段。综上所述,该课程通过这一系列由浅入深、理论结合实践的教学模块,不仅让学生掌握恶意软件分析的前沿技术,还培养了解决复杂安全问题的综合能力,为未来从事网络安全工作打下坚实基础。网络入侵检测与数字取证的竞赛题目是DataCon2020-DNS恶意域名数据集。主要包括以下三个子集:一是恶意域名家族之全员通缉,该数据集主要来自1000个恶意域名以及约20000个请求量与之相似的干扰域名的DNS请求信息。二是猜猜我是谁之黑白域名现形记,该数据集主要来自约2000个黑白域名的DNS请求信息,是相对简单的题目;三是猜猜我是谁之域名大分类,该数据集主要来自约10000个黑白域名的DNS请求信息,难度相对较大,需要具备一些经验。竞赛题目内容包括域名文本信息、域名-IP信息、域名-WHOIS信息、客户端查询域名信息以及网络端监测域名查询数量。这三个题目的数据集比较相似,但是解题难度的挑战差别比较大,可以较好地对学生的水平进行区分。这三道题的数据集都包括了多个数据源,需要以域名或IP为核心进行关联合并,以获得最后用于机器学习算法的数据。由于来源于真实数据,在进行数据合并对齐时会出现数据缺失的问题,对缺失的数据进行何种方式填充成为学生面临的第一个挑战。三道题中最容易的是第二题,基本所有同学都可以达到90分以上的水平。稍难一些的是第一题,这道题不仅是一道多分类题,而且并未给出正常数据的标签,学生需要分别进行数据处理,首先对数据进行黑白二分类,然后再进行恶意数据的多分类,这里的分数在80-90。最难的是第三题,这是一道聚类题,相对于分类而言由于没有训练数据,导致大多数同学在这里没有找到有效的方法,在第一次比赛时,很多同学的分数在10分左右。得分情况如图2所示。软件安全与恶意软件分析的竞赛题目是DataCon2020-恶意代码数据集。数据集来自每天从现网捕获的大量挖矿型恶意代码和非挖矿型恶意代码,经过数据清洗后从中提取大小在20KB至10MB之间的样本,并通过代码相似性分析等方法去掉过于相似的样本,保证样本具有一定的多样性。这考察了学生实际分析能力。这道题的难度相对于入侵检测而言更容易一些,同时由于恶意代码分析的课程较为详细地解析了如何构建一个恶意软件分类器,因此学生普遍具有较好的成绩。在竞赛的执行形式上,我们采用两种不同的形式,分别是自行组织竞赛和DataCon平台课程赛。入侵检测竞赛是从DataCon开放数据平台上进行了申请,将DNS数据从平台申请回来后,由课程自行组织竞赛,将训练数据发给学生,保留测试数据和答案。学生自行进行组队,每队上限3个人,不强制人数。竞赛时间为3周,以邮件形式提交结果,每天提供1次反馈机会,根据反馈结果学生可以改变算法。在后来的比赛中,我们又分别采用github平台和gitee平台进行代码的收集和提交,其中gitee高校版的项目提交模式较好地解决了代码的保密和代码手机自动化之间的问题,在解决自动化收集和评分的问题后,我们也增加了反馈次数,让学生有更多的机会进行代码调试。除了根据DataCon的评分标准评客观分,课程也模拟DataCon比赛组织了竞赛答辩,同学们需要制作ppt对解题思路进行陈述。恶意软件题目是与DataCon平台合作设立东南大学课程赛,以DataCon平台在线形式进行比赛,平台自动产生反馈结果。比赛时间是两周左右,强制3人组队,所有同学需要注册DataCon平台账号,在DataCon平台提交代码并获取结果。在比赛结束后,也模拟DataCon比赛组织了竞赛答辩,由学院和星图实验室的专家联合主持答辩。令人意外的是,通过观察学生们提交的报告和答辩的截图,我们发现本科生们展现出了远超预期的投入与严谨态度,颠覆了初步认为他们可能因经验欠缺而表现平平的预判。事实上,他们以高度的热情参与竞赛,并取得了令人满意的成果。部分学生甚至展现出了一定的科研潜质,他们通过构建不同的词云图,清晰揭示了挖矿与非挖矿文本之间的显著差异,学生们敏锐地抓住了研究的关键点——字符串的抽取和分析,尽管这一方向并非当前领域的最前沿探索,但它无遗彰显了学生们已经掌握了科研的基本方法和核心技能,具备了良好的研究素养根基。这不仅是对他们个人能力的肯定,也是对未来学术研究生涯充满希望的一个积极信号。如图3所示。图4是2022年在DataCon平台合作设立课程比赛的截图,课程57人共19支队伍。从结果来看还是不错的,最高分是97分。就竞赛的成效而言,其核心目标在于双重维度:一是促进学生能力的培养与提升,二是检验课程教学的实际效能。从促进学生能力培养与提升的角度来看,竞赛活动在教学任务中扮演着重要的角色。它不仅考察了学生对课堂知识的掌握程度,更鼓励学生去自主学习探索数学科学的不同领域和技术,激发学生跨越舒适区,主动探索面对复杂问题时的解决策略与创新思维。从学生竞赛的汇报PPT中可以看出,学生们除了课堂上教授的基本机器学习技术,涉及的课外技术包括词云分析、参数网格搜索、分类效果可视化、聚类效果评价等不同技术。比赛完成后,我们进行了课后调研。学生对课程竞赛给出的评价有以下这些:“有趣,能学到实际的东西”;“有助于国家创新资助计划申请”;“学习到了机器学习知识的实际应用,比如缺失数据处理,二分类和多分类的结合应用“;”能够更深地理解网络和软件的知识”。从这个角度看,竞赛对学生的能力培养和提升是成功的。从检验课程教学的实际效能来看,目前竞赛涉及的题目效果则各不相同。入侵检测的竞赛题前文已经讨论过三道试题在难度设计上存在显著差异,第一题与第二题的得分相近,而第三题则呈现出得分普遍偏低的趋势。尽管聚类算法的教学内容本身并不比分类算法更难,但在实际情境下的应用却颇具挑战,这也凸显了在教育实践中,引导学生掌握针对真实数据集进行有效聚类的方法是一项高度挑战性的任务。这一现象同样揭示了一个事实,并非所有竞赛题目均直接适用于作为课程终期评估的标准。从恶意代码课程相关题目来看,题目相对简单,导致得分分布较为集中,使得题目的区分效能较低,这也提示我们在课程评估框架内,应审慎选择考核工具,避免使用此类题目作为单一的决定性考核标准。如图5所示。在大学中做团队作业我们知道经常有所谓“抱大腿”的行为,几个人可能围绕着一个“高手”组队,而高手是这个队伍的实际完成人。有趣的是,从组队来看,并不是所有人都想“抱大腿”或者被“抱大腿”。入侵检测课程竞赛中没有强制组队,我们发现不少学生会喜欢单人组队,其中5组就是单人组队,8组是两人组队(如图6所示)。尽管我们更倾向于让学生组队完成以培养学生的团队协作意识和能力,但如何设置题目让团队可以公平合理地协作也是在竞赛设置中需要考虑的问题。此外,竞赛过程中浮现的一些议题亟待更广泛地探讨与交流。首先,关于试题的迭代更新,如何在首届成功举办后,于后续赛事中有效防范抄袭与作弊行为;其次,关乎成绩区分度的合理区间设定,以及竞赛结果应作为全面评估还是部分评估的考量;最后,如何使竞赛题目更好地适应学生群体的多样性,特别是考虑到课程内竞赛需兼顾不同水平学生的需求,当前的分组机制虽能在一定程度上均衡学生能力差异,但仍需进一步优化以实现更公平、有效的教育目标。
阅读原文
跳转微信打开