免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1409 | 回复: 0
打印 上一主题 下一主题

[Web] iptables日志探秘 [复制链接]

论坛徽章:
6
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-03 17:33:522015元宵节徽章
日期:2015-03-06 15:50:39IT运维版块每日发帖之星
日期:2016-01-11 06:20:00IT运维版块每日发帖之星
日期:2016-03-19 06:20:0019周年集字徽章-19
日期:2019-09-06 18:56:11
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2015-01-03 09:45 |只看该作者 |倒序浏览
iptables日志探秘

防火墙的主要功能除了其本身能进行有效控制网络访问之外,还有一个很重要的功能就是能清晰地记录网络上的访问,并自动生成日志进行保存。虽然日志格式会因防火墙厂商的不同而形态各异,但被记录下的主要信息大体上却是一致的。无论是后面我们谈到的PIX、ASA或是CheckPoint放火墙其产生的日志内容均类似。这就表明,任何连接或者请求,例如TCP、UDP、ICMP连接记录、连接的流量信息、连接建立时间等,防火墙日志都会将其逐一体现。所以归纳起来,防火墙日志大致包含消息发送源IP地址、消息目的IP、消息流向、消息的内容,以及应用几方面。
防火墙每天要产生大量的日志文件,防火墙管理员针对这未经任何处理和分析的庞大的日志进行管理是很困难的。因此,日志的统计和分析现在已经成为防火墙功能中必不可少的一项,管理员不但可以按照不同的需求来查找日志、审计日志,还可以分析网络带宽的利用率、各种网络协议和端口的使用情况等。防火墙日志还会产生安全警告及一些对网络安全管理很有帮助的信息。这极大的方便了管理员对防火墙的安全管控。
本文以Linux下的iptables为例讲解防火墙日志,下面看一段iptables日志
Jun 19 17:20:04 webkernel: NEW DRAP IN=eth0 OUT=MAC=00:10:4b:cd:7b:b4:00:e0:le:b9:04:al:08:00SRC=192.168.150.1 DST=192.168.150.152 LEN=20 TOS=0X00 PREC=0x00 TTL=249ID=10492 DF PROTO=UDP SPT=53 DPT=32926 LEN=231
对于此日志解释见表1。
表1 iptablesLog字段解释
序号
字段名称
含义
1
Jun 19 17:20:24
日期时间,由syslog生成
2
Web
主机名称
3
Kernel
进程名由syslogd生成kernel为内核产生的日志说明netfilter在内核中运行
4
NEW_DRAP
记录前缀,由用户指定—log-prefix”NEW_DRAP”
5
IN=eth0
数据包进入的接口,若为空表示本机产生,接口还有eth0、br0等
6
OUT=
数据包离开的接口,若为空表示本机接收
7
MAC=00:10:4b:cd:7b:b4:00:e0:le:b9:04:al
00:10:4b:cd:7b:b4 为目标MAC地址
00:e0:le:b9:04:al 为源MAC地址
8
08:00
08:00 为上层协议代码,即表示IP协议
9
SRC=192.168.150.1
192.168.150.1为源IP地址
10
DST=192.168.150.152
192.168.150.152w为目标IP地址
11
LEN=20
IP封包+承载数据的总长度(MTU)
12
TOS=0x00
IP包头内的服务类型字段,能反应服务质量包括延迟、可靠性和拥塞等
13
PREC=0x00
服务类型的优先级字段
14
TTL=249
IP数据包的生存时间
15
ID=10492
IP数据包标示
16
DF
DF表示不分段,此字段还可能为MF/FRAG
17
PROTO=UDP
传输层协议类型,它代表上层协议是什么可分为TCP、UDP、ICMP等
18
SPT=53
表示源端口号
19
DPT=32926
表示目的端口号
20
LEN=231
传输层协议头长度
21
SEQ= 内容略
TCP序列号
22
ACK=内容略
TCP应答号
23
WINDOWS=内容略
IP包头内的窗口大小
24
RES
TCP-Flags中ECN bits的值
25
CWR/ECE/URG/ACK/PSH/RST/SYN/FIN
TCP标志位
26
URGP=
紧急指针起点
27
OPT( 内容略 )
IP或TCP选项,括号内为十六进制
28
INCOMPLETE[65535 bytes]
不完整的数据包
29
TYPE=CODE=ID=SEQ=PARAMETER=
当协议为ICMP时出现
30
SPI=0xF1234567
当前协议为AHESP时出现
31
SYN
TCP-Flags中的SYN标志,此外还有FIN/ACK/RST/URG/PSH几种
32
[  ]
中括号出现在两个地方,在ICMP协议中作为协议头的递归使用;在数据包长度出现非法时用于指出数据实际长度

二、LOG日志格式的思考:
从表1的描述可看出,iptables日志记录的信息很多而且显得很凌乱,在分析时面临以下几个问题:
(1)MAC的表示过于简单,把目标MAC、源MAC及长度类型全部混在一起,不利于阅读。
(2)在表中的序号12、13中TOS和PREC的值都为“0x00”标志位表示方式混乱。
(3)在日志中没有记录数据包内容,特别是对一些被拒绝的数据包,如果有记录数据包内容将有助于查找攻击方式、方法。
(4)没有记录规则号,对于被记录的数据包,当需要查看它因为满足什么条件被记录时,将变得比较困难。
(5)LEN、DPT标志同时出现在IP头、TCP头中在分析处理日志时容易出现混乱。

三、日志分析

在Linux下单独记录Iptables的方法是编辑/etc/syslog.conf文件,在其中加入一行
kern.warning /var/log/iptables.log
然后重启syslog服务:
#/etc/init.d/syslog restart
   为了方便地对日志进行分析,可加上适当的记录日志前缀,即在IPtables中使用LOG选项,通过LOG 选项打开匹配数据包的内核记录功能。LOG 选项的子选项 --log-prefix 用来给记录信息添加一个消息前缀,这个前缀可设达 29 个字符。添加前缀的目的只是为了更好的辨别记录信息,比如更容易用 grep 这种工具过滤出匹配的记录信息。下面举个例子。在Linux 服务器中输入下面的命令:

详情见:http://blog.chinaunix.net/uid-59434-id-4734608.html

评分

参与人数 1可用积分 +6 收起 理由
cryboy2001 + 6 赞一个!

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP