# 20232827 2022-2023-2 《网络攻防实践》实践五报告

1.实践内容

一、防火墙配置(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配置规则,说明蜜网网关是如何利用防火墙和入侵检测技术完成其攻击数据捕获和控制需求的。

2.实践过程

2.1在虚拟机Ubuntu(192.168.200.3)中ping Kali Linux(192.168.200.5),此时可以ping通。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在Kali中输入命令 iptables -L,查看默认规则
在这里插入图片描述
在Kali中执行 iptables -A INPUT -p icmp -j DROP 命令,使主机不接收ICMP包
在这里插入图片描述

再次通过iptables -L,查看规则,发现多了一天icmp针对任何位置不允许访问的规则
在这里插入图片描述
此时回到Ubuntu中尝试ping Kali,发现无法ping通
在这里插入图片描述
在Kali中执行命令 iptables -D INPUT -p icmp -j DROP,除去刚才的过滤规则
在这里插入图片描述
此时再回到Ubuntu中,可以ping通Kali
在这里插入图片描述
2.1.2 只允许特定IP地址访问主机的某一网络服务
在本次实验中实现只允许Kali(192.168.200.5)访问Ubuntu(192.168.200.3) 的telnet

在Kali中输入命令 telnet 192.168.200.3 ,连接Ubuntu的telnet
在这里插入图片描述
在Win2虚拟机中输入命令 telnet 192.168.200.3,使Win2k与Ubuntu进行telnet连接,此时也可以连接
在这里插入图片描述
在Ubuntu中输入命令 iptables -P INPUT DROP 使所有数据包都无法流入
在这里插入图片描述
此时在Kali中再次尝试与Ubuntu进行连接,发现无法连接
在这里插入图片描述
在Ubuntu中输入命令 iptables -A INPUT -p tcp -s 192.168.200.5 -j ACCEPT
在这里插入图片描述

此时返回Kali,发现可以通过telnet连接Ubuntu
在这里插入图片描述
在Win2中尝试telnet连接Ubuntu,发现无法连接成功
在这里插入图片描述
最后,在Ubuntu中输入命令 iptables -F 和 iptables -P INPUT ACCEPT,恢复最初的状态。
在这里插入图片描述
此时win2k也能连接成功了!
2.2、动手实践 Snort
在Kali中使用命令 snort -r /home/kali/Downloads/listen.pcap -c /etc/snort/snort.conf -K ascii 对之前实验中的listen.pacp进行入侵检测 (-c 表示选择snort配置文件,-r 表示从pcap格式的文件中读取数据包,-K ascii 用于指定输出日志文件为ASCII编码)
在这里插入图片描述

报警数据10条:
在这里插入图片描述

数据流统计如图:

在这里插入图片描述
此时snort在默认目录生成一个日志文件,进入报警日志目录 cd /var/log/snort
在这里插入图片描述

在这里插入图片描述
2.3分析配置规则
(1)先su -进入管理员模式
查看防火墙配置的命令 vim /etc/init.d/rc.firewall
在这里插入图片描述
start函数:
在这里插入图片描述
creat_chains()函数:
在这里插入图片描述
(2)获取IPTables的实际规则列表、snort和snort_line的实际执行参数
输入iptables -L来查看规则列表,如下图:
在这里插入图片描述
(3)通过 vim /etc/init.d/snortd 打开Snort脚本文件,查看相关的运行参数,可以分别看到一些参数的选项,
包括实际运行时候的参数。学习一些snort的指令后进行分析,譬如在指定网卡接口后,如果没有其他的参数,
将按照默认参数运行。如默认不开启-A模式,使用默认目录的config文件,默认使用eth0、使用二进制模式保存log文件等,如下图:

在这里插入图片描述
(4)vim /etc/init.d/hw-snort_inline可以看到Snort_inline运行时参数,-D表示Daemon模式,
-c表示读取config文件,-Q表示使用QUEUE模式,-l表示输出log文件的目录,-t表示改变程序执行时所参考的根目录位置,如下图:
在这里插入图片描述
(5)防火墙、NIDS、NIPS是如何启动
使用chkconfig --list|grep snort命令来对linux上运行的服务进行查询,可以发现NIDS的0~6都是off,说明是需要手动启动的,
而防火墙和NIPS不全是off,是跟随系统启动的。
在这里插入图片描述
(6)snort规则的升级方式
我们使用命令vim /etc/honeywall.conf打开配置文件,找到update variables,可以看到其值为no,则表示不自动更新,如下图:
在这里插入图片描述

3.学习中遇到的问题及解决

  • 问题1:在kali中snort不好使,会报错
  • 问题1解决方案:在ubuntu中做这个实验
    其他的还都挺顺利的!

4.实践总结

本次实验通过配置防火墙实现了对网络流量的过滤和限制,包括禁止接收Ping包和限制特定IP地址的访问权限,增强了系统的安全性。使用Snort进行入侵检测,从离线的pcap文件读取网络日志数据源,并配置明文输出报警日志文件,有效地监测到了可能的攻击行为。最后,分析了蜜网网关利用防火墙和IDS/IPS技术完成对攻击数据的捕获和控制,强调了防火墙和入侵检测技术在网络安全中的重要性和作用。

参考资料

前人的博客

  • https://mbd.baidu.com/ma/s/HhC5JtvU
    -https://www.cnblogs.com/panchenglei/p/16131450.html
  • 17
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值