20252905 2025-2026-2 《网络攻防实践》第五周作业
20252905 2025-2026-2 《网络攻防实践》第五周作业
一、防火墙配置(IP地址仅供参考,以实际为准)
任务要求:配置Linux操作系统平台上的iptables,或者Windows操作系统平台上的个人防火墙,完成如下功能,并进行测试:
(1)过滤ICMP数据包,使得主机不接收Ping包;
(2)只允许特定IP地址(如局域网中的Linux攻击机192.168.200.3),访问主机的某一网络服务(如FTP、HTTP、SMB),而其他的IP地址(如Windows攻击机192. 168.200.4)无法访问
二、动手实践:Snort
使用Snort对给定pcap文件(第4章中的解码网络扫描任一个pcap文件,之前的实践已经提供了,请在学习通中下载)进行入侵检测,并对检测出的攻击进行说明。在BT4 Linux攻击机或Windows Attacker攻击机上使用Snort,对给定的pcap文件进行入侵检测,获得报警日志。
Snort运行命令提示如下:
①从离线的pcap文件读取网络日志数据源
②在snort.conf中配置明文输出报警日志文件
③指定报警日志log目录(或缺省log目录=/var/log/snort)
三、分析配置规则
分析虚拟网络攻防环境中蜜网网关的防火墙和IDS/IPS配置规则,说明蜜网网关是如何利用防火墙和入侵检测技术完成其攻击数据捕获和控制需求的。
1.知识点梳理与总结
| 实验模块 | 核心知识点 |
|---|---|
| 防火墙配置 | ① 通过过滤ICMP echo-request报文,使主机不响应ping命令 ② 设置默认拒绝入站流量,再单独开放规则:只允许特定IP访问特定端口(如HTTP的80端口),其他IP一律拒绝 |
| Snort入侵检测 | ① Snort可读取离线pcap文件进行事后攻击分析 ② 在配置文件中设置输出格式(如alert_fast),报警日志写入指定文件 ③ 报警日志默认存放在/var/log/snort目录 |
| 蜜网网关(防火墙+IDS/IPS) | ① 防火墙(数据控制):限制攻击者从蜜罐主动外联,防止蜜罐成为攻击跳板 ② IDS/IPS(数据捕获):捕获攻击流量、记录攻击特征,供后续分析 ③ 核心目的:让攻击者进得来、出不去、行为全被记下来 |
2.实验过程
准备工作
查看kali的IP地址为192.168.200.3

查看seed的ip地址为192.168.200.4

用kali和seed互相ping测试连通性


查看MetaUbuntu的IP地址为192.168.200.123

查看winA的IP地址为192.168.200.2

任务1:火墙配置:过滤ICMP数据包,使得主机不接收Ping包;
(1)在在kali中输入iptables -L,查看当前防火墙配置规则:

(2)添加规则,在kali中输入sudo iptables -A INPUT -p icmp -j DROP,添加一条新的规则,完成后使用sudo iptables -L查看到已经添加成功
这条规则会导致丢弃所有进入本机的 ICMP 数据包(包括 ping 请求和响应)

(3)在Seed中再次ping,发现无法ping通,是由于刚才的指令过滤了ICMP数据包,使主机不接受Ping包

(4)删除该规则sudo iptables -D INPUT -p icmp -j DROP

(5)返回Seed再次测试,发现可以ping到,任务1完成

任务2:只允许特定IP地址(如局域网中的Linux攻击机192.168.200.3),访问主机的某一网络服务(如FTP、HTTP、SMB),而其他的IP地址(如Windows攻击机192. 168.200.2)无法访问
(1)在Kali中使用指令对Metasploitable进行连接

(2)在winXP中对Metasploitable进行连接

(3)在Metasploitable中输入,sudo iptables -P INPUT DROP

(4)发现连接失败


(5)meta中允许kali连接,输入sudo iptables -A INPUT -s 192.168.200.3 -j ACCEPT,设置了一个对kali的IP地址的白名单

(6)再测试到Kali连接,winxp仍旧不行,实验完成


任务3:使用snort对listen.pcap文件进行入侵检测和日志分析
(1)在Kali中输入指令snort -c /etc/snort/snort.lua -r ./listen.pcap -l /var/log/snort -A fast


(2)分析得知,Snort 成功分析了 135,580 个网络数据包(从 listen.pcap 抓包文件读取)
任务4:分析配置规则
(1)在Honeywall中登录账号,使用su -提升权限后输入vim /etc/init.d/rc.firewall指令进行查看防火墙文件,可查看到黑白名单和防护名单的链

(2)输入指令 cd /etc/init.d 进入到init.d,输入指令 iptables -t filter -L 观察规则列表。

(3)输入指令:vim /etc/init.d/snortd,可以看到它是默认使用默认目录下的snort规则,监听网卡为eth0,默认储存路径为/var/log/snort

(4)输入命令vim /etc/init.d/hw-snort_inline,打开snort_inline文件查看实际执行参数:

(5)输入指令 chkconfig --list | grep iptables 观察发现防火墙服务是开启的,chkconfig --list | grep snort 观察发现snort服务是开启的。


(6)输入指令 vim /etc/honeywall.conf,可以发现更新方式,发现rule 和 snort_restart都是NO,snort的rule默认不自动更新,snort也不自动重启

总结:通过honeywall的防火墙iptables,入侵检测系统snort,服务管理与自动更新系统确认了蜜罐网关的入侵检测与防御是如何配置和运行
3.学习中遇到的问题及解决
-问题1:在honeywall输入iptables怎么都没反应,安装提示apt没有

解决方案:是环境变量的问题,输入/sbin/iptables -L就有了
3.学习感悟、思考等
一开始学习了防火墙的入侵检测策略和白名单系统,后来在honeywall上学习了如何对整套防御体系进行观察和测试。这一系列操作的核心目的,是对 Honeywall 蜜罐网关的入侵检测与防御系统进行配置核查与架构分析。具体来说,你通过查看防火墙脚本和规则列表,确认了系统利用 iptables 创建了黑白名单链,并能将可疑流量(如 TCP、UDP)通过 QUEUE 目标重定向给 Snort 进行深度检测;通过检查 Snort 相关脚本和 chkconfig 服务状态,明确了其监听接口、日志路径以及防火墙和 Snort 服务均为开机自启,确保了防御机制的持续运行;最后通过查看主配置文件,发现规则自动更新和 Snort 自动重启功能被关闭,指出了需要手动维护的运维风险。总之,这一过程完整地揭示了 Honeywall 从流量过滤、入侵检测到服务管理的“三道防线”协同工作模式及其当前配置状态。
参考资料
教学视频
浙公网安备 33010602011771号