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

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

1、内容总结

第一次实践 蜜网环境搭建与网络配置

实验过程:

第一次实践在VMWare Workstations上搭建网络攻防实验所需的环境。根据指导资料,按照拓扑图,攻击区走 VMnet8,安装了 Kali、WinXP Attacker、SEED Ubuntu;蜜罐区走 VMnet1,安装了 Linux Metasploitable 和 Win2kServer;中间用蜜网网关做透明网桥桥接两个区域,eth2 单独做管理口。进行虚拟网卡、网关的配置,确保虚拟机之间能够互相联通。


第二次实践 信息收集与漏洞扫描

实验过程:

这次实践我学习了攻击前的踩点,进行网络信息收集和目标主机的漏洞扫描。通过ip查询工具,先对 baidu.com 做 whois 查询,查到该域名的注册人和联系方式、对应的ip和ip对应的国家等信息。接着我尝试获取 QQ 好友 IP,跟我的朋友打了个语音电话,打开资源监视器在网络活动里找到 QQ 进程的 TCP 连接,查出一个河北的 IP,跟他的实际位置对上了。

然后我用 Nmap 扫描靶机,用不同的指令查看主机是否活跃、扫描开放端口、操作系统、识别服务等。我还使用Nessus 扫描漏洞,得出的报告里列出了 SSH 和 mDNS 的漏洞以及攻击路径思路。最后用搜索引擎搜自己名字,确认没有隐私泄漏的问题。


第三次实践 网络嗅探与流量分析

实验过程:

这次实践分为三部分:tcpdump 抓包、Wireshark 分析 Telnet、listen.pcap 取证分析。

tcpdump 部分,用过滤表达式匹配 SYN+ACK 标志位抓 HTTP 流量,抓住了四个 Web 服务器 IP。Wireshark 部分用 Telnet 登录水木清华 BBS,通过对捕获的数据包进行分析,提取到了用户名和整个登录过程的明文,这个实践让我对"明文协议不安全"有了真实的体验。取证分析中我借助Wireshark对pcap文件进行分析,锁定了攻击主机和蜜罐主机的IP;用 p0f 识别判断扫描工具和方法,以及攻击主机的操作系统等信息。


第四次实践 TCP/IP协议攻击

实验过程:

这次实践把 TCP/IP 协议栈的几个经典攻击进行了实践:

ARP 缓存欺骗我用的是 Bettercap。一开始想用arpspoof进行实践,结果 apt 安装时出现了问题,提示会删掉整个图形桌面,我赶紧停止换用 Bettercap。通过伪造ARP数据包篡改了靶机的ARP表,欺骗成功后用靶机查询ARP表,网关 MAC 已经变成了攻击机的 MAC。

ICMP 重定向攻击我用的 netwox工具,伪造网关身份给靶机发送伪造的ICMP重定向报文,改变了靶机的默认路由,使网络流量被重定向到攻击机。SYN Flood攻击实验中使用 netwox工具,对靶机 Telnet 端口发海量伪造源 IP 的 SYN 包,Wireshark 里一片红全是 SYN,无法建立新的TCP连接,实现了拒绝服务攻击。TCP RST 攻击用 netwox伪造 RST 包掐断会话,*制终止了靶机上已经建立的TCP连接。

TCP 会话劫持实践中,我在 eth0 上 使用tcpdump 拦截通信,等受害者敲命令触发数据包,从包里拿到源端口、序列号、确认号,然后用 netwox 通过ARP欺骗控制了靶机的TCP连接,并向靶机注入了文件数据。


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

实验过程:

这次实践我学习了防火墙配置和入侵检测系统的使用,主要做了三件事:配 iptables、用 Snort 分析流量、读蜜网网关配置。在配置防火墙实验中,通过设置规则完成了对ICMP数据包的过滤,配置完后对方 ping 全部被拒绝,但在本机的 tcpdump中 能看到请求照常到达,只是内核静默丢弃,让对方觉得主机不存在,如果REJECT 则会暴露主机在线。我还配置了IP 白名单:允许特定IP地址访问本机的网络服务,提高主机的安全性。在入侵检测实验中通过snort工具分析 listen.pcap 文件,确认了攻击为端口扫描。蜜网网关配置文件分析中,我了解到防火墙是如何控制网络流量的进出,以及Snort工具的规则,了解了入侵检测系统的配置情况。


第六次实践 Windows远程渗透与取证分析

实验过程:

这次实践的内容包含MS08-067 渗透、日志取证和团队对抗。

MS08-067 是 Windows SMB 服务的经典栈溢出,我在Kali 上 Metasploit 搜模块、加载、设载荷、设参数,设置完毕后攻击 WinXP 一直失败,查了一下发现可能是补丁版本已修复,换成 Win2kServer主机后一次攻击就成功了,获取靶机控制权后通过命令验证了攻击的成功 。

取证分析实践中,我分析了一个特定IP地址对蜜罐主机的NT系统的攻击过程。通过Wireshark 打开攻击日志,追踪 HTTP 流还原了一条完整攻击链:攻击者先用 IIS Unicode 目录遍历试探敏感文件,然后用 RDS 漏洞拿到权限,接着 FTP 上传 后门工具,nc 开反向 Shell。最后攻击者还创建了 rfp.txt,内容是"best honeypot i've seen till now 😃",识破了这是个蜜罐。

团队对抗实践我是和许超同学互相攻击。我攻他守、他攻我守,两个角色都体验了一遍。作为攻击方时我利用Metasploit对防守方的靶机进行了MS08-067漏洞攻击,并成功获取了控制权,在靶机中创建自己的文件。作为防守方时,我使用Wireshark监听并分析对方的攻击过程,提取到了对方的IP地址和攻击方法等信息。


第七次实践 Linux渗透与攻防对抗

实验过程:

这次实践主要进行了Linux远程渗透攻击和攻防对抗。靶机 Metasploitable 上跑着有漏洞的 Samba 服务,在linux攻击机上找到靶机上的Samba服务的Usermap Script漏洞,设置攻击参数,用正向连接攻击成功。获取靶机控制权后验证了攻击结果。

在攻防对抗中,我利用Metasploit对靶机进行了渗透攻击。在防守方抓包时,使用Wireshark 过滤攻击机和靶机之间的流量,攻击走 445 端口(Samba 默认端口),追踪 SMB 协议的 TCP 流能看到攻击机让靶机连回 4444 端口建 Shell,Shell 里敲的所有命令也全在明文流量里。这说明了SMB 协议本身没有加密,在攻击方拿到 Shell 后如果不用加密信道,操作命令也会全部暴露。


第八次实践 恶意代码分析与僵尸网络

实验过程:

这次实验涵盖恶意代码分析、逆向练习与网络流量分析。对RaDa.exe样本,经file、strings和PEiD识别为UPX加壳的32位PE,脱壳后字符串暴露注册表、URL及函数,IDA Pro定位作者;动态监控发现其通过注册表Run键自启、连接C&C服务器、支持DDoS并查询MAC,定性为远程后门。

随后分析两个crackme程序,通过命令行试探与IDA Pro逆向,定位strcmp处正确参数“I know the secret”及文件名必须为crackmeplease.exe的校验逻辑,在反复验证中掌握逆向思路。

对蜜罐5天流量,因数据量大采用tcpflow及grep、sed等命令行管道统计出3461个僵尸主机,确认165个攻击源IP,其中445端口SMB攻击成功后上传PSEXEC.EXE引发大量4444连接,完整重现了攻击的过程。


第九次实践 缓冲区溢出与Shellcode注入

实验过程:

这次实践攻击的是一个叫 pwn1 的 ELF 程序,目标是把正常流程下永远不会执行的 getShell 函数跑起来。

方法一:直接改二进制。objdump 反汇编看地址,vim :%!xxd 转十六进制,算好跳转偏移量把 call 指令的目标改成 getShell 地址,然后:%!xxd -r 还原二进制后保存。中间经历过一次文件损坏,原因是忘记还原就直接保存了,objdump 报 file format not recognized,只好重来。

方法二:利用 foo 函数的缓冲区溢出。objdump 看栈帧分配了 32 字节,用 Perl 构造 Payload——32 个 A 填满缓冲区覆盖 EBP,后面 4 字节是 getShell 地址的小端序。(cat input_gh; cat) | ./pwn1 执行,溢出后 EIP 被劫持到 getShell。

方法三:注入自定义 Shellcode。先关 NX(execstack -s)和 ASLR(关地址随机化),构造 Payload:32 个 A + 占位返回地址 + NOP 滑板 + 真正的 Shellcode。用 GDB attach 进程,disassemble、设断点、info r esp 看栈地址、算出 Shellcode 的准确位置,生成最终 Payload 执行后拿到 Shell。这次实践让我第一次直面栈帧布局、返回地址覆盖、EIP 劫持,也理解了 ASLR 和 NX 为什么能有效防缓冲区溢出。


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

实验过程:

本次实验在 SEED Ubuntu 环境中围绕 Web 安全两大经典漏洞展开。SQL 注入部分,基于员工管理系统,通过审计 unsafe_home.php 发现用户输入被直接拼入 SQL 语句。使用 Admin'# 作用户名,以 # 注释掉后续密码校验,绕过认证进入管理员界面;再利用 UPDATE 注入,在昵称处注入 ',Salary='20252913' WHERE name='Admin';#,闭合引号并追加更新逻辑,成功篡改管理员薪资。防御上采用 prepare 预编译与 bind_param 参数绑定,使输入不再作为 SQL 指令解析,Admin'# 攻击随之失效。XSS 部分,在 Elgg 平台上开展,于个人简介字段写入 <script>alert("20252913gh")</script> 实施存储型 XSS,每次访问主页即弹窗;进一步编写脚本窃取 cookie 并发送至攻击者,实现无需受害者干预即可添加好友、篡改资料,进而组合成自我传播的 XSS 蠕虫,最后通过浏览器设置对抗了XSS攻击。


第十一次实践 浏览器渗透与网页木马分析

实验过程:

本次实验围绕浏览器渗透攻击与网页木马取证分析展开。攻击环节利用了微软安全公告MS06-014中描述的浏览器漏洞,通过Metasploit配置攻击参数后生成恶意网址,靶机访问后页面仅显示乱码,攻击机则成功获取shell命令行会话在靶机执行命令。

在取证分析实践中:从入口页面发现内嵌框架加载了另一个页面,该页面通过计算两个链接地址的散列值,在散列文件目录中定位并下载对应文件。其中一个文件经特定加密算法与编码双重保护,用密钥解密后得到一段探测脚本,该脚本利用异常捕获依次检测系统是否存在多个有漏洞的控件,并根据检测结果加载不同攻击脚本:有的负责下载恶意程序并伪装为系统文件,有的在解混淆后呈现堆喷射与攻击载荷代码,还有的攻击载荷经八进制和统一码双层编码以躲避检测。对可执行程序的分析显示,有三个样本散列值一致,均为同一开发工具编译且未加壳,反汇编字符串中可见自动运行配置文件、修改系统时间至1981年以停用安全软件、终止浏览器进程并针对杀毒软件驱动进行对抗,以及通过修改服务配置实现持久化等行为。另有一个程序带有压缩壳,脱壳后进一步暴露自我删除、注册表自启动、伪装控件和窗口钩子窃取信息等功能,完整还原了从漏洞利用到长期控制的攻击链条。

在web 浏览器渗透攻防对抗实践中,攻击方利用渗透测试框架,针对至少两款不同网络浏览器的安全漏洞生成利用代码,经混淆处理后嵌入恶意链接,通过欺诈邮件发送;防守方则需提取邮件中的挂马链接,进行解混淆以还原代码原貌,并剖析攻击所利用的浏览器软件及其具体漏洞。


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

第八次实践,我选这次有几个原因。

第一是内容最密集。从 PE 文件识别、UPX 脱壳、IDA Pro 逆向、恶意行为分析,到 IRC 僵尸网络的真实流量分析,一条线串下来,几乎覆盖了恶意代码分析的全部核心技能。

第二是脱壳:让我有看见真相的感觉。脱壳前 strings 输出一堆乱码,脱壳后函数名、注册表项、下载 URL和作者署名"Raul Siles & David Perez"全部都能看到。这种冲击让我一下就记住了加壳的意义和脱壳的价值。

Crackme 的逆向也很有意思。不是对着教程一步步过,而是自己先在命令行里跑不同参数看反应,然后上 IDA Pro 看 Strings、看函数调用图、看流程图,猜出正确参数再去验证。crackme2.exe 多了一个文件名校验,开始怎么试都不对,后来在流程图里发现 strstr 调用才意识到程序在检查调用名。这种"猜-验证-发现新线索-再猜"的循环,让我觉得自己真的在逆向分析,而不是在执行操作步骤。

僵尸网络流量分析也让我学到了实战技巧,3461 个僵尸主机数量出来的时候,我第一次对僵尸网络的规模有了直观感受。

这次实践我投入的时间和思考是最多的,也是我觉得最有意思的一次实践,所以第八次实践是我最喜欢的且做的最好的一次实践。


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

一、蜜网环境搭建与网络配置

  • 虚拟网络架构:理解 NAT 模式(虚拟机通过宿主机做地址转换)、仅主机模式(完全隔离只能内部通信)、桥接模式(虚拟机直接连物理网络)的区别和适用场景。
  • 子网划分:把 /24 拆成两个 /25,掩码怎么算,广播地址怎么填。
  • 透明网桥:二层转发、不设 IP、攻击方感知不到桥的存在,管理流量走单独的 eth2 口实现数据面和管理面分离。
  • Linux 运维基础:sudo、vim 编辑配置、ifconfig 设 IP、修改 /etc/rc.local 开机自动配网、tcpdump 抓包测连通性。
  • 关键攻防工具:

​ Nmap:网络扫描与主机发现

​ Wireshark:网络流量捕获与分析

实践收获:

通过这次实验我对网络攻防有了整体的拓扑概念,了解了靶机、攻击机、蜜网网关各自的角色定位,并掌握了搭建隔离实验环境的基本方法。从 ping 到看 IP 配置到看网关到看虚拟网络编辑器的网络不通的排查过程,虽然过程比较折腾,但为后面每次实验的问题排查打下了底子。

二、信息收集与漏洞扫描

  • 被动信息收集:whois 查域名注册信息、nslookup 做 DNS 解析、通过 IP 查地理位置和归属组织。
  • 主动扫描:Nmap 四个核心参数——-sP 主机发现、-sS SYN 半开扫描(只发 SYN 不完成三次握手,更隐蔽)、-O 操作系统识别、-sV 服务版本检测。
  • 漏洞扫描:Nessus 自动化漏洞检测,生成包含漏洞等级、描述、修复建议的扫描报告。
  • 网络溯源意识:TCP 连接是端到端的,不管应用层怎么封装,传输层双方的 IP 是藏不住的。

实践收获:

我掌握了信息收集的三个基本技能:DNS 查询、端口扫描、漏洞扫描。通过抓 QQ 好友 IP 那个操作,我感受到了在网络环境中隐藏自己的位置几乎是不可能的。使用 Nmap 和 Nessus 扫描靶机时,发现即使是普通的系统也可能存在诸多安全漏洞,一旦被恶意利用后果严重。搜索网上足迹也让我更加清楚地认识到个人隐私在网络环境中的脆弱。

三、网络嗅探与流量分析

  • 网络嗅探:通过监听网络接口捕获经过的所有数据包,可以了解网络流量的内容、结构和行为。
  • 协议分析:用 Wireshark 对捕获到的数据包逐层解析,理解通信过程和内容。Follow TCP Stream 功能可以看到完整的会话内容。
  • tcpdump 过滤表达式:tcp[13]&18=2 这种表达式涉及 TCP 首部结构:第 13 字节偏移是标志位字段,18(00010010)对应 SYN 和 ACK 同时为 1。
  • 取证分析:tshark 提取字段统计定位主机 → p0f 被动指纹识别判断 OS 和扫描工具 → Wireshark 过滤器组合还原攻击时序。
  • 被动指纹识别(p0f):不主动发包,只监听流量特征就能判断 OS 类型和扫描工具。

实践收获:

这次实验最大的收获是学会用 Wireshark读懂一份攻击流量文件。通过对 listen.pcap 的逐包分析,SYN、SYN+ACK、RST 的三段式交互让我真正理解了 SYN 半开扫描的原理。Telnet 明文传输的直观展示让我理解了明文协议不安全。

四、TCP/IP协议攻击

  • ARP 缓存欺骗:利用 ARP 协议无认证的设计缺陷,伪造 ARP 响应把错误的 MAC 写入对方缓存表,是中间人攻击的第一步。
  • ICMP 重定向:伪造网关身份发 ICMP 重定向报文,利用路由优化机制的信任假设劫持流量。
  • SYN Flood:利用 TCP 三次握手资源预先分配的特点,发海量伪造源 IP 的 SYN 包撑爆半开连接队列,实现拒绝服务。
  • TCP RST 攻击:伪造 RST 包*制终止已建立的 TCP 连接,前提是序列号在接收窗口内。
  • TCP 会话劫持:掌握序列号和确认号就能伪造通信任何一方,向会话中注入恶意数据。
  • 工具链:Bettercap 做中间人攻击、netwox 76/78/40/86 号模块分别对应不同攻击手法。

实践收获:

这次实验让我对 TCP/IP 协议族有了更深入的理解,TCP/IP 在设计时把安全性放在了功能性和效率之后。ARP 没有认证、ICMP 信任路由消息、TCP 三次握手无法区分正常和恶意 SYN、序列号机制只要猜中就能伪造。这次实验也让我认识到了网络安全的防护需要从协议层面进行加固。

五、防火墙与入侵检测

  • iptables 防火墙:通过规则对数据包进行过滤、修改和转发。规则按顺序从上到下匹配,ACCEPT 必须放在 DROP 前面。DROP(静默丢弃让对方觉得主机不存在)和 REJECT(回 ICMP 不可达暴露主机在线)有着本质区别。
  • 防火墙的基本功能:对进出网络的流量进行过滤和访问控制,依据预设规则允许或拒绝数据包通过,从而在可信内网与不可信外网之间构建安全边界。它实施状态检测,跟踪连接状态防止非法入侵;执行网络地址转换,隐藏内部拓扑;记录流量日志,为审计和溯源提供依据。此外,还可实现用户认证、应用层过滤及入侵防御等,有效阻断恶意流量和未授权访问,保护内部网络资源与数据安全。
  • Snort 入侵检测:分析网络数据包特征识别攻击行为并生成报警日志。stream_tcp 模块的统计数据可以辅助判断扫描行为。Snort 工作在 IPS 模式时不仅能检测,还能主动丢包或改包。
  • 入侵检测技术:入侵检测技术是继防火墙之后的第二道安全闸门,负责对网络或系统进行持续监控,旨在发现已发生的入侵或正在进行的攻击企图。通过深入分析数据包、日志和系统调用等信息,它能识别端口扫描、缓冲区溢出、后门木马等恶意活动。
  • 蜜网网关协同设计:防火墙做粗筛策略性放行攻击流量但限制出站防跳板,IDS/IPS 做实时深度检测和主动阻断。

实践收获:

这次实验我认识到了防火墙和入侵检测是网络安全的两道重要防线。通过对 iptables 规则的设置,我理解了如何根据实际需求实现访问控制;通过对 Snort 的配置和使用,我学会了如何从统计数据推断攻击行为。蜜网网关的配置文件分析则让我看到了防火墙和 IDS/IPS 在实际部署中的协同工作方式。

六、Windows远程渗透与取证分析

  • Metasploit 渗透框架:模块化操作思维:search → use → set payload → set options → exploit是渗透测试的标准流程。
  • MS08-067 漏洞:Windows SMB 服务的栈溢出漏洞,利用成功可直接获取远程 Shell。
  • 取证分析:Wireshark 追踪 HTTP 流 → 识别攻击工具特征签名→ 还原攻击时间线:Unicode 遍历探测 → RDS 漏洞利用 → FTP 上传后门 → Netcat 反向 Shell → 后渗透操作 → 识别蜜罐。
  • NT 系统攻击分析:IIS Unicode 目录遍历、MDAC RDS 漏洞利用、后门植入。
  • 红蓝对抗:攻击者追求快和隐蔽,防守者要在海量流量里找异常点,这是两种完全不同的思维方式。

实践收获:

这次实验让我掌握了 Metasploit 攻击链条的基本流程和网络取证分析的方法。取证分析部分通过还原攻击时间线,我第一次完整地看到了一个从漏洞利用到后门植入到反取证的完整攻击过程。团队对抗让我体会到了攻防双方的博弈,这种真实的对抗和打固定靶机相比更有体验,给我留下的印象更深刻一些。

七、Linux渗透与攻防对抗

  • Samba 服务漏洞:Samba 3.0.20-3.0.25c 的 Usermap Script 漏洞(CVE-2007-2442),其成因是服务未正确过滤用户名字段,当使用可自定义的“username map”脚本时,攻击者可注入反引号等Shell元字符,无需认证即可远程执行任意命令,进而获取服务器最高权限。
  • 正向连接与反向连接:反向连接在网络环境受限时可能失败,正向连接更稳定但更容易被防火墙拦截。
  • 流量分析:SMB 协议未加密,攻击载荷明文传输;拿到 Shell 后不用加密信道,操作命令也会全暴露。

实践收获:

在渗透攻击实验中,我掌握了如何针对 Linux 系统特定服务漏洞进行攻击并获取访问权限。攻防对抗中,作为攻击方学会了利用漏洞渗透和提升权限,作为防御方学会了用 Wireshark 监听通信、分析攻击行为、提取关键信息为防御提供依据。这种攻防对抗让我意识到在实际网络环境中,攻击者和防御者的技术对抗是不断变化和升级的。

八、恶意代码分析与僵尸网络

  • 恶意代码分析工具链:file 识文件格式 → PEiD 检壳 → 超级巡警/UPX 脱壳 → strings 提字符串 → IDA Pro 静态分析(Strings 窗口、函数调用图、流程图)→ Process Explorer 动态监控。
  • 加壳与脱壳:加壳是恶意代码反分析的常见手段(压缩+混淆),脱壳后才能看到真实的函数调用和字符串。
  • Crackme 逆向:命令行试探 → IDA Pro 看字符串和流程图 → 找到 strcmp 判断逻辑 → 推出正确输入。文件名校验通过 strstr 实现,是另一种反逆向技巧。
  • 恶意代码分类:蠕虫主动传播、病毒寄生感染、后门远程控制,核心区别在于传播方式和感染机制。
  • 僵尸网络分析:IRC 协议作为 C&C 通信方式,基于Snort日志解析IRC协议控制流量,分析僵尸网络结构和攻击者利用的漏洞、攻击手段等。

实践收获:

这次实验我学会了恶意代码分析的完整流程和网络数据源分析的方法。脱壳看见真实代码的时候,我一下理解了加壳的意义和脱壳的价值。Crackme 逆向中的"猜-验证-发现新线索-再猜"的循环,让我感觉自己真的在做逆向分析。

九、缓冲区溢出与Shellcode注入

  • 缓冲区溢出原理:利用程序对缓冲区边界检查不严的缺陷,超长输入覆盖栈上的返回地址,劫持程序执行流。
  • 栈帧布局:局部变量 → EBP → 返回地址,溢出方向是从低地址向高地址覆盖。
  • 十六进制编辑:vim :%!xxd 转十六进制模式直接修改机器码,计算跳转偏移量(目标地址 - 下一条指令地址)。
  • Shellcode:精简的机器码,对应系统调用序列。比如\x31\xc0\x50\x68\x2f\x2f\x73\x68... 这段代码对应的是 execve("/bin/sh", NULL, NULL),清空 eax、push 字符串到栈、传参数、设系统调用号 0x0b、int 0x80 触发。
  • NOP 滑板:不用精确跳到 Shellcode 第一字节,跳到 NOP 区域的任意位置都能滑到 Shellcode。
  • 安全防护机制:ASLR 随机化栈和库加载地址让攻击者猜不到 Shellcode 位置;NX(DEP)让栈上代码不可执行。两者结合大幅提高漏洞利用难度。
  • GDB 调试:attach 进程、disassemble 反汇编、break 设断点、info r 看寄存器、计算地址等操作是二进制漏洞调试的基本功。

实践收获:

这次实验让我第一次直面栈帧布局、返回地址覆盖、EIP 劫持这些底层概念。通过三种不同的利用方法:直接改二进制、缓冲区溢出、Shellcode 注入,我从不同角度理解了程序执行流劫持的原理,过程中也复习到了汇编语言和计算机组成原理的相关知识。

十、SQL注入与XSS跨站脚本攻击

  • SQL 注入本质:数据和指令没有分离。用户输入被当成 SQL 语句一部分解析而非纯数据。SELECT 注入用 '# 注释绕过认证;UPDATE 注入用单引号闭合和逗号追加篡改数据。
  • 参数化查询:prepare 预编译 + bind_param 参数绑定是根本修复方案。用户输入变成独立参数,不会被当成 SQL 解析。
  • XSS 攻击递进链:弹窗验证漏洞存在→ 窃取 Cookie配合 nc 监听→ CSRF 结合,抓包分析接口格式和 Token的自动操作→ 蠕虫自传播:读取自身代码注入受害者页面。
  • 存储型 XSS:恶意代码留在服务器上,每个访问的用户都自动中招,危害最大。
  • 数据库操作:MySQL 登录、show databases/tables、select + where 查询、了解表结构设计。

实践收获:

SQL 注入实验让我理解了数据与指令分离的重要性,只要用户输入能影响 SQL 语法结构,注入就不可避免。参数化查询是根除方案。XSS 实验从简单弹窗到蠕虫传播的递进让我看清了这类攻击的完整危害链。在本科阶段学过很多前端开发的课程,但关于前端安全性的内容大多停留在理论,这次实验让我真正看到了 Web 应用前端安全的重要性。

十一、浏览器渗透与网页木马分析

  • 浏览器漏洞利用:通过构造恶意网页触发浏览器或其 ActiveX 控件的内存破坏漏洞实现代码执行(MS06-014、MS06-055)。
  • 代码混淆与解密:XXTEA+Base64 双层加密的 JavaScript,通过手动找密钥和在线工具解密;八进制编码和 Unicode 编码(%u)的 Shellcode 需要还原;Packer 混淆器的外层 eval 展开后才是攻击逻辑。
  • 恶意代码同源性判断:MD5 比对判断 bf.exe、pps.exe、bd.exe 是同一文件的三份拷贝。
  • 恶意代码持久化手段:注册表 Run 键自启、服务修改、U 盘传播、系统时间篡改、对抗安全软件等。
  • 取证分析思路:从入口文件入手 → 追踪 iframe/重定向链 → MD5 散列定位加密文件 → 逐层解密 → 静态+动态分析可执行文件。

实践收获:

这次实验将浏览器安全和恶意代码分析结合了起来,让我看到了一个完整网页木马攻击场景的全貌:从入口页面到多层重定向、到加密脚本的逐层解密、到根据环境加载不同攻击模块、到最终木马的功能分析。XXTEA+Base64 解密和 Unicode Shellcode 还原这些操作,让我对代码混淆在恶意软件中的实际应用有了真实的体会。恶意代码的持久化手段也从注册表自启扩展到了服务修改、U 盘传播、系统时间篡改、对抗安全软件等多个维度。

十二、法律

12.1、《中华人民共和国网络安全法》

(一)立法背景与定位

《中华人民共和国网络安全法》于2016年11月7日由第十二届全国人大常委会第二十四次会议通过,全文共七章七十九条,自2017年6月1日起施行。该法是我国第一部关于网络安全的综合性基础性法律,从根本上改变了网络空间安全治理法律依据效力层级偏低和缺乏体系性的状况。2025年10月28日,第十四届全国人大常委会第十八次会议通过了修改决定,修改后的《网络安全法》自2026年1月1日起实施,这是该法颁布以来的首次修改。

《网络安全法》与《数据安全法》《个人信息保护法》一并构成我国网络法领域的顶层设计,其出台远早于后两部法律,是网络法治的起源和重要上位法依据。

(二)主要内容框架

《网络安全法》涵盖“总则”“网络安全支持与促进”“网络运行安全”“网络信息安全”“监测预警与应急处置”“法律责任”“附则”等内容。核心制度主要包括:

  1. 网络安全等级保护制度

该法要求实行网络安全等级保护制度。网络运营者应当按照网络安全等级保护制度的要求,履行安全保护义务,保障网络免受干扰、破坏或者未经授权的访问,防止网络数据泄露或者被窃取、篡改。信息系统安全保护等级分为五级,运营使用单位应当定期对信息系统安全等级状况开展等级测评,并履行相应备案手续。

  1. 关键信息基础设施保护

法律首次正式明确了关键信息基础设施的概念,对公共通信和信息服务、能源、交通、水利、金融、公共服务、电子政务等重要行业和领域的关键信息基础设施实行重点保护,要求运营者在网络安全等级保护的基础上,采取技术保护措施和其他必要措施,保障关键信息基础设施安全稳定运行。

  1. 网络信息安全

第四章规定“网络信息安全”,明确网络运营者应当对其收集的用户信息严格保密,建立健全用户信息保护制度。收集、使用个人信息应当遵循合法、正当、必要的原则,公开收集、使用规则,明示收集、使用信息的目的、方式和范围,并经被收集者同意。

  1. 监测预警与应急处置

建立网络安全监测预警和信息通报制度,国家网信部门统筹协调有关部门加*网络安全信息的收集、分析和通报工作,按照规定统一发布网络安全监测预警信息。发生网络安全事件时,应当立即启动应急预案,采取相应处置措施。

  1. 域外管辖与制裁

该法第七十五条规定,境外主体从事攻击、侵入、干扰、破坏等危害我国关键信息基础设施的活动,造成严重后果的,依法追究法律责任;国务院公安部门和有关部门可以决定对该机构、组织、个人采取冻结财产或者其他必要的制裁措施。

12.2、《中华人民共和国数据安全法》

(一)立法背景与定位

《中华人民共和国数据安全法》经第十三届全国人大常委会第二十九次会议表决通过,于2021年9月1日起正式施行,全文共七章五十五条。该法作为我国关于数据安全的首部法律,实现了维护数据安全有法可依、有章可循,标志我国数据安全领域进入有法可依、有规可循的新局面。

该法独立将数据作为保护对象,聚焦数据安全领域的风险隐患,重点完善了数据分类分级保护、数据安全审查、数据风险评估、监测预警和应急处置等多项基本制度,形成了我国数据安全的顶层设计。

(二)主要内容框架

  1. 适用范围

在中华人民共和国境内开展数据处理活动及其安全监管,适用本法。在境外开展数据处理活动,损害中华人民共和国国家安全、公共利益或者公民、组织合法权益的,依法追究法律责任。

  1. 数据分类分级保护制度

这是《数据安全法》的核心亮点之一。根据数据在经济社会发展中的重要程度,以及一旦遭到篡改、破坏、泄露或者非法获取、非法利用,对国家安全、公共利益或者个人、组织合法权益造成的危害程度,对数据实行分类分级保护。数据分为国家核心数据、重要数据和一般数据三类进行保护和管理。关系国家安全、国民经济命脉、重要民生、重大公共利益等数据属于国家核心数据,实行更加严格的管理制度。

3. 数据安全制度体系

该法建立了完整的数据安全制度体系,主要包括:数据安全风险评估、报告、信息共享、监测预警机制;数据安全应急处置机制;数据安全审查制度——对影响或者可能影响国家安全的数据处理活动进行国家安全审查,依法作出的安全审查决定为最终决定。

  1. 数据安全保护义务

明确数据处理者应当依照法律、法规的规定,建立健全全流程数据安全管理制度,组织开展数据安全教育培训,采取相应的技术措施和其他必要措施,保障数据安全。同时,重要数据的处理者应当明确数据安全负责人和管理机构,落实数据安全保护责任。

  1. 政务数据安全与开放

对政务数据安全作出专门规定,要求国家机关委托他人建设、运行、维护电子政务系统,存储、加工政务数据,应当经过严格的批准程序,并应当监督受托方履行相应的数据安全保护义务。同时,推动政务数据开放,构建统一规范、互联互通、安全可控的政务数据开放平台。

  1. 法律责任

《数据安全法》设“法律责任”专章,对不履行数据安全保护义务的行为规定了相应的行政处罚,情节严重的,可处五十万元以上二百万元以下罚款,并可以责令暂停相关业务、停业整顿、吊销相关业务许可证或者吊销营业执照。

12.3、《中华人民共和国个人信息保护法》

(一)立法背景与定位

《中华人民共和国个人信息保护法》经十三届全国人大常委会第三十次会议表决通过,共8章74条,自2021年11月1日起施行。该法坚持和贯彻以人民为中心的法治理念,紧紧围绕规范个人信息处理活动、保障个人信息权益,进一步细化、完善个人信息保护应遵循的原则和个人信息处理规则。

(二)核心制度与亮点

  1. “告知-同意”核心规则

个人信息保护法构建了以“告知-同意”为核心的个人信息处理规则,这是保障个人对其个人信息处理知情权和决定权的重要手段。处理个人信息应当在事先充分告知的前提下取得个人同意,个人信息处理的重要事项发生变更的应当重新向个人告知并取得同意。针对现实生活中的一揽子授权、*制同意等问题,该法特别要求:处理敏感个人信息、向他人提供或公开个人信息、跨境转移个人信息等环节应取得个人的单独同意;个人信息处理者不得过度收集个人信息,不得以个人不同意为由拒绝提供产品或者服务,并赋予个人撤回同意的权利。

  1. 禁止“大数据杀熟”与规范自动化决策

该法明确规定:个人信息处理者利用个人信息进行自动化决策,应当保证决策的透明度和结果公平、公正,不得对个人在交易价格等交易条件上实行不合理的差别待遇。通过自动化决策方式向个人进行信息推送、商业营销,应当同时提供不针对其个人特征的选项,或者向个人提供便捷的拒绝方式。

  1. 严格保护敏感个人信息

该法将生物识别、宗教信仰、特定身份、医疗健康、金融账户、行踪轨迹等信息列为敏感个人信息,要求只有在具有特定的目的和充分的必要性,并采取严格保护措施的情形下,方可处理敏感个人信息,同时应当事前进行影响评估。不满十四周岁未成年人的个人信息也作为敏感个人信息加以特殊保护,处理者应当取得监护人同意并制定专门处理规则。

  1. 规范个人信息跨境流动

该法规定个人信息处理者因业务需要确需向境外提供个人信息的,应当具备安全评估、个人信息保护认证、标准合同等条件之一,并采取必要措施保障境外接收方达到本法规定的保护标准。同时规定,任何国家或者地区在个人信息保护方面对我国采取歧视性禁止、限制或其他类似措施的,我国可以根据实际情况对该国家或者地区对等采取措施。

5. 公共场所人脸识别规制

在公共场所安装图像采集、个人身份识别设备,应当为维护公共安全所必需,遵守国家有关规定,并设置显著的提示标识。所收集的个人图像、身份识别信息只能用于维护公共安全的目的,不得用于其他目的;取得个人单独同意的除外。

  1. 个人权利体系

该法赋予个人在个人信息处理活动中的多项权利,包括知情权、决定权、查阅权、复制权、更正权、删除权、撤回同意权、要求解释权等。

12.4、《关键信息基础设施安全保护条例》(国务院令第745号)

(一)立法背景与定位

2021年7月30日,国务院总理***签署第745号国务院令,公布《关键信息基础设施安全保护条例》(以下简称《条例》),自2021年9月1日起施行。该条例是《网络安全法》的重要配套法规,是在《网络安全法》框架下全面规范关键信息基础设施安全保护的基础性法规,是依法治理关键信息基础设施的纲领性文件,为建立健全关键信息基础设施安全保护体系、提升网络安全防护能力提供了更具有操作性的法律依据。

《条例》以六章共计五十一条的篇幅,涵盖总则、关键信息基础设施认定、运营者责任义务、保障和促进、法律责任和附则。

(二)核心制度与要点

  1. 关键信息基础设施的定义与认定

关键信息基础设施,是指公共通信和信息服务、能源、交通、水利、金融、公共服务、电子政务、国防科技工业等重要行业和领域的,以及其他一旦遭到破坏、丧失功能或者数据泄露,可能严重危害国家安全、国计民生、公共利益的重要网络设施、信息系统等。

认定规则主要考虑三方面因素:网络设施、信息系统等对于本行业、本领域关键核心业务的重要程度;一旦遭到破坏、丧失功能或者数据泄露可能带来的危害程度;对其他行业和领域的关联性影响。

重要行业和领域的主管部门、监督管理部门是负责关键信息基础设施安全保护工作的部门,结合本行业、本领域实际制定认定规则,并组织认定。

  1. 运营者主体责任

《条例》设专章细化运营者义务要求:

一是建立健全网络安全保护制度和责任制,实行“一把手负责制”,明确运营者主要负责人负总责,保障人财物投入。

二是设置专门安全管理机构,履行安全保护职责,参与本单位与网络安全和信息化有关的决策,并对机构负责人和关键岗位人员进行安全背景审查。

三是对关键信息基础设施每年进行网络安全检测和风险评估,及时整改问题并按要求向保护工作部门报送情况。

四是发生重大网络安全事件或者发现重大网络安全威胁时,按规定向保护工作部门、公安机关报告。

五是优先采购安全可信的网络产品和服务,并与提供者签订安全保密协议;可能影响国家安全的,应当按规定通过安全审查。

  1. 监督管理体制

关键信息基础设施安全保护工作由国家网信部门统筹协调,国务院公安部门负责指导监督,国务院电信主管部门和其他有关部门、省级人民政府有关部门在各自职责范围内负责关键信息基础设施的安全保护和监督管理。

12.5、《网络数据安全管理条例》(2025年1月1日施行)

(一)立法背景与定位

《网络数据安全管理条例》(以下简称《条例》)于2024年由国务院发布,自2025年1月1日起施行,共九章64条。这是数据安全管理领域首部行政法规,填补了该领域的法规空白,标志着我国数据安全法规体系的进一步完善。《条例》以《网络安全法》《数据安全法》《个人信息保护法》等法律为依据,旨在规范网络数据处理活动,保障网络数据安全,促进网络数据依法合理有效利用,保护个人、组织的合法权益,维护国家安全和公共利益。

(二)主要内容框架

  1. 适用范围

在境内开展的网络数据处理活动及其安全监督管理适用本条例。在境外处理境内自然人个人信息的活动,符合《个人信息保护法》第三条第二款规定情形的,也适用本条例。

  1. 个人信息保护细化规定

《条例》重点细化了个人信息保护法关于告知、同意、个人行使权利等方面的规定。网络数据处理者在处理个人信息前,通过制定个人信息处理规则的方式依法向个人告知的,该规则应当集中公开展示、易于访问并置于醒目位置,内容明确具体、清晰易懂。对符合条件的信息转移请求,网络数据处理者应当为个人指定的其他网络数据处理者访问、获取有关个人信息提供途径。

3. 重要数据安全保障

明确制定重要数据目录的要求,规定网络数据处理者识别、申报重要数据义务。重要数据的处理者应当明确网络数据安全负责人和网络数据安全管理机构,每年度对其网络数据处理活动开展风险评估,并向省级以上有关主管部门报送风险评估报告。处理1000万人以上个人信息的网络数据处理者,应当遵守处理重要数据的网络数据处理者的相关规定。

  1. 网络数据跨境安全管理

《条例》进一步优化数据跨境流动机制。符合条件的网络数据处理者可以向境外提供个人信息,包括通过国家网信部门组织的数据出境安全评估、经专业机构进行个人信息保护认证、符合个人信息出境标准合同规定等条件。

  1. 网络平台服务提供者义务

设专章规定网络平台服务提供者的网络数据安全义务,明确平台在数据安全风险监测、报告、处置等方面的责任,以及大型网络平台应承担的特殊安全管理要求。

  1. 监督管理与法律责任

明确国家网信部门负责统筹协调,各行业主管部门在各自职责范围内负责网络数据安全监管工作。对违反《条例》规定的行为设定了相应的行政处罚,形成从轻微违法到严重违法的梯度处罚机制。


4、课堂的收获与不足

从一开始搭建蜜网环境,到后来做 SQL 注入、XSS 攻击、缓冲区溢出、恶意代码分析,每一次实践我都跳出了理论的框架,在真实的实验环境里实现攻击和防御。回顾整个实践过程,我最大的收获不是会用了某个工具,而是建立了一套从攻击到防御再到分析的思维框架。

从攻击的角度,我学会了怎样收集目标信息,如DNS 查询、端口扫描、漏洞扫描等、怎样利用协议缺陷和软件漏洞获取权限,如ARP 欺骗、MS08-067、Samba 漏洞、浏览器漏洞、缓冲区溢出等、怎样维持权限如注册表自启、后门植入、C&C 通信等。

从防御的角度,我理解了防火墙的规则设计、入侵检测、代码加固、系统配置等各自的防护层面和配合关系。

从分析的角度,我掌握了怎样逆向一个未知的二进制程序:脱壳、静态分析、动态监控、功能推断,怎样从一份 pcap 文件还原攻击过程:定位主机、识别工具、分析手法、还原时间线。

在学习的过程中,有一些瞬间让我印象很深。比如做信息收集实验时,通过资源监视器很容易就抓到了同学的 IP 和地理位置:那一刻我意识到,在互联网上保护自己的隐私没有那么容易。做 Telnet 抓包分析时,看到 Follow TCP Stream 里显示的密码,我理解了"明文协议不安全"这句话。做 MS08-067 渗透成功、第一次拿到对方 Shell 的时候,看着屏幕上出现的命令行提示符,我想到一个没打补丁的系统是非常脆弱的,让我更加理解了网络安全的重要性。

另一个重要的收获是排查问题的能力。比如网络不通了怎么查:ping 、看 IP 配置、看网关、看防火墙规则、看虚拟网络编辑器。攻击失败了怎么分析:看漏洞版本是否匹配、看载荷方向是否合适、看监听端口是否被占、看目标系统是否打补丁。分析卡住了怎么换方法:Wireshark 太卡换命令行、在线工具打不开换离线工具。这些都不在教程里,都是在一次次出错和排查中学习得来。

然而,在课程的学习中也暴露出我的一些问题和不足之处。首先是在课程的学习中,尽管每次实践也都需要几个小时来完成,但是我对于很多技术点停留在做过了、看到了结果的层面,没有逐一深入的学习,影响了理解的深度。其次,在实践过程中,我对很多工具操作并没有很熟练,还需要在以后进行更加深入的学习和更多的实操训练。

总而言之,通过这门网络攻防实践课程,我收获了很多。虽然未来不一定从事网络安全方面的工作,但在这门课上学到的思维方式:从攻击者的角度去发现弱点、从防御者的角度去设计对策、从分析者的角度去还原真相,这种多视角分析问题的能力,在任何领域都会有用。虽然这门课程结束了,但我以后还会继续关注网络安全与信息安全,保持学习状态,进一步拓宽自己的视野,增长技能。最后,衷心感谢王老师对我们的指导与关心!!


5、参考文献

posted @ 2026-06-03 14:14  G116h6  阅读(57)  评论(0)    收藏  举报