当前位置: 首页 > news >正文

20252821 2025-2026-2 《网络攻防实践》第5周作业

20252821 2025-2026-2 《网络攻防实践》第5周作业

20252821 2025-2026-2 《网络攻防实践》第5周作业

1.实践内容

1.1 实验核心目的

通过动手配置防火墙、运行入侵检测工具和分析蜜网防护机制,掌握网络安全防御中的“访问控制、攻击检测、诱捕分析”三大核心技术,理解如何在实际环境中保护主机、识别攻击流量并捕获攻击数据。

1.2 防火墙配置相关知识点

  • iptables基本概念:表(filter、nat、mangle等)、链(INPUT、OUTPUT、FORWARD)、规则匹配与动作(ACCEPT、DROP、REJECT、LOG)。
  • ICMP协议过滤:ICMP报文类型(如Echo Request/Echo Reply),通过--icmp-type匹配特定类型,实现禁止ping(丢弃echo-request)。
  • 基于IP地址的访问控制:使用-s指定源IP地址,结合-d目标IP,实现仅允许特定IP访问特定服务。
  • 网络服务端口匹配:使用-p tcp --dport指定端口(如FTP 21、HTTP 80、SMB 445),实现服务级访问限制。
  • iptables规则持久化:不同发行版保存规则的方法(iptables-save、service iptables save等)。
  • Windows个人防火墙:基于图形界面或netsh命令配置入站/出站规则,实现类似ACL功能。

1.3 Snort入侵检测相关知识点

  • Snort工作模式:嗅探模式、包记录模式、网络入侵检测模式(NIDS)。
  • 离线pcap分析:使用-r参数读取pcap文件进行回溯分析,无需实时网络流量。
  • Snort配置文件(snort.conf):定义网络变量、预处理器、检测规则、输出插件等。
  • 报警输出配置:output alert_fast、output alert_full、output alert_csv等;明文报警日志文件的设置。
  • 日志目录:默认/var/log/snort,可通过-l参数指定;日志文件包括alert(报警)和log(原始包)。
  • 检测规则编写:规则头(动作、协议、IP、端口)和规则选项(msg、content、flow、sid、rev等)。
  • 解码网络扫描检测:检测SYN扫描、FIN扫描、NULL扫描、XMAS扫描、UDP扫描等,触发相应报警规则。

2.实践过程

2.1 防火墙配置:过滤ICMP数据包,使得主机不接收Ping包

在kali虚拟机,输入指令iptables -L查看当前的防火墙规则,发现当前列表为空
image

在SEED虚拟机中ping 192.168.200.3(kaliIP地址),发现可以ping通
image

在kali虚拟机输入指令sudo iptables -A INPUT -p icmp -j DROP配置防火墙,过滤icmp包,输入指令iptables -L查看,配置成功
image

在SEED虚拟机中再次ping 192.168.200.3(kaliIP地址),发现失败。
image

kali虚拟机输入指令sudo iptables -D INPUT -p icmp -j DROP将规则删除
image

在SEED虚拟机中再次ping 192.168.200.3(kaliIP地址),发现可以ping通
image

2.2 防火墙配置:只允许特定IP地址

在Kali虚拟机输入指令service apache2 start
image

seed虚拟机可以访问 “http://192.168.200.3”
image

winxp虚拟机同样也可以
image

在Kali虚拟机中,输入指令iptables -I INPUT -p tcp --dport 80 -j DROP //禁止所有IP访问80端口
image

发现seed虚拟机和winxp虚拟机已经无法访问
image
image

在Kali虚拟机中输入指令iptables -I INPUT -p tcp -s 192.168.200.7(winxp虚拟机IP地址) --dport 80 -j ACCEPT//仅允许winxp虚拟机访问80端口
image
image

此时winxp虚拟机可以访问,但seed虚拟机不行
image
image

2.3 动手实践:Snort

在Kali虚拟机中输入指令sudo apt snort -y下载snort
b0830ae35fdc8c44886afb95452d3f7a

在Kali虚拟机中输入指令snort -c /etc/snort/snort.lua -r /home/kali/Desktop/listen.pcap进行分析pcap流量包
image

发现显示的数据包大部分都是tcp包(99.95%)
image

image

2.4 分析配置规则

在honey虚拟机中输入指令iptables -t filter -L,得到filter 表规则
image
蜜网网关的防火墙filter表基于Netfilter框架,负责数据包的过滤与转发控制。通过配置INPUT、OUTPUT、FORWARD链,可实现:禁止外部对蜜罐的ICMP探测;仅允许特定IP访问指定服务(如HTTP);限制攻击者从蜜罐发起的出站连接,防止其攻击第三方。filter表是蜜网实现攻击数据捕获与行为控制的核心机制。

  • INPUT链:处理发往本机的数据包。用于保护蜜网网关自身,如禁止ping、限制SSH访问。
  • OUTPUT链:处理从本机发出的数据包。可限制网关主动发起的连接,防止攻击者利用网关对外扫描。
  • FORWARD链:处理经由本机转发的数据包(即从一个网卡进、从另一网卡出)。蜜网中用于控制攻击

输入指令vim /etc/snort/snort.conf,得到Snort 主配置
image
在蜜网中,Snort作为入侵检测系统(IDS)部署于网关,通过分析镜像或转发的流量,实时检测针对蜜罐的网络扫描、漏洞攻击等行为。它依据自定义规则生成报警日志,记录攻击来源、类型及载荷,为捕获攻击数据、分析攻击者手法提供关键证据,是蜜网数据捕获层的重要组件。

输入指令find /etc/snort/rules -type f,得到snort规则目录
image
Snort规则目录(通常为/etc/snort/rules/)存放着检测攻击的规则文件。每条规则定义了匹配条件(协议、IP、端口、payload特征)及响应动作(告警、阻断)。目录内按攻击类型分类(如web.rules、scan.rules),用户可自定义local.rules。主配置文件snort.conf通过include指令引用这些规则,实现灵活、可扩展的入侵检测。

输入指令vim /etc/init.d/rc.firewall,得到蜜网网关核心防火墙脚本
image
image
image
蜜网网关核心防火墙基于Linux Netfilter/iptables实现,位于攻击者与蜜罐之间。其核心功能:数据捕获(记录所有进出流量)、访问控制(仅允许特定IP访问服务)、行为限制(限制出站连接,防止蜜罐被用作攻击跳板)。通过配置INPUT、OUTPUT、FORWARD链,实现攻击引流、日志审计与风险隔离,是蜜网防御体系的基石。

2.5 解答:蜜网网关是如何利用防火墙和入侵检测技术完成其攻击数据捕获和控制需求的

蜜网网关通过防火墙与入侵检测系统(IDS)协同,实现对攻击数据的捕获与控制:

  1. 数据捕获:防火墙(如iptables)在FORWARD链上对所有进出蜜罐的流量进行日志记录(-j LOG),配合审计工具保存完整会话;同时,IDS(Snort)对镜像流量进行深度包检测,依据自定义规则(如扫描、溢出特征)生成报警日志,捕获攻击类型、来源及载荷。
  2. 数据控制:防火墙实施出站限制,如限制蜜罐发起的连接数(-m connlimit)、禁止访问特定外部IP、限制带宽(-m limit),防止攻击者利用蜜罐攻击第三方;还可设置白名单,仅允许特定管理IP访问网关自身。
  3. 协同闭环:防火墙拦截可疑出站连接后触发IDS报警,IDS报警又可动态更新防火墙黑名单(如通过snortsam),实现自动响应。由此形成“诱捕-检测-限流-审计”的防御机制,满足蜜网的数据捕获与风险控制需求。

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

3.1 蜜网中vim /etc/snort/snort.conf一直报错

发现是没有升级权限,先普通用户登录,再su -升级权限

3.2 ls -l /etc/snort/rules/一直报错

始终说ls l 没有在dictionary里。最终更换指令find /etc/snort/rules -type f,成功查到

4.学习感想和体会

通过本次实践,我深入理解了网络安全防御中“防、检、诱”三层技术的协同应用。配置iptables过滤ICMP并设置服务白名单,让我掌握了基于包过滤的访问控制原理,明白了最小权限策略的重要性。使用Snort对离线pcap文件进行入侵检测,熟悉了规则匹配与日志分析流程,体会到特征检测在攻击识别中的关键作用。分析蜜网网关的防火墙与IDS配置,更让我认识到数据捕获与行为控制的闭环机制——防火墙记录并限制出站连接,IDS深度检测并报警,二者结合既能诱捕攻击,又能防止蜜罐被用作跳板。本次实践强化了我对纵深防御体系的理解,也提升了动手解决安全问题的能力。