扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在tcp/ip数据包中只要出现test字符串,以上的信息就会产生。这有什么好处呢?太多了。正如 Filtering packets based on string matching这篇文章所建议的那样,该文章可以在linuxguru.net的sysctl内找到。它能够用来阻止那些讨厌的IIS蠕虫造成得 Unix web服务器记录文件记录大量的对cmd.exe的请求,这些蠕虫将不再干扰你,但是如果你的/var分区(通常是记录文件存放的分区)不够大,那么这一功能将有一定的帮助。只要静静地丢弃蠕虫对80端口的请求或者使用记录限制功能,对这些信息进行记录,丢弃这些包的操作如下:
iptables -I INPUT -j DROP -p tcp -s 0.0.0.0/0 -m string --string "cmd.exe"
每小时只记录一条这样的信息:
iptables -I INPUT -j LOG -p tcp -s 0.0.0.0/0 -m string --string "cmd.exe" -m limit
--limit 1/hour
Bill Steams(Mason firewall building script的作者)提供了一个极好的建议----转换网络IDS Snort的规则成为iptables字符串模式匹配的规则。Snort的攻击信号数据库中包含了大约1200种信号and appears to be the biggest publicly available attack database suitable for instant deployment。在iptables上使用现成的信号是合理的一种方式。http: //www.strearns.org/snort2iptables 是Bill Stearm提供的试验性的软件。在这里你可以找到shell脚本以便将标准的Snort规则转换为iptables的规则。下面是一个将snort关于 Linux下针对mountd的攻击和bind的攻击转化为iptables的规则的例子:
Snort规则:
1、alert udp $EXTERNAL_NET any -> $HOME_NET 518
(msg:"EXPLOIT ntalkd x86 linux overflow";
content:"|0103 0000 000 0 0001 0002 02e8|";
reference:bugtraq,210; classtype:attempted-admin; sid:313; rev:2;)
2、alert tcp $EXTERNAL_NET any -> $HOME_NET 53
(msg:"EXPLOIT named tsig infoleak";
content: "|AB CD 09 80 00 00 00 01 00 00 00 00 00 00 01 00 01 20 20 20 20 02 61|";
reference:cve,CAN-2000-0010; reference:bugtraq,2302; reference:arachnids,482;
classtype:attempted-admin; sid:303; rev:3;)
3、alert udp $EXTERNAL_NET any -> $HOME_NET 635
(msg:"EXPLOIT x86 linux mountd overflow";
content:"|5eb0 0289 06fe c889 4604 b006 8946|";
reference:cve,CVE-1999-0002; classtype:attempted-admin; sid:315; rev:1;)
转化的iptables规则:
1、iptables -A SnortRules -p udp -s $EXTERNAL_NET -d $HOME_NET --dport 518 -m
string --string " è" -j LOG --log-prefix "SID313 " # "EXPLOIT ntalkd x86
linux overflow" bugtraq,210 classtype:
attempted-admin sid:313
2、iptables -A SnortRules -p tcp -s $EXTERNAL_NET -d $HOME_NET --dport 53 -m
string --string "«Í .a" -j LOG --log-prefix "
SID303 " # "EXPLOIT named tsig infoleak" cve,CAN-2000-0010 bugtraq,2302
arachnids,482 classtype:attempted-admin sid:303
3、iptables -A SnortRules -p udp -s $EXTERNAL_NET -d $HOME_NET --dport 635 -m
string --string "^° ‰ þȉF ° ‰F" -j LOG --log-prefix " cve-CVE-1999-0002
" # "EXPLOIT x86 linux mountd overflow" classtype:attempted-admin sid:315
显而易见,上面的转化使用了针对漏洞所使用的缓冲区溢出字符串作为捕获攻击的方式,有些规则不便于转化主要是因为在桢的控制方面snort比iptables要强大一点。
总之,iptables的字符串模式匹配功能能够被用来保护那些开放了易受攻击的而一般的包过滤又无法保护的网络服务(如WWW服务,mail服务, DNS服务,FTP服务等)的组织的网络(如果将它布置在组织的网关上)和单个的主机(使iptables成为主机的一部分),另外,iptables的字符串模式匹配功能还能够帮助实现强制安全策略,即通过关键字来阻止访问非法的内容。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者