20251914 2025-2026-2 《网络攻防实践》课程总结
20251914 2025-2026-2 《网络攻防实践》课程总结
1.内容总结
第1次实践 网络攻防环境的搭建
第一次实验主要完成了网络攻防实践环境的搭建与连通性验证。先梳理 SEED 环境、蜜网网关等陌生概念,并列出了所需虚拟机和网络拓扑结构。
实验过程围绕虚拟机网络配置展开,依次配置了 Metasploitable_ubuntu、Win2000 Server 靶机、Kali、WinXP Attacker、SEED Ubuntu 和 Honeywall 蜜网网关,最后通过 Kali 访问蜜网管理界面,并完成攻击机与靶机之间的 ping 测试,验证了实验环境基本可用。
实验中遇到了 VMware 无响应、靶机无法打开、SEED 内核恐慌、WinXPattacker 无法 ping 通 Honeywall 等问题,分别通过管理员权限启动 VMware、关闭基于虚拟化的安全性、使用新版 SEEDLab、重新补充 Honeywall 的 manage 配置等方式解决。本次实验重点在于熟悉网络攻防实验环境的组成和配置流程,为后续攻防实践打下基础。
第2次实践 网络信息收集技术
第二次实验主要围绕网络信息收集、主机探测、端口扫描和漏洞分析展开。博客先总结 Web 搜索与挖掘、DNS/IP 查询、网络拓扑侦察、主机扫描、端口扫描、nmap 等基础概念,并结合 Ghostcat 漏洞对常见安全风险进行了说明。
实验中,先查询 Kali 和 SEED 主机的 IP 地址,并完成 Kali 提权;随后通过 whoissoft、nslookup 和 IP 地理位置查询工具获取 sina.com.cn 的注册信息、解析 IP 和地理位置。接着尝试通过资源监视器查看 QQ 好友 IP 并查询位置。之后使用 nmap 对靶机 192.168.200.123 进行活跃性、端口、操作系统和服务扫描,并安装 Nessus 对靶机进行漏洞扫描。最后根据扫描结果分析了可能的攻击思路,并检查了个人网络足迹,发现存在一定隐私暴露问题。
实验中主要遇到两个问题:whoissoft 无法查询 IP 地理位置,以及一开始扫描不到靶机。前者通过更换其他 IP 查询网站解决,后者通过将靶机网络模式调整为 NAT 解决。本次实验提升了信息检索、网络侦察和漏洞扫描工具的使用能力,也增强了对个人隐私保护的意识。
第3次实践 网络嗅探与协议分析
第三次实验主要围绕 tcpdump 抓包、Wireshark 协议分析和 listen.cap 取证分析展开。先说明实验内容:使用 tcpdump 嗅探访问 www.163.com 的过程,使用 Wireshark 分析 Telnet 登录 BBS 的明文传输,并对网络扫描器流量进行解码分析。
实验过程中,先配置 Kali 网络并查询 IP,随后使用 tcpdump 监听本机访问 163 网站时产生的数据包。接着通过 Telnet 访问水木清华 BBS,并在 Wireshark 中查看目标 IP、端口号以及 TCP 流内容,发现输入的 guest 可以被直接捕获。最后对 listen.cap 进行分析,判断攻击机和靶机 IP,识别出 nmap 主机发现、操作系统探测、半开放扫描、服务版本扫描等行为,并总结出靶机开放的多个端口。
实验中主要遇到的问题是原命令只监听 80 端口,而 163 使用 HTTPS,主要走 443 端口。解决方法是在 tcpdump 命令中增加对 443 端口的支持。本次实验加深了对网络抓包、明文协议风险和扫描流量特征的理解,也进一步认识到使用 SSH 等加密协议的重要性。
第4次实践 TCP/IP网络协议攻击
第四次实验主要围绕 ARP 缓存欺骗、ICMP 重定向、SYN Flood、TCP RST 和 TCP 会话劫持等网络协议攻击展开。先介绍各类攻击的基本原理,然后通过 Kali、Metasploitable 和 SEED 三台虚拟机搭建实验环境,分别完成了 ARP 欺骗抓取 ICMP 流量、ICMP 重定向修改下一跳、SYN Flood 大量发包、TCP RST 中断 Telnet 连接,以及使用 Ettercap 进行 ARP poisoning 和 Telnet 会话嗅探等实验。
实验中主要遇到的问题包括 Kali 未安装 netwox、SEED 版本较高导致默认防御 ICMP 重定向、netwox 构造重定向包时 IP 字节序异常,以及 Ettercap 嗅探无反应。对应解决方法包括安装 netwox、开启 SEED 的重定向接收配置、将 Kali IP 反向填写,以及使用 root 权限运行 Ettercap。
本次实验加深了对局域网中协议欺骗、流量劫持、连接阻断等攻击方式的理解,也通过 ICMP 重定向问题进一步认识了网络字节序与主机字节序的差异。
第5次实践 网络安全防范技术
第五次实验主要围绕主机防火墙策略配置、Snort 离线流量分析以及蜜网网关防御策略分析展开。实验首先通过 iptables 实现 ICMP 数据包过滤,使 SEED 主机无法被 Kali 成功 ping 通,从而验证禁 Ping 策略对主机探测行为的抑制作用。随后在 Metasploitable 主机上配置访问控制规则,仅允许指定 SEED 主机访问 FTP 服务,而阻断 Kali 的非授权访问请求,进一步理解了基于源 IP 和服务类型的细粒度访问控制方法。
实验使用 Snort 对 listen.pcap 进行离线分析,并根据大量 TCP 会话、SYN 请求和 RST 响应判断该流量具有 Nmap TCP 全端口扫描特征。最后,博客分析了蜜网网关中的黑白名单、FenceList、LogDrop 以及 TCP/UDP Handler 等防御规则,说明蜜网网关既要尽可能完整地捕获攻击行为,又要限制蜜罐被攻陷后继续向外发起攻击的风险。
实验中遇到的主要问题是直接将 INPUT 默认策略设置为 DROP 后,导致部分正常连接被阻断。解决方法是先确认可信主机地址并添加放行规则,再设置默认拒绝策略,同时通过 iptables -L -n -v 检查规则是否生效。总体来看,本次实验深化了对防火墙规则顺序、默认拒绝原则、访问控制粒度以及入侵检测结果研判方法的理解,也体现了防御体系中“流量控制”和“攻击行为记录”之间的平衡关系。
第6次实践 Windows操作系统安全攻防
这篇博客主要围绕 Windows 远程漏洞利用、NT 系统攻击取证以及团队红蓝对抗实践展开。实验首先使用 Metasploit 对 Windows 靶机的 MS08-067 漏洞进行利用,通过配置攻击模块、载荷和目标参数,最终成功获取靶机 Shell 权限。这一过程不仅验证了漏洞利用链条的完整性,也使远程渗透从理论概念转化为较为直观的实践体验
博客基于 Wireshark 对 NT 系统蜜罐攻击流量进行还原,识别出 Unicode 编码攻击、msadcs.dll 访问、SQL 注入探测、FTP 口令破解、提权以及后门遗留等行为。通过对攻击流量和关键字符串的分析,可以看出攻击者不仅完成了多阶段入侵尝试,还意识到目标可能是一台蜜罐主机。团队对抗实践则进一步模拟了攻防双方的协作过程:攻方利用漏洞取得控制权并创建文件,守方通过抓包复盘攻击流程,从而强化了对攻击行为特征和防守取证思路的理解。
实验中主要遇到 Kali 与 Win2k 无法互通、攻击连接未建立等问题。前者通过调整虚拟机网络配置解决,后者则是在检查参数后发现 LHOST 配置命令有误。本次实验较好地衔接了漏洞利用与流量取证两个环节,使我进一步认识到系统补丁管理、组件最小化安装和权限隔离在安全防护中的重要性,也加深了对红蓝对抗中“攻击执行”和“证据还原”之间关系的理解。
第7次实践 Linux操作系统攻防
这篇博客主要围绕 Windows 远程漏洞利用、NT 系统攻击取证以及团队红蓝对抗实践展开。实验首先使用 Metasploit 对 Windows 靶机的 MS08-067 漏洞进行利用,通过配置攻击模块、载荷和目标参数,最终成功获取靶机 Shell 权限。这一过程不仅验证了漏洞利用链条的完整性,也使远程渗透从理论概念转化为较为直观的实践体验。
博客基于 Wireshark 对 NT 系统蜜罐攻击流量进行还原,识别出 Unicode 编码攻击、msadcs.dll 访问、SQL 注入探测、FTP 口令破解、提权以及后门遗留等行为。通过对攻击流量和关键字符串的分析,可以看出攻击者不仅完成了多阶段入侵尝试,还意识到目标可能是一台蜜罐主机。团队对抗实践则进一步模拟了攻防双方的协作过程:攻方利用漏洞取得控制权并创建文件,守方通过抓包复盘攻击流程,从而强化了对攻击行为特征和防守取证思路的理解。
实验中主要遇到 Kali 与 Win2k 无法互通、攻击连接未建立等问题。前者通过调整虚拟机网络配置解决,后者则是在检查参数后发现 LHOST 配置命令有误。本次实验较好地衔接了漏洞利用与流量取证两个环节,使我进一步认识到系统补丁管理、组件最小化安装和权限隔离在安全防护中的重要性,也加深了对红蓝对抗中“攻击执行”和“证据还原”之间关系的理解。
第8次实践 恶意代码分析实践
这次实践的重点放在恶意代码逆向分析和僵尸网络流量取证上。前半部分通过 file、strings、PEiD 和脱壳工具对 RaDa 样本进行识别,确认其存在 UPX 加壳,并在脱壳后进一步提取作者、硬编码服务器地址、注册表自启动、DDoS Smurf、VMware 检测等关键线索。Crackme 分析则借助 IDA Pro,从字符串引用、函数调用和条件判断入手,还原程序对参数和文件名的校验逻辑,体现了逆向分析中“由现象定位逻辑”的基本方法。
后半部分围绕 botnet_pcap 流量展开,对 IRC 通信、僵尸网络规模和攻击行为进行了取证分析。通过 Wireshark、tcpflow、tcpdump 等工具,博客识别出蜜罐主机与多个 IRC 服务器通信,统计出访问僵尸网络的主机数量,并筛查出针对蜜罐的攻击来源与目标端口。其中 445 端口出现 PSEXESVC.EXE 相关痕迹,80 端口存在红色代码蠕虫特征,137 端口则表现为 NetBIOS 扫描流量。实验中遇到脱壳后程序运行失败和 tcpflow 缺失的问题,分别通过结束原进程、安装工具包解决。这次实践把静态样本分析和网络流量证据结合起来,使我对恶意代码的功能判定、攻击链还原以及僵尸网络控制机制有了更具体的认识。
第9次实践 软件安全攻防--缓冲区溢出和shellcode
这篇博客的核心不在于单纯“运行一个漏洞程序”,而是围绕 Linux 可执行文件中程序控制流如何被改变展开。实践先从 objdump 反汇编入手,定位 main 函数中原本调用 foo 的位置,再通过十六进制方式修改机器码,把程序执行路径直接改向 getShell 函数。这个过程把“函数调用地址”“相对偏移”“小端序”等概念落到了具体操作上,也让控制流劫持不再停留在抽象层面。
后续部分进一步利用 foo 函数中的 gets() 缓冲区溢出问题,通过计算缓冲区到返回地址的距离,构造 payload 覆盖返回地址,从而间接跳转到 getShell。在 shellcode 注入环节,博客先检查 NX 和地址随机化状态,再借助 GDB 观察 eip、esp 以及栈中数据分布,最终确认 shellcode 的内存位置并完成执行。实践中遇到的文件格式错误、execstack 无法安装、GDB 安装异常等问题,也分别通过恢复二进制格式、改用 checksec 判断栈权限、修复 Kali 软件源密钥来解决。
这次实践比较完整地串联了反汇编分析、机器码修改、栈帧理解、返回地址覆盖和 shellcode 执行几个关键环节。它的价值在于让缓冲区溢出从“输入过长导致异常”转化为一套可观察、可计算、可验证的攻击过程,也加深了对 NX、ASLR 等防护机制实际意义的认识。
第10次实践 Web应用程序安全攻防
这次实践把 Web 应用安全中最典型的两类问题放在同一个实验框架下观察:一类是 SQL 注入,另一类是 XSS 跨站脚本。前者更偏向服务器端数据查询逻辑的破坏,后者则体现为浏览器端脚本执行边界被突破。实验从 SEED 环境配置开始,先进入数据库和 Web 容器熟悉系统结构,再通过登录绕过、数据篡改等现象验证 SQL 注入的实际影响,并进一步用预编译语句修复漏洞,说明“代码与数据分离”是防御 SQL 注入的关键。
XSS 部分的层次推进比较清晰:从简单弹窗,到读取 Cookie、窃取 Cookie,再到自动加好友、修改用户资料和自传播蠕虫。这个过程说明 XSS 并不只是页面上出现一段脚本那么简单,它真正危险的地方在于能够借用受害者的登录状态发起操作,甚至形成传播链。后面的 CSP 对抗实验也比较有启发性:不同站点策略下,脚本执行结果明显不同,说明浏览器端安全策略可以在输入过滤之外提供额外约束。本次实践的收获在于把“用户输入不可信”这一原则落到了具体代码、请求和页面行为中,也加深了对 Web 漏洞成因与防护边界的理解。
第11次实践 浏览器安全攻防实践
通过 Metasploit 调用 MS06-014 相关模块,配置反向 Shell 载荷并生成恶意网页链接;靶机访问该链接后,攻击机成功建立会话并获得远程 Shell。这里的重点不只是“拿到权限”,而是把浏览器漏洞、恶意页面触发和远程控制之间的关系具体化了。
从 start.html 出发,顺着隐藏引用定位到 kl.htm,再利用 URL 的 MD5 值在 hashed 文件夹中寻找对应样本。随后对 XXTEA、Base64、JavaScript 转义和 packed 混淆脚本逐步解码,提取出 014.exe、bf.exe、pps.exe、bd.exe 等下载线索,并发现这些文件的 MD5 值一致,说明它们本质上指向同一恶意程序。最后使用 radare2 查看二进制字符串,进一步确认样本还会继续下载其他文件。
通过查看并压缩恶意 HTML 源码,识别出页面中的核心攻击函数、下载执行逻辑以及 MS06-014 对应的 ActiveX CLSID。博客中遇到的主要问题是误把 \x 形式内容理解为普通十六进制加密,后来通过 JavaScript 字符串逆转义脚本完成还原。整体来看,这次实践的价值在于让网页木马分析形成了一条清晰链路:入口页面、脚本跳转、混淆还原、漏洞检测、载荷下载与样本追踪,比较完整地体现了恶意网页攻击的分析思路。
2.最喜欢且做得最好的实践是哪次?为什么?
我最喜欢且自认为完成得最好的一次实践是第八次实验:恶意代码分析实践。相比前面一些偏环境配置、工具使用或漏洞复现的实验,实验八更像是在做一次完整的安全分析工作,需要从文件特征、字符串信息、程序逻辑、运行行为和网络流量中不断寻找线索,再把这些零散证据串联起来。这个过程比较有挑战性,但也正因为不是简单照着命令执行,所以完成后的成就感更强。
这次实验中让我印象最深的是使用超级巡警脱壳机对 RaDa 样本进行脱壳。原始样本中的字符串信息并不直观,经过识别加壳、脱壳处理、再提取字符串之后,隐藏的路径、作者信息、服务器地址、自启动痕迹和 DDoS 相关功能才逐渐显现出来。这种“把被遮住的东西一点点还原出来”的过程很有意思,也让我更直观地理解了恶意代码为什么会使用加壳技术,以及分析人员为什么不能只依赖单一工具给出的结果。
Crackme 分析和僵尸网络流量分析也使这次实验的内容更加完整。前者需要结合 IDA Pro 阅读函数调用、条件跳转和字符串比较逻辑,后者则要通过 Wireshark、tcpflow 等工具还原 IRC 通信和攻击行为。静态分析、动态分析和网络取证在同一次实践中形成了比较清晰的闭环。对我来说,这次实验不仅完成度较高,也更符合研究生阶段对问题进行深入分析和综合判断的训练要求。因此,第八次实验是我最喜欢、也认为自己做得最好的一次实践。
3. 本门课学到的知识总结
通过本门课程的 11 次实践,我对网络攻防的认识从最初的“会运行工具”,逐渐转向“理解攻击链条、分析证据并提出防护思路”。这些实践并不是相互孤立的,而是从环境搭建、信息收集、协议分析、漏洞利用、防火墙防护、恶意代码分析、Web 安全到浏览器木马取证,逐步构成了一个较完整的攻防知识体系。
一、网络攻防环境的搭建
1. 基础实验环境的组成
- 靶机:存在漏洞或配置缺陷,作为攻击测试目标。
- 攻击机:安装渗透测试工具,用于发起扫描、利用和分析。
- 检测与防御平台:用于记录、监控、分析攻击流量。
- 虚拟网络:通过 NAT、网段、网关等配置保证实验主机互通。
2. 网络攻防虚拟机角色
| 虚拟机镜像名称 | 主要用途 |
|---|---|
| Kali Linux | Linux 攻击机 |
| WinXP Attacker | Windows 攻击机 |
| Metasploitable | Linux 靶机 |
| Win2K / Windows 靶机 | Windows 漏洞利用目标 |
| SEED Ubuntu | 安全实验平台 |
| HoneyWall | 蜜网网关与流量监控 |
这部分让我意识到,攻防实验的前提不是直接“开打”,而是要先保证网络拓扑、IP 地址、网关、子网掩码和连通性正确。很多实验问题最终都不是工具问题,而是环境配置问题。
二、信息收集与漏洞扫描
1. 信息收集的主要内容
- 使用 Whois 查询域名注册信息。
- 使用
nslookup获取域名解析结果。 - 查询 IP 地理位置和网络归属。
- 通过搜索引擎、公开数据库和网络足迹分析目标暴露面。
2. 常用扫描与检测工具
| 工具 | 主要功能 |
|---|---|
| Nmap | 主机发现、端口扫描、服务识别、操作系统探测 |
| Nessus | 漏洞扫描、风险评级、漏洞报告生成 |
| Wireshark | 流量抓包、协议分析、攻击行为还原 |
| Snort | 入侵检测、规则匹配、异常流量识别 |
信息收集是攻击的起点,也是防御的起点。攻击者通过信息收集寻找突破口,防守者也可以通过同样的方法检查自身暴露面。第二次实践中使用 Nmap 和 Nessus 后,我对“开放端口即潜在入口”这句话有了更具体的理解。
三、网络嗅探与协议分析
1. 抓包工具的使用
tcpdump:适合在命令行下快速抓取指定流量。- Wireshark:适合对 TCP、UDP、HTTP、Telnet 等协议进行图形化分析。
- 过滤规则:通过源 IP、目的 IP、端口和协议缩小分析范围。
2. 明文协议与扫描流量识别
在 Telnet 实验中,用户名、输入内容等信息可以直接在 TCP 流中被还原出来,这说明明文协议在实际网络中存在明显风险。对 listen.cap 的分析也让我看到,Nmap 主机发现、半开放扫描、服务版本探测等行为在流量层面都有比较鲜明的特征。
这部分知识使我真正把 TCP 三次握手、端口连接、RST 包、服务探测等概念和实际数据包对应起来。网络协议不再只是理论,而是可以被观察、分析和利用的对象。
四、网络协议攻击技术
1. 常见协议攻击方式
| 攻击方式 | 基本原理 | 防护思路 |
|---|---|---|
| ARP 欺骗 | 伪造 ARP 映射关系,使流量经过攻击者 | 静态 ARP、交换机防护、ARP 检测 |
| ICMP 重定向 | 诱导主机修改路由路径 | 禁用 ICMP Redirect、合理配置路由 |
| SYN Flood | 大量半连接消耗服务器资源 | SYN Cookie、限速、流量清洗 |
| TCP RST | 注入重置包中断连接 | 加密通信、会话校验、异常检测 |
| 会话劫持 | 利用明文通信或中间人位置接管会话 | HTTPS、SSH、强认证机制 |
第四次实践让我认识到,很多协议攻击并不依赖复杂漏洞,而是利用协议本身的信任机制或设计缺陷。尤其是 ARP 和 ICMP 相关实验,使我更直观地理解了局域网内部安全并不能只依赖“在同一个网络里就可信”这一假设。
五、安全加固与入侵检测技术
1. 防火墙规则配置
第五次实践中使用 iptables 配置 ICMP 过滤和 FTP 访问控制,使我理解了防火墙规则的几个关键点:
- 规则顺序会影响最终匹配结果。
- 默认拒绝策略更安全,但必须提前设置可信放行规则。
- 访问控制可以按照源 IP、目的端口、协议类型进行细粒度限制。
- 配置完成后需要用实际访问和
iptables -L -n -v验证效果。
2. 入侵检测与蜜网防护
Snort 离线分析让我看到,入侵检测并不是简单报警,而是要结合流量特征判断攻击类型。HoneyWall 的黑白名单、FenceList、LogDrop 等机制则体现了蜜网的特殊需求:一方面要尽量记录攻击行为,另一方面又要防止蜜罐被利用后继续攻击外部系统。
这一部分让我开始从防守方角度思考问题。防御不是把所有连接都关掉,而是在业务可用、证据留存和风险控制之间做平衡。
六、Windows 远程渗透与攻击取证
1. Metasploit 漏洞利用流程
Windows 远程渗透实验中,使用 Metasploit 对 MS08-067 漏洞进行利用,基本流程包括:
- 查找漏洞模块。
- 配置目标地址、攻击机地址和载荷。
- 启动 exploit。
- 获取 Shell 后进行验证。
- 通过 Wireshark 复盘攻击流量。
2. 取证分析能力
NT 系统蜜罐攻击取证部分让我认识到,攻击分析不能只看结果,还要还原过程。通过流量中的 URL、关键字符串、FTP 登录、后门文件和攻击时间线,可以逐步判断攻击者做了什么、目标暴露了什么问题、后续应该如何加固。
这次实践让我对“补丁管理”的重要性有了更强感受。一个长期存在的系统漏洞,如果没有及时修复,就可能成为远程控制主机的入口。
七、Linux 远程渗透与红蓝对抗
1. Samba 漏洞利用
第七次实践中,使用 Metasploit 对 Metasploitable 的 Samba usermap_script 漏洞进行攻击,最终获得 root 权限。这个实验说明,服务程序中的输入处理问题可能直接导致命令执行风险。
2. 红蓝对抗思路
- 攻击方:扫描服务、选择漏洞、配置载荷、获取权限。
- 防守方:抓取流量、识别攻击 IP、判断利用方式、复盘关键请求。
- 双方共同关注:攻击是否成功、证据是否完整、漏洞如何修复。
红蓝对抗让我体会到,攻击和防御并不是两套完全割裂的知识。真正有效的防守,需要理解攻击者会怎样寻找入口、怎样利用漏洞,以及会留下什么痕迹。
八、恶意代码分析与僵尸网络取证
1. 恶意代码静态分析
第八次实践中,通过 file、strings、PEiD、超级巡警脱壳机、IDA Pro 等工具分析 RaDa 和 Crackme 样本,主要掌握了:
- 文件类型识别。
- 字符串提取。
- 加壳与脱壳判断。
- 函数调用和条件跳转分析。
- 注册表自启动、硬编码服务器、DDoS 功能等行为识别。
2. 僵尸网络流量分析
在 botnet_pcap 分析中,通过 Wireshark、tcpflow、tcpdump 等工具识别 IRC 通信、攻击源 IP、目标端口和蠕虫行为。相比单独分析一个样本,流量取证更强调“把多个证据拼起来”,例如连接了哪些服务器、访问了哪些端口、是否存在批量扫描或远程控制痕迹。
这一实践是我最喜欢的一次,因为它把逆向分析和网络取证结合起来,既需要工具操作,也需要判断能力。
九、Linux Pwn 与缓冲区溢出
1. 程序控制流修改
第九次实践中,通过 objdump 反汇编、十六进制修改机器码,将程序调用路径从 foo 修改到 getShell,这让我理解了函数地址、相对偏移和小端序在二进制程序中的实际作用。
2. 栈溢出与 Shellcode
缓冲区溢出实验进一步涉及:
- 栈帧结构。
- 返回地址覆盖。
- GDB 调试。
eip、esp等寄存器观察。- NX、ASLR 等安全机制。
- shellcode 注入与执行。
这部分知识和操作系统、计算机组成原理联系非常紧密。以前学习栈和寄存器时更多停留在概念层面,而这次实践让我看到,一个危险函数和一次越界输入就可能改变程序执行流程。
十、Web 安全攻击与防御
1. SQL 注入
SQL 注入实验说明,如果程序直接拼接用户输入,就可能导致登录绕过、数据查询和数据篡改。对应的防御方法包括:
- 参数化查询。
- 预编译语句。
- 输入校验。
- 限制数据库账户权限。
- 减少错误信息回显。
2. XSS 跨站脚本
XSS 部分从简单弹窗逐步发展到 Cookie 窃取、自动加好友、修改用户资料和自传播蠕虫。它的危险之处在于攻击脚本可以借用用户的登录状态执行操作。防御时需要进行输出编码、输入过滤、设置 HttpOnly Cookie,并结合 CSP 限制脚本来源。
Web 安全实践让我反复意识到一句话:不要信任用户输入。无论是 SQL 注入、XSS、CSRF,还是文件上传漏洞,本质上都与输入边界、权限校验和业务逻辑有关。
十一、浏览器渗透与网页木马取证
1. 浏览器漏洞利用
第十一次实践中,通过 Metasploit 生成恶意网页链接,靶机访问后触发浏览器漏洞并建立远程 Shell。这说明浏览器本身也是攻击面,漏洞利用并不一定需要用户主动下载可执行文件,访问恶意页面同样可能带来风险。
2. 网页木马分析流程
- 从入口 HTML 页面开始定位隐藏引用。
- 根据 URL 和哈希值查找相关样本。
- 对 Base64、XXTEA、JavaScript 转义、packed 混淆代码进行还原。
- 分析恶意脚本中的漏洞检测、文件下载和执行逻辑。
- 结合二进制字符串继续追踪后续载荷。
这部分实践让我理解了网页木马分析的基本链路:入口页面只是表面,真正的恶意逻辑往往隐藏在多层跳转、编码和混淆之后。
十二、综合知识体系理解
除了具体实验技能,本门课还强化了很多基础能力。网络协议分析依赖计算机网络基础,Pwn 依赖操作系统和计算机组成原理,恶意代码分析离不开程序设计和逆向基础,Web 安全又与数据库、HTTP、JavaScript 和后端开发密切相关。
同时,网络攻防实践必须建立在合法授权的前提下。学习《网络安全法》《数据安全法》《个人信息保护法》以及相关条例后,我更加明确,攻防技术的目标不是滥用漏洞,而是在合规范围内发现风险、验证风险并推动修复。对研究生阶段的学习而言,这门课不仅训练了工具使用能力,更重要的是培养了从攻击原理、防御措施、证据分析到法律边界的整体安全思维。
5.课堂的收获与不足
通过这一学期 11 次网络攻防实践的学习,我对网络安全的理解比课程开始时更加完整。最初的实验主要围绕攻防环境搭建、虚拟机网络配置和连通性测试展开,看似只是基础准备,但实际上为后续所有实践奠定了前提。之后的信息收集、端口扫描、漏洞扫描、协议分析、ARP 欺骗、ICMP 重定向、SYN Flood、TCP RST 等实验,让我逐步理解了攻击者如何从目标暴露面中寻找入口,也认识到网络协议本身的设计特点可能带来安全风险。
Web 安全和浏览器安全实践让我对现实中常见的攻击方式有了更直观的认识。SQL 注入、XSS、XSS 蠕虫、CSP 防护、网页木马解码和浏览器漏洞利用都说明,应用系统中的一个输入校验缺陷、一个不安全组件或一段被混淆的脚本,都可能发展成完整的攻击链。通过这些实验,我逐渐形成了从“攻击复现”到“漏洞成因分析”,再到“防护措施思考”的学习路径。相比只掌握某个工具命令,这种分析思路对研究生阶段后续学习和科研更有价值。
学习过程中也暴露出不少不足。环境配置能力还需要继续提高。多次实验中都遇到过虚拟机网络不通、系统版本不兼容、工具缺失、软件源异常、靶机无法访问等问题,有些问题前期定位花费了较长时间。我对部分底层原理的掌握还不够扎实,尤其是在缓冲区溢出、Shellcode、汇编跳转和恶意代码逆向分析中,虽然最后能够完成实验,但有些步骤仍需要反复查阅资料才能真正理解。自己在部分实验中对工具存在一定依赖,能够按照教程完成扫描、攻击或解码,但对工具背后的检测逻辑、利用原理和误报原因理解还不够深入。
我也意识到自己的代码审计和自动化分析能力还有提升空间。Web 安全实验中可以完成 SQL 注入和 XSS 的利用与修复,但如果面对一个陌生项目,如何系统地定位输入点、追踪数据流、判断危险函数调用,还需要更多训练。恶意代码和流量分析中,也可以进一步尝试用 Python 编写脚本,对日志、pcap 文件、字符串和哈希结果进行自动化处理,提高分析效率。
6.参考文献
可以,下面按参考文献格式整理好了。这里列的是放放q博客园主页当前能看到的全部 12 篇博客。
参考文献
[1] 放放q. 20241905孔佳音-第一周[EB/OL]. 博客园, 2025-03-01. https://www.cnblogs.com/cassiefang/p/18745369
[2] 放放q. 20241905 2024-2025-2《网络攻防实践》第2次作业[EB/OL]. 博客园, 2025-03-11. https://www.cnblogs.com/cassiefang/p/18764772
[3] 放放q. 20241905 2024-2025-2《网络攻防实践》第3次作业[EB/OL]. 博客园, 2025-03-14. https://www.cnblogs.com/cassiefang/p/18771418
[4] 放放q. 20241905 2024-2025-2《网络攻防实践》第4次作业[EB/OL]. 博客园, 2025-03-20. https://www.cnblogs.com/cassiefang/p/18782955
[5] 放放q. 20241905 2024-2025-2《网络攻防实践》第5次作业[EB/OL]. 博客园, 2025-03-31. https://www.cnblogs.com/cassiefang/p/18802084
[6] 放放q. 20241905 2024-2025-2《网络攻防实践》第6次作业[EB/OL]. 博客园, 2025-04-06. https://www.cnblogs.com/cassiefang/p/18811708
[7] 放放q. 20241905 2024-2025-2《网络攻防实践》第7次作业[EB/OL]. 博客园, 2025-04-13. https://www.cnblogs.com/cassiefang/p/18822936
[8] 放放q. 20241905 2024-2025-2《网络攻防实践》第8次作业[EB/OL]. 博客园, 2025-04-18. https://www.cnblogs.com/cassiefang/p/18834166
[9] 放放q. 20241905 2024-2025-2《网络攻防实践》第9次作业[EB/OL]. 博客园, 2025-04-25. https://www.cnblogs.com/cassiefang/p/18846149
[10] 放放q. 20241905 2024-2025-2《网络攻防实践》第10次作业[EB/OL]. 博客园, 2025-05-14. https://www.cnblogs.com/cassiefang/p/18875518
[11] 放放q. 20241905 2024-2025-2《网络攻防实践》第11次作业[EB/OL]. 博客园, 2025-05-25. https://www.cnblogs.com/cassiefang/p/18895622
[12] 放放q. 20241905 2024-2025-2《网络攻防实践》课程总结[EB/OL]. 博客园, 2025-06-12. https://www.cnblogs.com/cassiefang/p/18924926

浙公网安备 33010602011771号