20242830 2024-2025-2 《网络攻防实践》第五周作业
20242830 2024-2025-2 《网络攻防实践》第五周作业
一、知识点梳理与总结
本次实验旨在深入理解网络安全防范技术,通过配置Linux操作系统平台上的iptables或Windows操作系统平台上的个人防火墙,掌握访问控制和数据包过滤的基本原理与操作方法。同时,通过使用snort工具进行流量监测和入侵检测,增强对网络攻击的识别与防御能力。
学会配置防火墙规则,以实现对特定类型数据包(如ICMP数据包)的过滤,从而增强主机的安全性,防止未经授权的访问和潜在的网络攻击。掌握如何限制特定IP地址对主机网络服务的访问权限,确保只有可信的设备能够访问关键服务,如FTP、HTTP、SMB等,从而降低网络服务被恶意利用的风险。熟悉snort的使用方法,能够利用其对网络流量进行实时监测和分析,及时发现并预警可能的网络攻击行为,提高网络环境的整体安全性。
1. 实验环境
-
运行环境:VMware、Windows
-
虚拟机选择:攻击机——kali;攻击机——winXP
-
kali:192.168.200.5
-
winxp:192.168.200.4
-
Metasploitable:192.168.200.123
2. 实验内容与原理
-
防火墙通过伪造ARP请求,将目标主机的IP地址与攻击者的MAC地址绑定,使目标主机发给其他主机的数据包先经过攻击者,从而实现中间人攻击,可以拦截、篡改或伪造数据。
-
包过滤是在一定程度上可以对数据包中的内容进行过滤,如过滤掉包含特定关键词的网页等,能够识别和防范一些常见的网络攻击,如IP欺骗、端口扫描。如果数据包符合任何一个允许规则,则被放行;如果符合任何一个禁止规则,则被阻止或丢弃;如果数据包既不符合允许规则也不符合禁止规则,那么根据防火墙的默认策略处理。
-
代理技术则是攻击者向目标服务器发送大量的伪造的SYN请求,使服务器的资源被耗尽,无法正常响应合法用户的请求,从而实现拒绝服务攻击。也可以对网络流量进行内容过滤,以阻止不良或恶意内容的访问。通过配置规则和政策,代理服务器可以屏蔽特定的网站、广告、恶意软件和其他不良内容。
-
TCP会话劫持攻击则是攻击者获取目标通信双方的会话信息,如序列号等,插入到通信中,冒充一方进行数据交互,从而实现会话劫持,获取敏感信息或进行恶意操作。
| 相关技术 | 主要功能 | 其他 |
|---|---|---|
| 防火墙 | 访问控制、网络地址转换(NAT)、内容过滤、攻击防范、VPN支持、日志记录与审计 | 防火墙分类有很多,包过滤防火墙、状态检测防火墙、下一代防火墙 |
| 包过滤 | VPN支持、攻击防范、网络地址转换 | 在网络层实现的防火墙技术,其工作原理是利用路由器或防火墙等网络设备对网络上流入流出的IP数据包进行监视和过滤 |
| 代理技术 | 隐私保护功能、内容过滤功能、负载均衡功能、网络加速功能、访问控制功能 | 代理服务器可以记录和分析网络流量和用户行为。通过收集和分析日志数据,管理员可以了解网络的使用情况、性能瓶颈和安全事件 |
- linux开源防火墙:iptables 是 Linux 系统内置的防火墙工具,可以在内核层面进行数据包的过滤和转发控制。它功能强大,规则灵活,但配置相对复杂。
| 规则表 | 规则链 | 处理动作 |
|---|---|---|
| filter | INPUT、OUTPUT、FORWARD | 过滤、接受等 |
| nat | PREROUTING、POSTROUTING、OUTPUT | DNAT、NATP等 |
| mangle | 以上五个规则链 | 特殊目的的头部数据包修改 |
二、实验过程
1.防火墙配置任务一:配置Linux操作系统平台上的iptables,或者Windows操作系统平台上的个人防火墙,完成如下功能,并进行测试
2.在kali 虚拟机中配置防火墙
1.输入以下代码,可以看见我在之前的实验中调整过kali的防火墙配置,如下图:
iptables -L

2. 过滤ICMP数据包,使得主机不接受ping包
iptables -A INPUT -p icmp -j DROP
- 先测试winxp与kali的连通性

- 更改kali虚拟机防火墙配置


- 再次在winxp里进行ping操作,发现已经ping不通了

3. 特定IP地址访问主机
-
用两个攻击机分别访问Meta靶机的telnet服务
telnet 192.168.200.123


- 在靶机里面输入
iptables -P INPUT DROP

- 回到攻击机里再次使用telnet服务,发现用不了了

- 在靶机输入以下指令,使得特定的主机能够使用telnet服务
iptables -A INPUT -p tcp -s 192.168.200.5 -j ACCEPT

- 在kali虚拟机里再进行测试


4.静态包过滤与报文状态检查,对路由转发数据进行检查
-
在kali机里面输入以下命令,并查看:
iptables -t filter -A FORWARD -s 192.168.1.0/24 -d 192.168.1.0/24 -j ACCEPT

5.报文状态检查(动态包过滤)
- 输入以下代码:
iptables -t filter -A FORWARD -d 192.168.200.7 -m --state NEW -j ACCEPT

- 允许已建立网络连接和相关网络连接通过防火墙
iptables -t filter -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

6.SNAT、DNAT机制实现,将通过路由转发的网络连接的源IP地址和目的地址都改为1.2.3.4
iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 1.2.3.4
iptables -t nat -A PREROUTING -i eth1 -j DNAT --to 1.2.3.4

3.任务二:Snort入侵检测
1.使用snort对listen.pcap文件进行入侵检测
snort -r /home/kali/listen.pcap -c /etc/snort/snort.conf -K ascii

2. 打开kali,输入以下代码,并且查看alert
vim /var/log/snort

三、学习中遇到的问题及解决
- 问题1:使用telnet对靶机进行连接失败。

问题1解决方案:因为我发现攻击机和靶机并不在一个子网内,我之前做实验为了能连上外网,对子网掩码进行了更改,所以现在ping不通,并且要保证两台主机在同一个网段内才可以。

四、学习感悟与思考
在本次网络安全防范技术实验中,成功实现了以下功能,通过配置iptables或个人防火墙规则,主机成功屏蔽了ICMP数据包,不再接收Ping包,有效防止了外部网络对主机的简单探测。仅允许局域网中的Linux攻击机访问主机的指定网络服务,而其他IP地址,如Windows攻击机192.168.200.4的访问请求均被拒绝,实现了对网络服务访问的精细管控。利用snort工具对网络流量进行实时监测,能够捕获并分析相关的网络数据包,及时发现异常流量和潜在的攻击行为,为网络安全防护提供了有力的技术支持。
我将课堂上学到的网络安全理论知识应用到实际的实验操作中,加深了对这些概念的理解和掌握,明白了理论知识在实际网络环境中的具体实现方式和应用场景。熟练掌握了iptables或个人防火墙的配置方法,以及snort工具的使用技巧。学会了如何根据实际需求制定合理的防火墙策略,如何解读snort的监测结果,从而能够更好地应对现实中的网络安全威胁,提升了自身的网络安全技术水平。

浙公网安备 33010602011771号