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

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

1.内容总结

第一次实践 网络攻防实验环境搭建——第一周作业

这次实践我觉得主要是在为后面的实验搭环境,完成了 VMware 虚拟网络配置、攻击机和靶机的部署,以及 HoneyWall 蜜网网关的基本设置。实验中通过配置不同主机的 IP 地址和网络连接方式,让攻击机、靶机和网关能够在指定网络环境中正常通信。最后进行了连通性测试和流量监听,验证了 HoneyWall 可以捕获实验中的网络流量。

第二次实践 网络信息收集与漏洞扫描——第二周作业

这次实践我觉得主要是在学习攻击前的信息收集过程,包括域名查询、IP 归属分析、端口扫描和漏洞扫描等内容。实验中先使用 whoisnslookup 查询域名注册信息、解析 IP 和 IP 归属情况,也尝试结合网络连接情况分析通信中的目标地址。后面使用 Nmap 对靶机进行主机发现、端口扫描、系统识别和服务探测,了解靶机开放了哪些端口和服务。最后使用 Nessus 对靶机进行漏洞扫描,重点分析了 SMB 等服务上可能存在的安全问题。

第三次实践 网络嗅探与协议分析——第三周作业

这次实践主要是对网络嗅探、协议分析和扫描流量取证进行练习。实验中先使用 tcpdump 抓取访问网站时产生的网络流量,并分析浏览器访问过程中连接到的 Web 服务器地址。之后使用 Wireshark 对 TELNET 登录 BBS 的过程进行抓包,观察 TELNET 登录过程中用户名和口令的传输方式。最后通过分析 listen.cap 抓包文件,判断攻击主机、扫描目标、扫描工具和开放端口,并识别出 TCP SYN 半开放扫描等典型扫描特征。

第四次实践 TCP/IP 协议栈攻击实验——第四周作业

这次实践主要是对 TCP/IP 协议栈中的几种典型攻击进行复现,包括 ARP 缓存欺骗、ICMP 重定向、SYN Flood、TCP RST 攻击和 TCP 会话劫持等内容。实验中使用 netwox、Ettercap 和 Wireshark 等工具,对不同攻击过程进行操作和抓包分析,观察了 ARP 缓存被修改、路由被重定向、TCP 连接被干扰以及 Telnet 明文数据被监听的过程。

第五次实践 防火墙配置与入侵检测——第五周作业

这次实践主要是学习防火墙规则配置、Snort 入侵检测和蜜网网关规则分析。实验中先使用 iptables 配置 ICMP 过滤规则,验证目标主机可以拒绝 Ping 请求;之后又通过访问控制规则,实现只允许指定 IP 访问 Telnet 服务,其他主机无法连接。后面使用 Snort 对 pcap 文件进行离线检测,识别出里面的 Nmap 扫描行为。最后分析了 HoneyWall 中防火墙和 Snort 的配置规则,了解蜜网网关是如何通过流量记录、入侵检测和外联限制来完成攻击数据捕获与控制的。

第六次实践 Windows 远程渗透攻击与取证分析——第六周作业

这次实践主要是做 Windows 远程渗透和攻击流量取证分析。实验中先使用 Metasploit 对 Windows 靶机的 MS08-067 漏洞进行利用,在配置目标地址、攻击机地址和 payload 后,成功获得了靶机的命令行访问权限。之后又用 Wireshark 对攻击过程进行抓包,可以看到 SMB 通信、反向连接和命令执行回显等内容。取证分析部分还还原了一次 NT 系统被攻陷的过程,包括攻击者利用 IIS 相关漏洞读取敏感文件、执行系统命令、上传工具并继续控制主机。

第七次实践 Linux 远程渗透攻击与流量分析——第七周作业

这次实践主要是做 Linux 靶机的远程渗透和攻防流量分析。实验中使用 Metasploit 对 Samba usermap_script 漏洞进行利用,设置目标主机和 payload 等参数后,成功获得了靶机的远程 Shell,并通过 whoamiid 等命令确认拿到了 root 权限。后面的攻防对抗部分,利用 Metasploitable 靶机的 distcc 远程命令执行漏洞建立反向 Shell,再用 Wireshark 分析 3632 端口的漏洞利用流量和 4444 端口的回连过程。

第八次实践 恶意代码分析与僵尸网络流量分析——第八周作业

这次实践主要是做恶意代码分析、简单逆向分析和僵尸网络流量分析。实验中先对 RaDa.exe 样本进行文件类型识别、UPX 加壳检测、脱壳处理和字符串提取,分析出它具有远程控制、文件上传下载、持久化和 DDoS 攻击等特征。之后使用 IDA Pro 对 crackme1.execrackme2.exe 进行逆向分析,理解程序是怎么判断输入参数和文件名的。最后通过 Wireshark、tcpdump 和 tcpflow 分析僵尸网络流量,识别 IRC 通信、攻击源 IP、被攻击端口以及部分成功攻击行为。

第九次实践 缓冲区溢出与 Shellcode 注入——第九周作业

这次实践主要是做 Linux 可执行程序的执行流程修改、缓冲区溢出利用和 shellcode 注入。实验中先使用 IDA 分析 pwn 程序里的 mainfoogetShell 函数,然后通过手工修改指令,让程序直接跳转到 getShell 获取 Shell。之后利用 foo 函数中 gets 存在的缓冲区溢出问题,构造 payload 覆盖返回地址,使程序返回时跳转到 getShell。最后通过关闭地址随机化、使用 gdb 定位栈地址,再构造带有 NOP 区和 shellcode 的输入,实现了自制 shellcode 的注入和执行。

第十次实践 SQL 注入与 XSS 跨站脚本攻击——第十周作业

这次实践主要是做 Web 安全里面比较典型的 SQL 注入和 XSS 攻击。实验中先在 SEED SQL 注入环境中熟悉数据库和 SQL 查询语句,然后通过构造输入绕过登录验证,并利用 UPDATE 注入修改用户信息,进一步理解了后端直接拼接用户输入会带来的安全风险。之后在 Elgg 平台中进行 XSS 实验,通过插入 JavaScript 脚本实现弹窗、读取 Cookie、窃取 Cookie、自动添加好友、修改用户资料以及 XSS 蠕虫传播等效果。最后通过修改后端过滤逻辑和启用 HTMLawed 插件进行防御。

第十一次实践 Web 浏览器渗透攻击与网页木马分析——第十一周作业

这次实践主要是做 Web 浏览器渗透攻击、网页木马取证分析和攻防对抗。实验中先使用 Metasploit 的 MS06-014 模块构造恶意网页,让 Windows 靶机通过 Internet Explorer 访问后触发漏洞,并成功建立远程 Shell 会话。之后对网页木马攻击场景进行分析,从 start.html 开始逐层还原隐藏链接,并对脚本中的 Base64、XXTEA 和十六进制混淆内容进行解码,分析它通过 iframe、ActiveX 控件和下载执行文件组成的攻击链。最后在攻防对抗中,攻击方构造并混淆浏览器漏洞利用页面,防守方通过源码分析、Base64 解码和 Wireshark 抓包还原真实攻击地址与载荷特征。

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

我自己最喜欢且觉得自己做得最好的是第十次实践,我觉得最后三次实践的工作量和复杂程度都比前面实践更高,但是在三个实践中我觉得第十次我最喜欢且认为自己做的最好。

其实我觉得最喜欢这次实践有以下原因:

(1)首先就是这次实践和现实Web安全联系最紧密。在平时自己访问网站、登录系统、修改个人资料这些操作,其实都可能涉及 SQL 注入和 XSS 相关风险,所以这次实验他比较能和真实场景联系起来。

(2)然后就是这次实践我觉得过程比较完整。它不是只做攻击,还做了防御。比如 SQL 注入中既完成了登录绕过和数据篡改,也做了输入过滤。XSS 中既完成了脚本执行和蠕虫传播,也通过 HTMLawed 插件进行了防护验证。相当于就是同时完成了攻击和防御的实验,可以让自己了解更深刻。

(3)还有就是我觉得这次实践结果比较直观。攻击是否成功可以直接通过页面变化看到,比如是否登录成功、工资是否被修改、是否弹窗、Cookie 是否被监听到、好友是否自动添加、资料是否被篡改。这些现象都是比较直观的,就是他不像很多实验,他分析生成了一些结果,但是这个结果还是需要我自己去搜索去学习才能知道其中的原理,也更容易让我确认自己实验步骤是否正确。

我觉得这次实践自己做的最好主要是我觉得在这次实践里面你完成了基础任务,还把每个攻击效果都进行了验证。在SQL注入中,我做的不是单纯输入语句,而是查看了页面源码和后端PHP文件,在看了这些内容之后,找到其漏洞再进行操作,理解了为什么能绕过密码验证。在UPDATE注入中,我通过实际修改Salary字段验证了注入语句对数据库的影响。在XSS中,我也从最简单的弹窗逐步做到Cookie窃取、自动加好友、修改资料和蠕虫传播,实验层次比较完整,相当于是逐步深入的。而且还做了防御验证。不是攻击成功后就结束,而是继续修改代码和启用插件,观察攻击是否失效。

3.本门课学到的知识总结(重点写)

(1)第一次实践 ——网络攻防实验环境搭建

第一次实践主要让我学习了网络攻防实验环境是怎么搭建起来的。通过 VMware 配置不同的虚拟网络,可以把攻击机、靶机和蜜网网关放到指定的网络环境中,让它们既能通信,又能保持一定的隔离性。这里学到的重点包括虚拟网络模式、IP 地址规划、子网掩码、默认网关和主机之间连通性的关系。还有让我认识到攻击机、靶机和 HoneyWall 蜜网网关的分工。攻击机主要用来发起测试和攻击,靶机用来模拟被攻击对象,HoneyWall 则负责在中间进行流量监听、记录和管理。

(2)第二次实践 ——网络信息收集与漏洞扫描

第二次实践的知识点主要是攻击前的信息收集过程。通过whois、nslookup等工具,可以查询域名注册信息、域名解析出的IP地址、IP 地址归属单位和大致地理位置。还学习了Nmap和Nessus的使用。Nmap主要用于主机发现、端口扫描、系统识别和服务版本探测,可以帮助我们知道靶机是否在线、开放了哪些端口、运行了哪些服务。Nessus则更偏向漏洞扫描,可以在发现服务的基础上进一步判断服务可能存在的漏洞。

(3)第三次实践 ——网络嗅探与协议分析

在第三次实践主要知识点就是网络抓包和协议分析。tcpdump可以在命令行中快速抓取指定条件的数据包,Wireshark可以对数据包进行可视化分析,可以看到TCP连接、协议字段和应用层内容。这次实践中比较重要的知识点是TELNET明文传输。通过抓包可以看到,TELNET登录过程中的用户名和口令会以明文形式在网络中传输,即使终端中密码不显示,网络数据包中仍然可以被还原出来。还学习了如何从网络流量中判断攻击主机、扫描目标、扫描工具和开放端口。

(4)第四次实践 ——TCP/IP 协议栈攻击实验

第四次实践的知识点就是TCP/IP协议栈中一些典型攻击方式,做了ARP缓存欺骗、ICMP重定向、SYN Flood、TCP RST攻击和TCP会话劫持。这些攻击都是利用了基础网络协议中的信任机制或者设计缺陷。ARP欺骗让我理解到,ARP协议本身缺少认证机制,攻击者可以伪造ARP响应,让目标主机把错误的MAC地址写入ARP缓存,从而实现中间人攻击。ICMP重定向攻击则是通过伪造重定向报文影响目标主机的路由选择,使流量经过攻击者主机。SYN Flood是因为TCP三次握手中的半连接状态,攻击者可以通过大量SYN请求消耗服务器资源。TCP RST攻击是只要伪造合适的RST报文,就可能中断正常TCP连接。TCP会话劫持表明了明文协议在中间人场景下的风险,攻击者不仅能监听数据,还可以对会话进行干扰或控制。

(5)第五次实践 ——防火墙配置与入侵检测

第五次实践的知识点主要是防火墙访问控制和入侵检测。通过iptables 配置规则,可以控制主机是否接收某类数据包。通过设置访问控制规则,还可以实现只允许指定IP访问某个服务,而其他主机无法连接。还学习了 Snort的基本使用。Snort可以对离线的pcap文件进行检测,根据规则识别其中的异常流量或攻击行为,IDS可以通过规则匹配、协议分析和告警日志来帮助发现攻击行为。在HoneyWall规则分析中,我理解到蜜网网关不是简单地转发流量,而是结合防火墙和Snort来完成攻击流量捕获、入侵检测和外联控制。防火墙负责记录和限制流量,Snort负责识别攻击特征,两者配合后才能实现蜜网环境中的监控和控制。

(6)第六次实践 ——Windows 远程渗透攻击与取证分析

第六次实践主要是学习了Windows远程漏洞利用和攻击流量取证。通过Metasploit利用MS08-067漏洞,可以对Windows靶机发起远程渗透,设置目标地址、攻击机地址和payload后,成功获取目标主机的命令行访问权限。主要知识点就是Metasploit的基本使用流程,包括搜索漏洞模块、选择exploit、设置payload、配置RHOST和LHOST、执行攻击以及查看 session。还学习了如何从流量中还原一次NT系统被攻陷的过程。攻击者先通过 Web 漏洞读取敏感文件,再进行远程命令执行,之后上传工具并继续控制主机。

(7)第七次实践 ——Linux 远程渗透攻击与流量分析

第七次实践主要学习的是Linux 靶机的远程漏洞利用。通过Metasploit 利用Samba usermap_script漏洞,可以获得Linux靶机的远程Shell,并且通过 whoami、id 等命令确认当前权限。在攻防对抗部分,还利用了 Metasploitable靶机上的distcc远程命令执行漏洞,建立反向Shell。防守方通过Wireshark分析3632端口的漏洞利用流量和4444端口的回连过程,可以还原攻击方利用漏洞、建立反向 Shell、执行命令的过程。

(8)第八次实践 ——恶意代码分析与僵尸网络流量分析

第八次实践主要知识点包括恶意代码静态分析、简单逆向分析和僵尸网络流量分析。在RaDa样本分析中,先通过文件类型识别、字符串提取和UPX检测判断样本的基本信息,再通过脱壳工具得到更容易分析的版本。还有通过Process Explorer、strings和IDA Pro等工具,可以分析恶意代码的功能特征,远程控制、持久化、文件上传下载、浏览器控制、截图和 DDoS 攻击等。在Crackme分析学到了简单逆向分析。通过查看字符串、函数调用关系和程序流程图,可以判断程序对输入参数和文件名的检查逻辑。还了解了IRC通信、Botnet控制方式、攻击源IP统计和被攻击端口识别等内容。

(9)第九次实践 ——缓冲区溢出与 Shellcode 注入

第九次实践主要学到的知识点是程序执行流程劫持、缓冲区溢出和shellcode注入。其实这个主要就是让我理解到,漏洞利用的目标其实就是想办法改变程序原来的执行流程,让程序跳到攻击者想执行的位置,理解了二进制程序并不是完全固定的,只要能看懂指令逻辑,就可以通过修改机器指令改变程序的运行结果。缓冲区溢出部分学到的关键点包括栈缓冲区、返回地址、偏移量、小端序地址写入和 payload 构造。shellcode注入是不再依赖程序中已有的隐藏函数,而是把自己构造的shellcode放到栈中执行,根据栈地址构造payload,这样程序返回时会跳到栈中的NOP区域,再继续执行到shellcode,最终获得 Shell。所以说我觉得从这开始三个实验都复杂很多。

(10)第十次实践 ——SQL 注入与 XSS 跨站脚本攻击

第十次实践我觉得SQL注入和部分让我理解了,如果后端直接把用户输入拼接到SQL语句中,攻击者就可以通过构造特殊输入改变原本的查询逻辑,比如绕过登录验证,或者通过 UPDATE 注入修改数据库中的字段。XSS部分让我理解了浏览器执行脚本带来的风险。如果网站没有对用户提交的内容进行过滤,攻击者就可以把JavaScript写入页面中,其他用户访问时脚本就会被执行。实验中从弹窗、读取Cookie,到窃取Cookie、自动加好友、修改资料和蠕虫传播,都是围绕这个原理逐步深入的。

(11)第十一次实践 ——Web 浏览器渗透攻击与网页木马分析

第十一次实践我觉得主要学到的是浏览器漏洞利用和网页木马攻击链的分析方法。浏览器渗透部分让我理解了,攻击者可以利用浏览器或浏览器组件中的漏洞构造恶意网页,靶机只要使用存在漏洞的浏览器访问这个页面,就可能触发漏洞并建立远程 Shell。网页木马分析部分让我认识到,恶意网页一般不会直接把真实攻击代码暴露出来,而是会通过iframe隐藏加载、多层跳转、Base64 编码、XXTEA 加密和十六进制混淆等方式隐藏真实攻击内容。

4.课堂的收获与不足

通过这门课的学习,我最大的收获是对网络攻防有了一个更完整的认识。刚开始做实验的时候,其实我对攻击机、靶机、蜜网网关这些概念都不是很熟悉,更多是按照步骤去配置环境。到后面慢慢接触信息收集、端口扫描、抓包分析、漏洞利用、恶意代码分析、Web 攻击和缓冲区溢出之后,才逐渐理解网络攻防不是单独某一个工具或者某一次攻击,而是从环境搭建、目标发现、漏洞分析、攻击利用到流量取证的一个完整过程。刚好在这十一次的实验中一步步更加了解,然后到最后三次更为综合的实验,学习到网络攻防的完整过程。

我觉得这门课比较重要的一点是让我把很多原本停留在概念上的知识通过实验具体化了。就像之前在课本里学到的就只是知道TELNET是明文传输,那明文传输到底怎么表现出来的没有那么直观理解,但通过Wireshark抓包看到用户名和密码被还原出来之后,印象就会更深。还有SQL注入、XSS、远程渗透这些内容,只有真正自己去构造输入、观察页面变化和分析流量,才能更清楚地理解漏洞为什么会产生,以及防御为什么不能只停留在表面。

当然,我也觉得自己还有不少不足。首先就是基础知识还不够扎实,特别是一些协议细节、Linux 命令、汇编和逆向分析相关内容,很多时候需要边做边查。其次是在遇到实验问题时,有时候还是比较依赖教程或者同学提醒,还有AI工具辅助,自己独立排查问题的能力还需要提高。后面如果继续学习网络安全,我觉得需要加强对协议原理、代码安全和流量分析的理解,不能只满足于把实验结果做出来,还要更清楚每一步背后的原因。

5.参考文献

5.1 参考所有作业博客链接

  1. 20253921 2025-2026-2 《网络攻防实践》第一周作业 - Bobooooo - 博客园
  2. 20253921 2025-2026-2 《网络攻防实践》第二周作业 - Bobooooo - 博客园
  3. 20253921 2025-2026-2 《网络攻防实践》第三周作业 - Bobooooo - 博客园
  4. 20253921 2025-2026-2 《网络攻防实践》第四周作业 - Bobooooo - 博客园
  5. 20253921 2025-2026-2 《网络攻防实践》第五周作业 - Bobooooo - 博客园
  6. 20253921 2025-2026-2 《网络攻防实践》第六周作业 - Bobooooo - 博客园
  7. 20253921 2025-2026-2 《网络攻防实践》第七周作业 - Bobooooo - 博客园
  8. 20253921 2025-2026-2 《网络攻防实践》第八周作业 - Bobooooo - 博客园
  9. 20253921 2025-2026-2 《网络攻防实践》第九周作业 - Bobooooo - 博客园
  10. 20253921 2025-2026-2 《网络攻防实践》第十周作业 - Bobooooo - 博客园
  11. 20253921 2025-2026-2 《网络攻防实践》第十一周作业 - Bobooooo - 博客园

5.2 实验过程中所用工具与知识参考

  1. 在线编码解码工具
    主要用于网页木马分析里面的编码转换和脚本内容还原。
  2. 在线工具 tool.lu
    主要用于编码解码、哈希计算和字符串转换这些辅助分析操作。
  3. Nessus 官方网站
    主要参考漏洞扫描相关内容,用来扫描靶机上可能存在的安全问题。
  4. Metasploit 官方网站
    主要参考漏洞模块、payload 和 session 的使用,远程渗透实验基本都用到了。
  5. Snort 官方网站
    主要参考入侵检测和规则配置,用来分析 pcap 文件中的扫描和攻击行为。
  6. IDA Free 官方网站
    主要参考反汇编和静态分析,Crackme、恶意代码分析和缓冲区溢出实验都用到了。
  7. CMD5 在线 MD5 计算工具
    主要用于网页木马分析中计算 URL 的 MD5 值,再根据散列值查找对应文件。
  8. SOJSON 在线编码解码工具
    主要用于 Base64 解码、十六进制转换和脚本内容还原。
posted @ 2026-06-11 08:24  BoBooooo  阅读(13)  评论(1)    收藏  举报