20252906 2025-2026-2 《网络攻防实践》第12周总结报告

网络攻防实践课程总结

1. 内容总结

第一次实践:网络攻防实验环境搭建

第一次实践主要是围绕网络攻防实验环境的搭建展开。通过本次实验,我完成了 VMware 虚拟机环境的安装与配置,并根据实验要求部署了 Kali、Windows XP、SEEDUbuntu、Metasploitable、Windows Server 等多台虚拟机。在配置过程中,我逐步理解了攻击机、靶机、蜜网网关以及不同虚拟网段之间的关系。由于实验涉及多个系统和多个网络环境,所以 IP 地址、网关、虚拟网卡模式和连通性测试都非常重要。通过反复 ping 测试和网络参数调整,最终实现了各虚拟机之间的正常通信,也为后续网络扫描、漏洞利用和流量分析实验打下了基础。

第二次实践:网络踩点、扫描与漏洞评估

第二次实践的重点是信息收集、主机发现、端口扫描和漏洞评估。我使用 whois、nslookup 等工具对目标域名进行基础信息查询,初步了解了域名解析和网络踩点的基本过程。之后利用 Nmap 对靶机进行扫描,包括主机发现、开放端口检测、服务版本识别和操作系统识别等内容。通过扫描结果可以看出,端口开放情况和服务版本信息是判断系统风险的重要依据。最后使用 Nessus 对靶机进行漏洞扫描,了解了漏洞评估工具如何根据服务、版本和配置情况生成风险报告。本次实践让我认识到,攻击往往不是一开始就直接利用漏洞,而是先通过信息收集找到可能的突破口。

第三次实践:网络嗅探与协议分析

第三次实践主要围绕网络嗅探、协议分析和流量取证展开。我使用 tcpdump 对网络流量进行抓取,并通过 Wireshark 对抓包文件进行分析。在实验过程中,我观察到了不同协议的数据传输特征,也进一步理解了 IP、端口、TCP 连接过程和应用层协议之间的关系。通过分析 TELNET 登录过程,我直观地看到明文协议在传输用户名、密码等敏感信息时存在很大风险。之后通过对 pcap 文件进行取证分析,我学习了如何根据源 IP、目的 IP、端口、协议字段和数据内容判断扫描行为、攻击方式和攻击主机信息。本次实践让我意识到,抓包分析不仅能验证攻击是否发生,也能帮助还原攻击过程。

第四次实践:网络协议攻击实验

第四次实践的重点是网络协议攻击。实验开始前,需要先确认各虚拟机的 IP 地址和 MAC 地址,为后续攻击做好准备。随后围绕 ARP 欺骗、ICMP 重定向、SYN Flood、TCP RST 攻击和 TCP 会话劫持等内容进行了实践。通过这些实验,我更加清楚地理解了网络协议在设计上的一些信任机制和安全缺陷。例如 ARP 协议缺少有效认证,容易被伪造;TCP 连接虽然有状态控制,但在特定条件下也可能被干扰或中断。本次实践让我认识到,很多网络攻击并不是凭空产生的,而是利用协议本身的工作机制和边界条件实现的。

第五次实践:防火墙与入侵检测

第五次实践主要学习防火墙配置和入侵检测技术。我首先使用 iptables 配置访问控制规则,对 ICMP 数据包和指定端口访问进行过滤,观察到了主机从可以被探测到无法被探测的变化。通过这个过程,我理解了防火墙并不是简单地“开”或“关”,而是根据协议、端口、方向和来源地址进行精细化控制。随后使用 Snort 对离线流量进行检测,分析了端口扫描、异常连接和攻击告警等信息。最后通过 HoneyWall 查看蜜网中的防火墙、黑白名单和入侵检测配置,进一步理解了蜜网系统如何记录攻击行为并限制攻击流量外连。本次实践让我认识到,安全防护不仅要能阻挡攻击,也要能发现和记录攻击。

第六次实践:Windows 系统远程渗透攻击与取证分析

第六次实践围绕 Windows 系统漏洞利用和取证分析展开。在实验中,我通过 Metasploit 对 Windows 靶机的已知漏洞进行验证,成功建立远程会话,并在靶机上查看系统信息、创建文件和执行简单命令。这个过程让我直观理解了远程漏洞利用成功后攻击者能够获得怎样的控制能力。取证分析部分则通过 Wireshark 对攻击流量进行还原,分析攻击者从漏洞触发、下载工具、建立后门到清理痕迹的过程。本次实践让我明白,系统漏洞如果没有及时修复,攻击者可能不仅能进入系统,还可能进一步扩大影响范围。

第七次实践:Linux 系统远程渗透攻击与取证分析

第七次实践主要针对 Linux 靶机进行远程渗透和取证分析。实验中,我先确认 Kali 与 Metasploitable 处于同一网段并能够正常通信,然后利用 Metasploit 检索并使用相关漏洞模块,对 Samba、vsftpd 等服务漏洞进行验证。在获得靶机权限后,我执行了查看权限、确认系统信息、创建目录和写入文件等操作。防守分析部分则通过 Wireshark 还原攻击流量,观察 FTP 连接建立、恶意命令触发、后门端口连接以及后续命令执行等过程。通过本次实践,我认识到 Linux 系统同样会因为服务版本过旧、配置不当或后门漏洞而产生严重安全风险。

第八次实践:恶意代码分析

第八次实践围绕恶意代码样本分析和僵尸网络流量取证展开。在样本分析部分,我学习了如何通过文件类型识别、字符串提取、加壳判断和静态分析工具了解恶意程序的基本特征。通过分析样本中的字符串、函数调用和可疑行为,可以初步判断程序是否具有远程控制、文件操作、持久化驻留、截屏或攻击行为。在流量分析部分,我使用 Wireshark、tcpflow、tcpdump 等工具筛选僵尸网络通信,分析 IRC 控制通道、攻击源 IP、目标端口和入侵痕迹。本次实践让我认识到,恶意代码分析不能只看文件本身,还要结合运行行为、网络通信和系统痕迹综合判断。

第九次实践:缓冲区溢出攻击

第九次实践的重点是缓冲区溢出攻击。通过 objdump 反汇编,我学习了如何查看程序中的函数地址、调用关系和控制流结构。在实验中,通过分析 main、foo、getShell 等函数之间的关系,可以理解程序是如何根据指令跳转执行的。之后通过构造特定输入覆盖返回地址,使程序执行流程跳转到指定函数,从而理解了缓冲区溢出的基本原理。本次实践让我对栈帧结构、返回地址、函数调用、机器指令和内存安全有了更直观的认识,也让我明白 C/C++ 程序中不安全输入函数可能带来的严重后果。

第十次实践:Web 应用程序安全攻防

第十次实践主要围绕 SQL 注入和 XSS 攻击展开。在 SQL 注入部分,我通过登录页面和信息修改页面理解了用户输入如何影响后端 SQL 语句。当后端直接拼接用户输入时,攻击者可以改变查询条件或更新逻辑,从而实现登录绕过、信息篡改等效果。之后通过修改 PHP 后端代码,对输入处理和 SQL 语句执行方式进行修复,验证了防护措施的重要性。在 XSS 部分,我依次完成了弹窗、Cookie 回传、自动操作、资料篡改和蠕虫传播等实验,直观看到了浏览器执行恶意脚本可能带来的危害。本次实践让我深刻认识到,Web 安全的核心不是记住某个攻击语句,而是理解输入、后端逻辑、数据库和浏览器执行之间的关系。

第十一次实践:Web 浏览器渗透攻击攻防

第十一次实践围绕网页挂马和浏览器渗透展开。我使用相关工具生成恶意网页链接,并观察靶机浏览器访问后攻击端获得远程会话的过程。之后对网页木马样本进行分析,通过哈希定位、编码还原、脚本解混淆等方式,理解恶意网页如何隐藏真实下载地址和漏洞触发逻辑。在对抗实践中,我也从防御方角度利用 Wireshark 分析 HTTP 流量,提取挂马链接并判断漏洞类型。本次实践让我认识到,Web 安全不仅包括服务器端代码安全,也包括客户端浏览器、插件版本、脚本执行和用户访问行为等方面的风险。


2. 最喜欢且做得最好的一次实践

我最喜欢也认为自己完成得最好的是第十次实践:Web 应用程序安全攻防。

我之所以最喜欢这次实践,是因为 SQL 注入和 XSS 都是以前经常听到的 Web 安全问题,但在真正动手之前,我对它们的理解更多停留在概念层面。通过这次实验,我第一次比较完整地把攻击和防御过程都跑了一遍。从查看数据库结构,到构造输入绕过登录,再到修改字段、修复后端代码,整个过程非常直观。我能清楚地看到,一个看似普通的输入框,如果后端没有做好处理,就可能变成攻击入口。

XSS 部分也给我留下了很深的印象。刚开始只是简单弹窗,后来逐渐发展到 Cookie 回传、自动加好友、资料篡改和蠕虫传播,攻击效果一步一步变得明显。这让我意识到,XSS 并不是“弹个窗口”这么简单,它真正危险的地方在于可以借助用户身份完成一系列操作。

相比其他实践,第十次实践的攻防逻辑更完整,现象也更清楚。它既有攻击过程,也有代码修复和防护验证,让我能把“漏洞成因”和“防护方法”对应起来。因此我觉得这次实践自己理解得最深入,完成质量也相对最好。


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

3.1 安全检测与系统加固技术

通过第二次、第五次、第六次和第七次实践,我认识到安全检测和系统加固是网络安全工作中非常重要的两个环节。安全检测的作用是发现系统暴露了什么,例如开放端口、运行服务、服务版本、系统类型和可能存在的漏洞;系统加固则是在检测结果的基础上降低风险,例如关闭不必要服务、限制访问来源、安装补丁、配置防火墙和加强权限管理。

Nmap 和 Nessus 让我理解了资产探测和漏洞评估的基本思路。开放端口本身不一定就是漏洞,但端口背后的服务、版本和配置可能带来安全风险。iptables 和 HoneyWall 则让我理解了访问控制和边界防护的重要性。Snort 的使用让我认识到,安全系统不仅要能阻止攻击,也要能够记录攻击、识别异常并形成告警。

3.2 网络协议与流量分析技术

第三次、第四次和第五次实践让我对网络协议有了更深入的理解。以前学习 TCP、ARP、ICMP、HTTP、TELNET 等协议时,更多是记忆协议作用和字段含义,而通过抓包分析,可以直接看到这些协议在真实通信中的表现。

Wireshark 和 tcpdump 让我认识到,网络流量中包含了大量安全线索。源 IP、目的 IP、端口、协议字段、TCP 标志位和应用层内容,都可以帮助分析通信过程。TELNET 明文传输让我直观看到不加密协议的风险;ARP 欺骗、ICMP 重定向、TCP RST 等实验则说明,协议机制如果缺少认证或被错误利用,就可能成为攻击手段。

3.3 Web 安全技术

Web 安全是本门课程中让我印象最深的部分之一。第十次和第十一次实践让我理解了 SQL 注入、XSS、网页挂马和浏览器渗透等常见 Web 安全问题。

SQL 注入的本质是后端错误地信任用户输入,把输入内容直接拼接到 SQL 语句中,导致数据库执行逻辑被改变。XSS 的本质则是系统没有正确处理用户输入和页面输出,使恶意脚本在浏览器中执行。网页挂马和浏览器渗透进一步说明,用户访问网页本身也可能成为攻击触发点。

通过这些实践,我认识到 Web 安全防护不能只依赖前端限制,而必须在后端做好参数化查询、输入校验、输出编码、权限控制和安全配置。

3.4 渗透测试与漏洞利用技术

第六次、第七次和第九次实践让我初步理解了漏洞利用的基本过程。渗透测试并不是简单地运行工具,而是需要经历信息收集、目标确认、漏洞匹配、利用验证、权限获取和结果分析等步骤。

Windows 和 Linux 远程渗透实践让我看到,系统服务版本过旧、补丁缺失或默认配置不安全,都可能成为攻击入口。缓冲区溢出实践则让我从更底层理解漏洞利用的原理。函数调用、栈帧、返回地址和机器指令这些以前比较抽象的内容,在实验中变得更加具体。它让我认识到,程序设计中的一个不安全函数或边界检查缺失,可能直接导致程序控制流被攻击者改变。

3.5 恶意代码分析与逆向技术

第八次和第十一次实践让我接触了恶意代码分析和脚本逆向。恶意代码分析需要从文件结构、字符串、函数调用、加壳情况、运行行为和网络通信等多个角度入手。

通过样本分析,我了解到加壳、混淆、编码和加密都会增加分析难度。IDA Pro 等工具可以帮助我们查看程序结构和可疑函数,而 Wireshark、tcpflow 等工具可以帮助我们分析恶意代码的网络通信。网页木马中的 JavaScript 混淆也让我认识到,恶意代码不一定都是可执行文件,脚本、网页和浏览器漏洞同样可能成为攻击载体。

3.6 程序设计与代码审计能力

通过第九次和第十次实践,我认识到程序设计能力是理解漏洞的重要基础。很多漏洞本质上都来自程序对输入、权限、内存或逻辑处理不当。

在 Web 程序中,如果用户输入没有经过处理就进入数据库,就可能产生 SQL 注入;如果输入没有经过转义就输出到页面,就可能产生 XSS。在 C/C++ 程序中,如果没有检查输入长度,就可能产生缓冲区溢出。代码审计的重点就是找到“不可信输入”进入“危险操作”的路径,判断程序是否存在安全风险。

3.7 信息系统运行维护能力

第一次到第十一次实践都离不开系统运行维护能力。虚拟机网络配置、IP 地址设置、服务启动、端口检查、防火墙规则、日志查看和环境恢复,都是实验能否顺利完成的基础。

在实验过程中,我也遇到过虚拟机无法互通、服务没有启动、端口扫描结果异常、浏览器缓存影响实验效果等问题。这些问题虽然不是攻击技术本身,但它们直接影响实验结果。通过不断排查,我认识到网络安全工作非常依赖细节,很多时候不是工具不会用,而是环境、配置或权限存在问题。

3.8 网络安全法律与职业规范

通过课程学习,我也意识到网络攻防技术必须在合法合规的前提下使用。网络安全实验应当在授权环境中进行,不能把课堂中学到的扫描、攻击或渗透方法用于真实未授权目标。网络安全不仅是技术问题,也涉及法律责任、职业道德和数据保护。

我国网络安全相关法律法规,如《网络安全法》《数据安全法》《个人信息保护法》等,都强调网络运行安全、数据安全和个人信息保护。学习网络攻防技术的目的不是破坏系统,而是为了更好地理解风险、发现问题并提升防护能力。


4. 课堂收获与不足

4.1 课堂收获

经过一个学期的网络攻防实践学习,我最大的收获是对网络安全有了更完整、更直观的认识。以前提到网络攻防,我会觉得它离自己比较远,像是竞赛选手或者技术很强的人才会接触的内容。但通过这一系列实验,我发现网络攻防并不是完全神秘的,它也有清晰的学习路径:先搭建环境,再做信息收集,然后理解协议、分析流量、验证漏洞、进行防护和取证。

这门课程把很多以前学过的计算机基础知识重新串联了起来。比如 IP 地址、端口、TCP 三次握手、ARP、ICMP、HTTP、数据库、操作系统、程序运行机制等内容,在课堂实验中都变成了具体可观察、可操作的现象。通过实践,我不再只是背概念,而是能看到这些知识在真实攻防场景中的作用。

另一个收获是提高了排查问题的能力。很多实验并不是按照步骤做就一定成功,中间经常会出现网络不通、服务异常、工具报错、权限不足等问题。刚开始遇到问题会比较慌,但后来逐渐学会了按层次排查:先看主机是否在线,再看 IP 和网关是否正确,再检查端口、服务、防火墙和日志。虽然这个过程有时比较耗时,但也锻炼了我的耐心和解决问题的能力。

4.2 存在不足

我认为自己目前最大的不足还是基础不够扎实。很多实验在有步骤指导的情况下可以完成,但如果中间出现和教程不一样的现象,就需要花比较长时间去判断原因。有时候我能看到实验结果,却不能马上说清楚背后的完整原理,这说明自己还需要进一步加强对网络协议、操作系统和程序底层机制的理解。

第二个不足是对部分工具还停留在“会用”的阶段。例如 Nmap、Wireshark、Metasploit、Snort、IDA Pro 等工具,我能够按照实验要求完成基本操作,但还没有达到熟练分析和灵活使用的程度。尤其是在面对复杂流量、复杂漏洞或混淆代码时,分析能力还不够强。

第三个不足是总结和迁移能力还需要提高。课堂实验中的环境和目标相对固定,而真实安全场景会更加复杂。以后还需要在理解原理的基础上,多做复盘和归纳,把具体实验中学到的方法迁移到其他类似问题中。

总体来说,这门课程让我对网络攻防有了比较系统的入门认识,也让我意识到网络安全是一门非常重视实践和细节的课程。通过这学期的学习,我不仅掌握了一些基础工具和常见攻击防护思路,也认识到了自己在基础知识、工具熟练度和综合分析能力上的不足。后续我会继续加强网络协议、操作系统、Web 安全和代码审计等方面的学习,不断提升自己的网络安全实践能力。

参考文献

[1] lady_killer9. 网络安全——端口扫描神器 Nmap 使用详解与参数指导[EB/OL]. CSDN博客, 2021-09-05.

[2] Bossfrank. 渗透测试:主机发现和端口扫描的思路方法总结[EB/OL]. CSDN博客, 2023-06-20.

[3] weixin_43472459. Tcpdump 抓包与 Wireshark 报文分析[EB/OL]. CSDN博客, 2023-02-05.

附:建议新增实验及原因

在本学期的网络攻防实践课程中,我们已经完成了网络环境搭建、信息收集、漏洞扫描、协议分析、远程渗透、恶意代码分析、Web 安全攻防等多类实验。这些实验让我对攻击过程和常见安全工具有了比较直观的认识。但是从整体课程来看,大部分实验更偏向于“攻击如何发生”和“漏洞如何利用”,而对于攻击发生之后,如何发现异常、如何分析日志、如何判断入侵路径、如何处置安全事件的训练还可以进一步加强。

因此,我建议新增一次“安全事件应急响应与日志溯源综合实验”。这个实验可以设置一个已经被攻击过的虚拟主机环境,让学生不再从攻击者角度出发,而是站在防守方和运维人员的角度,对系统中的异常现象进行排查。例如,分析系统日志、Web 访问日志、登录记录、进程信息、网络连接、可疑文件、计划任务、后门账号等内容,判断攻击者是通过什么方式进入系统的,进入系统后做了哪些操作,是否留下后门,是否存在数据泄露或横向移动的风险。

我认为新增这个实验的意义在于,它能够把前面多个实践内容连接起来。前面的 Nmap、Nessus、Wireshark、Snort、Metasploit、恶意代码分析和 Web 攻防实验,更多是让我们理解攻击技术本身;而应急响应实验则可以让我们进一步思考:当这些攻击真的发生后,防守方应该如何发现、分析和处理。这样不仅可以帮助学生理解攻击链条,也能提高实际问题排查能力。

同时,应急响应能力也是网络安全工作中非常重要的一部分。真实安全事件中,很多时候并不是攻击刚发生就能立刻发现,而是通过日志、告警、异常进程、异常连接或用户反馈逐步定位问题。如果课程中能够增加这一类实验,就可以让学生从“会使用攻击工具”进一步过渡到“会分析安全事件”,更加符合网络安全实践工作的真实场景。

另外,这个实验也能训练学生的综合分析能力。因为应急响应不是单独依赖某一个工具完成的,而是需要把操作系统、计算机网络、Web 服务、数据库、日志分析和恶意代码分析等知识结合起来。学生需要根据不同线索进行判断,而不是单纯按照固定步骤操作。这样既能巩固前面课程学到的知识,也能提高面对复杂问题时的排查思路和安全意识。

posted @ 2026-06-21 20:21  淡墨如野  阅读(2)  评论(0)    收藏  举报