20251902 2025-2026-2 《网络攻防实践》课程总结

2025-2026-2 《网络攻防实践》课程总结

1. 内容总结

第1次实践 实践名:网络攻防环境搭建
简要介绍:本次实践梳理了虚拟机桥接、NAT等多种网络连接模式的工作原理与适用场景,完成了攻防实验所需的虚拟主机环境部署与网络配置,为后续所有实践任务搭建了基础运行环境。
第1次作业-实践一 网络攻防环境的搭建

第2次实践 实践名:网络信息搜集
简要介绍:本次实践学习了DNS域名查询、IP定位等信息搜集技术,掌握nslookup、whois、netstat等工具的使用方法,能够完成域名注册信息查询、目标主机IP获取与地理位置定位等基础信息搜集任务。
网络攻防第二次作业

第3次实践 实践名:tcpdump流量嗅探分析
简要介绍:本次实践动手使用tcpdump工具进行网络流量嗅探,完成了对Web访问流量的抓取与统计,掌握了网络接口查看、抓包过滤、流量统计等操作,能够分析目标访问的服务器IP与数量。
网络攻防第三次作业

第4次实践 实践名:TCP/IP协议栈攻击
简要介绍:本次实践复现了ARP欺骗、ICMP重定向、SYN Flood、TCP RST、TCP会话劫持五种典型协议攻击,深入理解了TCP/IP协议栈的设计缺陷与漏洞利用原理,掌握了各类协议攻击的实现方式与检测思路。
第四次作业

第5次实践 实践名:防火墙与入侵检测配置
简要介绍:本次实践围绕防火墙配置、入侵检测系统使用与蜜网网关技术展开,完成了iptables规则配置实现ICMP过滤与访问控制,使用Snort进行入侵检测流量分析,理解了蜜网网关的攻击捕获与控制机制。
第五次作业

第6次实践 实践名:Windows系统远程渗透攻击
简要介绍:本次实践基于Metasploit框架完成了MS08-067漏洞的攻击利用,获取了Windows靶机的系统控制权,同时完成了NT系统破解攻击的取证分析,并开展了攻防对抗实战演练。
第6次作业

第7次实践 实践名:Linux平台远程渗透攻击
简要介绍:本次实践学习了Linux平台Samba服务的漏洞利用技术,针对Usermap_script漏洞(CVE-2007-2447)完成了远程渗透攻击,掌握了Linux服务漏洞的利用流程与攻击原理。
第7次作业

第8次实践 实践名:恶意代码逆向与僵尸网络分析
简要介绍:本次实践学习了恶意代码逆向分析基础与僵尸网络流量分析方法,掌握了PE文件格式识别、加壳与脱壳基本原理,能够识别常见加壳工具,理解恶意代码的隐藏与分析对抗思路。
第八次作业

第9次实践 实践名:缓冲区溢出攻击实验
简要介绍:本次实践针对Linux可执行文件pwn1,通过三种缓冲区溢出利用方法,强制程序调用隐藏的getShell函数获取shell权限,深入理解了栈溢出漏洞的原理与利用方式,掌握了二进制程序漏洞的调试与利用思路。
第九次实验

第10次实践 实践名:Web安全漏洞实践
简要介绍:本次实践学习了SQL注入与XSS跨站脚本攻击两种经典Web安全漏洞,理解了漏洞的形成原理,掌握了漏洞利用的基本方法,能够构造恶意payload实现非法数据查询与脚本注入攻击。
第十次作业

第11次实践 实践名:Web浏览器渗透与网页木马分析
简要介绍:本次实践围绕Web浏览器渗透攻击展开,完成了恶意网页木马的构造与利用,同时开展了网页木马攻击场景的取证分析与攻防对抗演练,理解了客户端攻击的完整流程与对抗思路。
第十一次作业

2. 最喜欢且做得最好的实践是哪次?为什么?

我最喜欢的是第九次缓冲区溢出攻击实验,原因主要有三点:
第一,这次实践让我第一次真正接触到二进制层面的漏洞利用,打破了我之前只停留在应用层攻击的认知局限。从分析程序的函数调用流程,到手动计算缓冲区偏移量,再到构造完整的溢出payload,每一步都需要结合计算机组成原理、操作系统栈结构的基础知识进行推导,让我对底层安全的本质有了非常直观且深刻的理解。
第二,这次实践的探索过程让我收获了很强的成就感。最开始尝试的时候,因为偏移量计算有误、内存地址理解偏差,多次都无法成功调用getShell函数。后来我通过反复调试程序、查看栈内存的实时布局,逐步修正payload的构造细节,最终成功拿到shell权限的时候,对栈溢出漏洞的利用原理有了远超书本的理解。三种不同的溢出实现方法,也让我从多个角度理解了漏洞的利用思路,而不是机械地照搬教程步骤。
第三,这次实践也为我后续的安全学习打下了重要基础,让我意识到安全技术的底层逻辑是相通的——只有真正理解程序的运行本质、系统的底层机制,才能真正掌握攻击与防御的核心方法,而不是只会使用现成的工具。

3. 本门课学到的知识总结

3.1 安全加固和检测技术

通过多轮实践,我掌握了tcpdump、Wireshark等流量抓包分析工具的核心操作,能够针对不同场景进行流量抓取、过滤规则编写与异常流量分析;掌握了Linux平台iptables防火墙的规则配置方法,能够实现端口过滤、访问控制、ICMP报文拦截等基础安全策略;了解了Snort入侵检测系统的工作原理与规则编写方式,能够基于特征规则识别网络攻击行为。同时通过渗透攻击的反向实践,我理解了系统漏洞的危害与形成原因,掌握了关闭冗余端口、及时更新系统补丁、收紧服务运行权限等基础安全加固方法,能够针对漏洞检测结果制定对应的基础加固方案。

3.2 Web安全技术

通过第十次Web安全专项实践,我掌握了SQL注入与XSS跨站脚本攻击的核心原理:SQL注入的本质是用户可控输入与SQL语句的直接拼接,破坏了原始查询的结构,从而实现非法数据读取、篡改甚至权限提升;XSS则是向Web页面注入恶意脚本,在用户访问时在浏览器端触发执行,实现窃取用户信息、伪造操作、页面篡改等目的。
我理解了联合查询注入、布尔盲注、时间盲注等不同SQL注入方式的适用场景,以及反射型、存储型XSS的传播与触发区别。同时也掌握了对应的防御修复方法:使用参数化查询(预编译语句)从根源防御SQL注入,通过输入合法性校验、输出HTML编码的方式防范XSS攻击。

3.3 逆向分析技术

通过第八次恶意代码逆向分析与第九次缓冲区溢出实践,我学习了PE、ELF等主流可执行文件的基本格式与结构,理解了加壳与脱壳的基本原理,能够识别UPX、ASPack等常见加壳工具。我掌握了二进制程序的静态分析基本思路,能够通过反编译工具查看程序的函数调用关系、提取关键字符串信息;同时了解了动态调试的基本方法,能够通过设置断点、监控寄存器与栈内存变化,跟踪程序的执行流程,定位漏洞点与恶意代码逻辑。

3.4 主流代码审计技术

结合Web安全与漏洞利用的相关学习,我理解了代码审计的核心思路:追踪所有用户可控的输入点,定位危险函数的调用位置,判断输入是否经过有效过滤。比如SQL注入漏洞的根源是代码中直接拼接SQL语句与用户输入,命令注入漏洞则来自于exec、eval、system等危险函数直接使用用户可控参数。我能够针对简单的PHP、Python代码,人工排查输入验证缺失、危险函数滥用、权限控制缺失等常见安全缺陷,判断对应的漏洞风险。

3.5 程序设计

课程实践让我对C语言的缓冲区溢出原理有了直观的理解,明白了gets、strcpy等不安全字符串操作函数的安全风险,以及栈内存的分配与运行机制。同时我也了解到Python在安全领域的广泛应用场景:可以利用requests库编写简单的Web漏洞检测与利用脚本,利用scapy库进行自定义网络数据包构造与协议分析,实现自动化的攻击测试与安全检测,大幅提升安全工作的效率。

3.6 计算机病毒技术

通过恶意代码分析与网页木马专项实践,我理清了病毒、蠕虫、木马三类恶意程序的核心区别:病毒需要依附宿主文件进行传播,蠕虫能够利用漏洞自我复制进行主动传播,木马则通过伪装方式植入目标系统,实现远程控制与信息窃取。我了解了恶意代码的常见传播途径,比如服务漏洞利用、恶意网页挂载、钓鱼邮件附件等;也掌握了恶意代码的常见隐藏手段,比如加壳混淆代码、进程注入隐藏、注册表添加开机启动项等。同时也理解了杀毒软件的特征码查杀、行为检测、沙箱隔离等防范技术的基本原理。

3.7 网络溯源及防范技术

通过流量分析与攻防对抗实践,我掌握了基础的攻击溯源方法:能够通过抓包流量与系统日志,梳理攻击源IP、攻击时间线,识别ARP欺骗、SYN Flood等不同攻击手法的流量特征。比如SYN Flood攻击会产生大量源地址伪造的SYN包,伴随大量半开连接;ARP欺骗会出现异常的ARP应答报文,IP与MAC地址对应关系异常。同时也掌握了对应的基础防御策略,比如通过静态ARP绑定防范ARP欺骗,通过IP封禁、流量清洗、SYN Cookie机制防御DDoS攻击。

3.8 加密解密技术

在网络协议与Web安全的学习中,我巩固了加密解密的相关知识:理解了对称加密与非对称加密的核心区别与适用场景,比如HTTPS的TLS握手过程中,使用非对称加密协商对称会话密钥,后续的业务数据传输则使用对称加密,兼顾安全性与传输效率。我掌握了MD5、SHA256等哈希算法的不可逆、抗碰撞特性,了解其在密码存储、数据完整性校验中的应用;同时也理解了数字签名的验证流程,以及其在身份认证、防数据篡改中的核心作用。

3.9 信息系统运行维护

多次Linux平台的实践让我更加熟练地掌握了Linux基础命令,能够独立完成网络配置、服务状态查看、文件权限管理、进程管理等操作,能够排查基础的服务运行故障。同时通过多次实验环境搭建与故障恢复,我理解了系统备份与恢复的重要性,掌握了虚拟机快照、服务配置备份等基础的系统运维手段,能够在实验环境出现故障时快速恢复到正常状态。

3.10 网络协议分析

TCP/IP协议栈攻击专项实践让我对网络协议的原理有了更深入的理解:掌握了ARP协议的地址解析机制、ICMP协议的控制报文功能、TCP协议的三次握手、四次挥手流程与状态机特性,以及UDP协议的无连接、不可靠特性。我能够通过抓包工具分析HTTP请求的方法、状态码、头部字段与响应内容,识别HTTPS的握手流程与加密套件协商过程。同时也理解了各类协议在设计之初的安全考虑不足,以及这些设计缺陷如何被攻击者利用,从攻防双视角加深了对网络协议的认知。

3.11 数据库

通过SQL注入专项实践,我巩固了MySQL等关系型数据库的SQL语法知识,熟练掌握了查询语句的结构与执行逻辑。我理解了数据库权限管理的重要性——过高的数据库账号权限会大幅放大SQL注入的危害,甚至导致整个服务器被控制。同时也掌握了数据库层面的漏洞修复与安全加固方法,比如使用预编译语句、遵循最小权限原则分配数据库账号、对用户输入的特殊字符进行过滤转义等,提升数据库的安全防护能力。

3.12 法律

网络安全领域的所有技术研究与实践都必须在法律框架内进行,需要严格遵守《中华人民共和国网络安全法》《中华人民共和国数据安全法》《中华人民共和国个人信息保护法》三部核心法律,以及《计算机信息系统安全保护条例》《关键信息基础设施安全保护条例》等相关法规。所有的渗透测试、漏洞研究都只能针对授权的实验环境进行,严禁未经授权对他人的计算机系统、网络、数据进行攻击、探测、窃取等操作,否则将承担相应的民事、行政甚至刑事责任。

3.13 基础

本门课程的所有实践都离不开计算机基础知识的支撑:计算机组成原理中的内存结构、寄存器工作机制、指令执行流程,是理解缓冲区溢出等二进制漏洞的核心基础;操作系统中的进程管理、虚拟内存布局、栈帧结构、权限机制,是理解系统漏洞与恶意代码运行原理的前提;计算机网络中的TCP/IP协议栈、分层架构、报文封装与传输机制,是所有网络攻击与流量分析的知识根基;数据结构与算法知识,则能够帮助我们更好地理解漏洞原理、编写高效的安全检测与利用工具。

5. 课堂的收获与不足

收获

通过一学期的网络攻防实践课程,我最大的收获是建立了完整的攻防辩证思维,不再只从单一的防御角度看待安全问题,而是能够从攻击者的视角去思考漏洞的成因、利用方式与危害,从而更有针对性地制定防御方案,真正理解了“知己知彼”在网络安全领域的含义。
同时,我的动手实践能力得到了非常大的提升。从最开始搭建实验环境都频繁出错,到后来能够独立完成漏洞利用、流量分析、逆向调试等各类实验,熟练掌握了十多种安全工具的使用方法,也对各类安全技术的原理有了更直观、更深刻的理解,跳出了书本理论的局限。
此外,课程也让我找到了自己感兴趣的安全方向,对二进制漏洞挖掘、Web安全领域产生了强烈的进一步学习的动力,也为我后续的专业学习、竞赛参与与职业发展打下了扎实的基础。

不足

首先,我的逆向分析与二进制漏洞基础还比较薄弱。面对加壳混淆的复杂程序、更复杂的漏洞场景时,静态分析与动态调试的能力还有很大欠缺,很难独立完成完整的漏洞挖掘与利用,需要更多的练习来积累经验。
其次,自动化安全工具的开发能力不足。目前大多是使用现成的安全工具进行测试,自己编写漏洞利用脚本、自动化检测工具的能力还比较差,Python等编程语言在安全领域的应用还不够熟练,无法高效地实现自定义的安全测试需求。
最后,攻防对抗的实战经验不足。面对真实的复杂环境、部署了安全防护的目标时,攻击思路还不够灵活,很难绕过防护机制达成攻击目标;同时防御侧的策略设计也不够全面,无法很好地应对多样化的攻击手段,需要更多的实战对抗演练来积累经验。

posted @ 2026-06-17 15:47  熊志东  阅读(7)  评论(0)    收藏  举报