[20212901 薛德凡2021-2022-2 《网络攻防实践》第五次作业 ]

[20212901 薛德凡2021-2022-2 《网络攻防实践》第五次作业 ]

一、实践内容

任务要求:

(1)配置Linux操作系统平台上的iptables,或者Windows操作系统平台上的个人防火墙,完成如下功能,并进行测试:

过滤ICMP数据包,使得主机不接收Ping包;

只允许特定IP地址(如局域网中的Linux攻击机192.168.200.3),访问主机的某一网络服务(如FTP、HTTP、SMB),而其他的IP地址(如Windows攻击机192. 168.200.4)无法访问
(2)动手实践:Snort

使用Snort对给定pcap文件(第4章中的解码网络扫描任一个pcap文件,之前的实践已经提供了,请在云班课中下载)进行入侵检测,并对检测出的攻击进行说明。在BT4 Linux攻击机或Windows Attacker攻击机上使用Snort,对给定的pcap文件进行入侵检测,获得报警日志。

Snort运行命令提示如下:

  • ①从离线的pcap文件读取网络日志数据源
  • ②在snort.conf中配置明文输出报警日志文件
  • ③指定报警日志log目录(或缺省log目录=/var/log/snort)

(3)分析配置规则

分析虚拟网络攻防环境中蜜网网关的防火墙和IDS/IPS配置规则,说明蜜网网关是如何利用防火墙和入侵检测技术完成其攻击数据捕获和控制需求的。

二、实验相关知识

1、防火墙技术的功能主要在于及时发现并处理计算机网络运行时可能存在的安全风险、数据传输等问题,其中处理措施包括隔离与保护,同时可对计算机网络安全当中的各项操作实施记录与检测,以确保计算机网络运行的安全性,保障用户资料与信息的完整性,为用户提供更好、更安全的计算机网络使用体验。

防火墙

2、Snort能够对网络上的数据包进行抓包分析,但区别于其它嗅探器的是,它能根据所定义的规则进行响应及处理。Snort 通过对获取的数据包,进行各规则的分析后,根据规则链,可采取Activation(报警并启动另外一个动态规则链)、Dynamic(由其它的规则包调用)、Alert(报警),Pass(忽略),Log(不报警但记录网络流量)五种响应的机制。Snort有数据包嗅探,数据包分析,数据包检测,响应处理等多种功能,每个模块实现不同的功能,各模块都是用插件的方式和Snort相结合,功能扩展方便。例如,预处理插件的功能就是在规则匹配误用检测之前运行,完成TIP碎片重组,http解码,telnet解码等功能,处理插件完成检查协议各字段,关闭连接,攻击响应等功能,输出插件将得理后的各种情况以日志或警告的方式输出。

工作过程

三、实验内容

1、实验各主机ip设置

主机 IP
kali 192.168.200.10
WinXPattcker 192.168.200.4
Seed Ubuntu 192.168.200.9
Linux Metaolitable 192.168.200.132

2、防火墙配置

任务要求:配置Linux操作系统平台上的iptables和Windows操作系统平台上的个人防火墙

Linux操作系统平台

(1)过滤ICMP数据包,使主机不接受ping包

在kali虚拟机中使用sudo iptables -L命令查看所有的规则,其中均为默认规则:

image-20220413153445620

测试kali攻击机与WinXPattcker的连通性

image-20220413153924335

在kali中输入sudo iptables -A INPUT -p icmp -j DROP,屏蔽对应icmp数据包

image-20220413154106758

在kali中输入sudo iptables -L查看新的规则,发现其中包含了丢弃icmp的规则

image-20220413154228139

此时再次测试kali与WinXPattcker的连通性,发现无法ping通

image-20220413154318663

在kali中打开wireshark捕捉对应数据包,发现其中包含icmp说明数据包发送成功

image-20220413154447233

(2)只允许特定IP地址,访问主机的某一网络服务(如FTP、HTTP、SMB),而其他的IP地址无法访问

​ 在WinXPattacker中使用命令telnet 192.168.200.9对seedUbuntu进行telnet连接

image-20220413160200138

​ 在kali中使用命令telnet 192.168.200.9对seedUbuntu进行telnet连接

image-20220413155253951

在SEED Ubuntu中输入命令iptables -P INPUT DROP,规定该主机丢弃所有数据包

image-20220413155818768

此时kali无法对SeedUbuntu建立telnet连接

image-20220413155838883

WinXPattacker也无法对SeedUbuntu建立telnet连接

image-20220413160136557

在SeedUbuntu中使用命令iptables -A INPUT -p tcp -s 192.168.200.10 -j ACCEPT

image-20220413160321546

使用命令iptables -L查看当前的规则

image-20220413160356468

此时在kali中再次与SeedUbuntu建立telnet连接,发现连接成功

image-20220413160542200

而此时由于规则中不包含Winxp的ip,此时Winxp无法与SeedUbuntu建立telnet连接

image-20220413160612005

Windows操作系统平台

(1)过滤ICMP数据包,使主机不接受ping包

打开Winxp中的Windows防火墙,将ICMP中的允许传入回显请求关闭

image-20220413162505035

此时kali无法再ping Winxp

image-20220413162544554

(2)只允许特定IP地址,访问主机的某一网络服务(Telnet),而其他的IP地址无法访问

首先在kali中使用命令telnet 192.168.200.4对Winxp进行telnet连接,发现连接成功

image-20220413164328419

在SeedUbuntu中使用命令telnet 192.168.200.4对Winxp进行telnet连接,发现连接成功

image-20220413164418103

在控制面板中选择管理工具,点击其中的本地安全策略。

image-20220413164934866

选择创建IP安全策略

image-20220413165029350

输入安全策略的名称:限制固定ip访问

image-20220413165137778

选择此处添加

image-20220413165257655

接下来一路选择默认,在此处点击添加

image-20220413165505629

输入对应名称

image-20220413165542171

此处选择TCP

image-20220413165813190

此处到此端口输入23

image-20220413165829193

可以看到此处已经有刚刚输入的筛选器

image-20220413170127176

此处选择添加

image-20220413170109815

此处添加一个阻止

image-20220413170207553

此处显示该策略已指派

image-20220413171811212

在kali中尝试对Winxp建立telnet连接,发现无法成功

image-20220413171742747

在SeedUbuntu中尝试对Winxp建立telnet连接,发现无法成功

image-20220413171922685

新建一个ip筛选列表,其中源ip为kali攻击机的ip

image-20220413172148764

image-20220413172110416

编辑结果如图所示:

image-20220413172227544

接下来步骤与上文类似,此处选择允许kali

image-20220413172340043

此处选择许可

image-20220413172405569

安全策略选择许可的kali

image-20220413172533123

在kali处建立与Winxp的telnet连接,发现连接成功

image-20220413172519207

而此时SeedUbuntu无法与Winxp建立telnet连接

image-20220413172804600

3、动手实践:Snort

使用snort -c /etc/snort/snort.conf -r /listen.pcap -K ascii命令,查看对用输出成果

image-20220413174233340

image-20220413174248891

包分布如下:其中大部分为TCP数据包,也包含少量UDP包

image-20220413174308028

进入/var/log/snort目录打开其中alert文件,可以发现其中包含多种攻击由nmap发起,例如DDOS,其中源ip为172.31.4.178,目的ip为172.31.4.188。

image-20220413174641805

3、分析配置规则

在蜜罐中输入vim /etc/init.d/rc.firewall查看其中的黑名单,白名单以及防护名单

image-20220413175552571

在蜜罐中输入iptables -t filter -L | more查看其中的规则列表

image-20220413175719362

image-20220413175743251

在蜜罐中输入vim /etc/init.d/snortd查看其中的snort的相关参数,包括默认使用eth0、使用二进制模式保存log文件等:

image-20220413175916388

image-20220413175934487

在蜜罐中输入vim /etc/init.d/hw-snort_inline查看Snort_inline运行时参数

image-20220413180041098

在蜜罐中输入chkconfig --list | grep 查看当前蜜罐对应服务是否开启

image-20220413180151807

四、学习中遇到的问题及解决

问题1:kali和seedubuntu无法对windows开启telnet服务

问题1解决方案:在windows平台中要开启telnet服务。开启前telnet服务默认禁止,其余主机无法与其建立连接。

五、实践总结

本次实验Winxp防火墙部分的配置相对来说比较复杂,步骤繁多,我花费了比较久的时间完成。而各种配置文件的代码层面让我对防火墙,入侵检测等有了更深理解。

posted @ 2022-04-16 10:51  纯蓝色111  阅读(47)  评论(0编辑  收藏  举报