20253919 2025-2026-2 《网络攻防实践》课程总结
一、内容总结
第1次实践 环境搭建
配置靶机、攻击机、蜜网网关
第2次实践 网络信息收集
- 体验查询网址dns及其相关信息,通过截获ip获取其属地
- 学习nmap、Nessus工具的使用
第3次实践 网络嗅探与协议分析
学习并实践tcpdump、Wireshark工具
第4次实践 TCP/IP网络协议攻击
- ARP 缓存欺骗攻击
攻击者发送伪造 ARP 响应报文,篡改目标主机或网关的 ARP 缓存表,将自身 MAC 地址与合法 IP 绑定,从而实现中间人窃听、流量劫持或断网攻击。 - ICMP 重定向攻击
攻击者伪造 ICMP 重定向报文发送给目标主机,诱使其修改路由表,将网络流量转发至攻击者控制的主机,实现流量劫持与信息窃取。 - SYN Flood 攻击
攻击者利用 TCP 三次握手缺陷,大量发送伪造源 IP 的 SYN 包,不回应服务器的 SYN+ACK,导致服务器维持大量半开连接耗尽资源,形成拒绝服务。 - TCP RST 攻击
攻击者嗅探并伪造携带合法序列号的 TCP RST 报文,发送给通信双方,强制中断已建立的 TCP 连接,造成业务异常断开。 - TCP 会话劫持攻击
攻击者通过嗅探获取 TCP 序列号与确认号,伪造合法报文冒充通信一方,直接接管已建立的 TCP 会话,实现未授权操作与数据篡改。
第5次实践 网络安全防范技术
- 学习防火墙设置规则
- 学习snort工具使用
第6次实践 Windows系统安全攻防
- 实践Metasploit windows attacker
Metasploit(简称 MSF)是全球最主流、最强大的开源渗透测试框架,由安全公司 Rapid7 维护,用于合法地发现、验证和利用系统漏洞,是网络安全从业者的必备工具。 - 解码NT系统破解攻击
NT系统指基于 Windows NT 内核的系统,主要包括 Windows NT 4.0、2000、XP、Server 2003,普遍存在大量未修复高危漏洞,是渗透学习经典靶机。
MS08-067(NetAPI 漏洞),通过 445 端口 SMB 服务远程代码执行,可直接获取 SYSTEM 权限。
基本步骤
- 启动 msfconsole
- 加载模块 use exploit/windows/smb/ms08_067_netapi
- 设置目标 IP set RHOSTS 靶机IP
- 设置监听 IP set LHOST 攻击机IP
- 运行攻击 run/exploit
- 在前两个任务基础上,进行演练
第7次实践 Linux系统安全攻防
- 使用Metasploit进行Linux远程渗透攻击
CVE-2007-2447 是 Samba 历史上最知名的高危漏洞之一,因默认关闭配置项且需特定版本,现网暴露面已极低,但在老旧内网 / 工控 / 遗留系统中仍可能遇到。核心风险是认证前的无过滤用户输入直接带入 Shell 执行,防护核心为禁用非必要脚本映射 + 版本升级 + 网络隔离。 - 攻防实践
第8次实践 恶意代码分析实践
- 恶意代码 rada 样本实操任务
先识别样本文件格式、运行平台与加壳类型,完成脱壳操作,再提取程序字符串,最终从源码信息里查出该恶意代码的编写作者。 - Crackme 程序逆向分析任务
在 WinXP 攻击虚拟机中用 IDA Pro 静态 / 动态调试 crackme1、crackme2 程序,破解程序逻辑,找到正确输入内容,触发程序成功输出提示。 - rada 恶意代码深度分析报告任务
全面剖析 rada 恶意样本,梳理文件特征、恶意用途、程序特性、反逆向防护手段,判定恶意代码类别,列举同类恶意工具,同时明确能否溯源作者及溯源所需环境条件。 - Windows2000 僵尸网络流量分析任务
基于 Snort 抓取的蜜罐网络日志流量,弄懂 IRC 协议与僵尸网络基础概念,梳理蜜罐通信的 IRC 服务器、访问僵尸网络主机数、攻击源 IP、攻击者利用的系统漏洞,区分成功与失败攻击并理清攻击原理。
第9次实践 软件安全攻防--缓冲区溢出和Shellcode
对可执行文件 pwn1,目标是通过三种方式运行未正常执行的 getShell 函数及自定义 Shellcode:
- 手工改可执行文件跳转 getShell;
- 利用 Bof 漏洞覆盖返回地址触发 getShell;
- 注入并运行自制 Shellcode。
第10次实践 Web应用程序安全攻防
本次实验包含SQL 注入攻防、XSS 跨站脚本攻防两大核心模块,以实操形式完成漏洞利用与安全防护练习,具体内容如下:
(1)SEED SQL 注入实验
- 基础实操:熟悉库、表结构,练习基础 SQL 查询语句。
- SELECT 注入:利用登录页面漏洞,绕过密码验证实现非法登录。
- UPDATE 注入:通过个人信息更新页面漏洞,篡改数据库现有数据。
- 安全加固:优化代码实现漏洞修复,抵御 SQL 注入攻击。
(2)SEED Elgg 平台 XSS 攻防实验 - 基础弹窗:在个人主页嵌入 JS 代码,实现页面自动弹窗。
- Cookie 展示:编写脚本读取并弹窗显示访客 Cookie。
- Cookie 窃取:构造恶意脚本,将受害者 Cookie 转发至攻击方。
- 自动化操作:借助 JS 脚本,自动完成添加好友、篡改用户资料等操作。
- 高级攻击:制作可自动传播的 XSS 蠕虫,达成批量感染用户的效果。
- 漏洞防护:部署防御策略,修复页面 XSS 安全漏洞
第11次实践 浏览器安全攻防实践
- Web 浏览器渗透攻击:借助 Metasploit 的 MS06-014 模块配置载荷与参数生成恶意网页木马,靶机浏览器访问该 URL 触发攻击,攻击机通过建立的远程会话远程操控靶机执行命令。
- 网页木马取证分析:从 start.html 逐级获取后续文件地址,对地址做小写 32 位 MD5 哈希,按哈希值下载对应文件;网页 / 脚本持续解密,二进制文件开展反汇编或动态调试,直至全部文件分析完毕。
- 浏览器渗透攻防对抗:攻击方构造两款不同浏览器漏洞的混淆渗透代码,打包为钓鱼链接通过邮件发送;防守方提取链接、解混淆还原原始攻击代码,定位目标浏览器及对应漏洞。
二、最喜欢的实践
我最喜欢第10次作业。第10次作业中通过在个人信息界面输入恶意代码,就能让其他访问者中招。这让我觉得很新奇,原来注入恶意代码这么容易,也觉得很恐怖,不经意间访问别人的博客,就能被下毒。这才是真正的网络安全知识!也因此,这门课充分调动起我的探索欲,激发了我后续深入学习 Web 安全防护、漏洞修复技术的浓厚兴趣。
三、知识总结
一、攻防环境搭建【第1次作业】
课程学习从实验环境搭建起步。一套完整的攻防实验环境包含四大核心组件:
- 攻击机采用 Kali Linux,可直接执行各类攻击操作
- 靶机为预置未修复漏洞的主机系统,如 Windows XP、Metasploitable Ubuntu,用于验证攻击手段的有效性
- SEED 虚拟机内置缓冲区溢出、XSS 等原理性实验环境
- 蜜网与蜜罐系统则作为诱捕监测体系,用于捕获、分析攻击行为
二、网络信息收集【第2次作业】
- 通过搜索引擎高级语法、Whois 域名查询、路由追踪等公开渠道,在不与目标系统直接交互的前提下,梳理目标的 IP 地址范围、域名体系与大致拓扑结构,最大限度降低被检测风险。
- 通过向目标发送探测数据包,依次完成主机存活检测、端口开放情况探测、系统与服务版本识别、已知漏洞排查四项核心工作。主要学习了Nmap和Nessus两个工具的使用,其中 Nmap 用于全流程探测,Nessus 实现漏洞深度检测。
三、网络嗅探与协议分析【第3次作业】
通过 Telnet 协议分析实验,我直观认识到明文传输协议的安全风险:用户名与口令直接封装在报文数据字段中,抓包即可完整获取,这也是该协议被 SSH 等加密协议逐步替代的核心原因。此外,通过对 pcap 格式的流量文件进行取证分析,可反向推导攻击主机 IP、扫描工具类型、扫描方式、目标开放端口与攻击端操作系统,仅依靠流量数据即可还原攻击全貌。
四、TCP/IP 协议栈攻击【第4次作业】
- 链路层的 ARP 缓存欺骗攻击,通过伪造 ARP 响应篡改 IP 与 MAC 地址的映射关系,可实现流量劫持
- 网络层的 ICMP 重定向攻击,通过伪造网关身份诱导目标修改路由表,同样可达成流量劫持效果
- 传输层的 SYN Flood 攻击利用 TCP 三次握手的设计缺陷,耗尽目标半连接队列以实现拒绝服务
- 可强制中断会话的 TCP RST 攻击、可冒充合法用户的 TCP 会话劫持攻击。
五、网络安全防范技术【第5次作业】
iptables 是 Linux 系统内核级的包过滤防火墙,通过规则链控制数据包的进出,是主机层面的基础防护手段;Snort 作为开源入侵检测系统(IDS),基于特征规则匹配攻击行为,采用旁路部署模式,仅承担威胁检测与告警职能,不主动阻断流量。而入侵防御系统(IPS)在 IDS 的基础上发展而来,采用串接部署方式,检测到攻击后可实时阻断连接。
六、系统攻防【第6、7次作业】
Windows 系统攻防
Metasploit 框架将漏洞利用模块、载荷模块、辅助模块与后渗透模块分类封装,降低了渗透测试的操作门槛。以 MS17-010 为例,完成目标探测后仅需简单配置即可获取系统控制权。
Linux 系统攻防
Samba 服务 Usermap_script 漏洞是用户名映射脚本未对输入内容做安全校验,攻击者可无授权远程执行命令并直接获取 root 权限。该实验也让我厘清了正向 Shell 与反向 Shell 的差异:正向 Shell 由攻击机主动连接靶机,易被防火墙拦截;反向 Shell 由靶机主动回连攻击机,穿透性更强。同时,通过 Wireshark 可完整还原攻击链路,通过 Snort 可精准识别漏洞利用行为与反向连接。
七、恶意代码分析【第8次作业】
以 RaDa 恶意程序为样本,其会访问指定内网地址下载指令文件,修改注册表实现开机自启动,并可执行 DDoS 攻击等恶意操作。恶意代码分析分为两类核心方法:静态分析不运行程序,通过文件识别、字符串提取、反汇编等手段研判代码逻辑;动态分析则在隔离环境中运行样本,监控其进程行为、网络连接与系统修改,完整还原恶意行为链路。同时我也了解了加壳与脱壳的基础概念,以及 IRC 协议在僵尸网络中作为控制信道的应用原理。
八、软件与 Web 安全【第9,10,11次作业】
(一)缓冲区溢出与 Shellcode 利用
一是手工修改可执行文件:借助 objdump 反汇编定位目标函数与 call 指令,通过 xxd 修改指令相对偏移,强制程序跳转至目标函数执行,掌握机器码跳转的计算规则。
二是栈溢出覆盖返回地址:分析函数栈帧结构计算缓冲区与返回地址的偏移量,经 gdb 调试验证后,覆盖返回地址以劫持程序执行流。
三是自定义 Shellcode 注入:关闭系统 ASLR 地址随机化、开启栈可执行权限,构造Payload,实现任意代码注入执行。
(二)Web 应用程序安全攻防
SQL 注入漏洞
漏洞原理为用户输入直接拼接至 SQL 语句导致语义被篡改,包含两类核心场景:SELECT 型注入用于绕过登录、窃取敏感数据;UPDATE 型注入用于越权篡改系统信息。
XSS 跨站脚本漏洞
漏洞原理为未过滤的用户脚本在浏览器端执行。恶意代码存入数据库后可触发全站危害,具备 Cookie 窃取、会话劫持、XSS 蠕虫传播等攻击能力。
(三)浏览器安全攻防实践
攻击端:基于 Metasploit 的 MS06-014 IE 漏洞模块,配置反向 Shell 载荷生成恶意 URL,靶机访问后即可获取远程命令行控制权。
取证端:掌握网页木马分层分析方法,拆解 iframe 嵌套加载链路,解密混淆脚本还原漏洞利用链,对投递的恶意可执行文件开展哈希校验与恶意行为分析。
四、课堂的收获与不足
这段时间学下来,最大的感受就是:网络安全永远是攻防一体的,不懂攻击就做不好防御,很多防御手段都是跟着攻击手段迭代出来的。当然我现在也只是刚入门,很多内容还只是跟着实验步骤走,比如 shellcode 编写、逆向分析、高级漏洞利用这些,都还需要大量练习才能吃透。这门课也算给我打开了网络安全的大门,后面还有好多东西值得慢慢挖。

浙公网安备 33010602011771号