NIDS——suricata(二)

suricata(一)

一、识别中国菜刀

1、环境搭建:

(1)先在测试网站里写一个一句话木马文件

<?php eval($_POST[1]); ?>

(2)使用菜刀连接

建立连接

刷新后连接成功:

2、分析中国菜刀流量

使用Wireshark抓取流量,通过菜刀不断浏览目标网站文件目录来创建流量。

分析流量

锁定特征:

Form item: "1" = "@eval(base64_decode($_POST[z0]));"

具体位置

@eval\001(base64_decode($_POST[z0]));        #001代码无法识别字符

3、编写规则与测试

编写正则表达式:

 @的十六进制:0x40,在suricata十六进制表述方式:|40|

eval:直接填

\001(:|01 28|,因为\001是无法识别的字符,则使用0x01作为占位符来代表它。(为0x28。

base64_decode直接填写。

|40|eval|01 28|base64_decode

将构造好的正则表达式填入//中并添加i声明不区分大小写。

pcre:"/|40|eval|01 28|base64_decode/i"

构建规则

根据Form item得知,菜刀流量特征存在于表单中,那么pcre中的内容应该在关键字http.request_body 中进行匹配,这是因为

  • http.request.body 是更通用的关键字,适用于匹配 HTTP 请求体的任何内容,包括表单数据。

规则代码:

alert http $EXTERNAL_NET any <> $HOME_NET 80 (msg:"检测到了疑似来自菜刀的攻击,请及时检查"; http.request_body;pcre:"/|40|eval|01 28|base64_decode/i";sid:561010;)

加入规则并测试:

加入规则:

 

测试:

二、识别蚁剑

1、环境搭建

一句话木马上一步就创建成功了

使用蚁剑连接:

2、分析蚁剑流量

使用Wireshark抓取流量,通过蚁剑不断浏览目标网站文件目录来创建流量。

但是这不能当作编写规则的参照物,这是因为蚁剑可以进行伪造。

伪造:

验证:

锁定特征:

具体特征:

锁定蚁剑使用的函数:

function asoutput(

3、编写规则与测试 

编写正则表达式:

function直接填写

空格:十六进制:0x20,在suricata十六进制表述方式:|20|。

asoutput(:asoutput|28|

function|20|asoutput|28|

将构造好的正则表达式填入//中并添加i声明不区分大小写。

pcre:"\function|20|asoutput|28|\i" 

 构建规则:

根据Form item得知,菜刀流量特征存在于表单中,那么pcre中的内容应该在关键字http.request_body 中进行匹配。

规则代码:

alert http $EXTERNAL_NET any <> $HOME_NET 80 (msg:"检测到蚁剑的流量特征";http.request_body;pcre:"/function|20|asoutput|28|/i";sid:5001002;)

加入规则并测试:

加入规则:

测试:

 成功

三、 识别冰蝎(存在加密)

1、环境搭建

生成服务端

点击生成服务端,获得shell.php后将其上传到目标系统中,最后点击保存

建立连接:

连接成功:

2、分析冰蝎流量

使用Wireshark抓取流量,通过冰蝎不断浏览目标网站文件目录来创建流量。

分析:

锁定特征:

特征一:需要根据代码写十条规则

特征二:相对简单些

3、编写规则与测试

根据特征构建content内容:

因为特征很具体,所以不使用正则表达式

 http.content_type; content:"application/x-www-form-urlencoded"; 
 

 构建规则:

 在 Suricata 中,检测 content-type 头通常使用  http.content_type关键字

alert http $EXTERNAL_NET any -> $HOME_NET 80 (msg:"识别到冰蝎流量"; http.content_type; content:"application/x-www-form-urlencoded"; sid:5622012; rev:1;)

写入规则并测试 

 写入规则:

测试:

成功

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值