當前位置:首頁 » 網頁前端 » 微軟腳本彈窗
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

微軟腳本彈窗

發布時間: 2022-08-21 06:13:48

A. 安裝Windows Installer清理實用工具時彈出腳本錯誤方框圖,求教真正的高手!!

首先下載微軟提供的Windows Installer清理實用工具:訪問 點擊「立即下載Windows Installer 清理實用工具程序包。 」下載完成後,運行該文件。安裝完成後,在C:\Program Files\Windows Installer Clean Up里找到一個msicuu.exe,運行,裡面有很多項目,找到QQ2009,選中它,點remove,確定項目中的QQ2009消失了,然後就可以重新安裝QQ2010。如果Windows Installer 清理實用工具程序包無法安裝,提示「沒有在本機執行Windows腳本宿主的權利」,不要慌。首先檢查系統是否禁止使用了腳本運行,即打開「INTERNET選項」的「安全」選項卡里「自定義級別」,看看「ActiveX控制項及服務」的選項,選擇啟用。接著點擊「開始」菜單,「運行」,在運行欄里輸入「 regsvr32 scrrun.dll」,然後點確定。最後關鍵的一步就是看看注冊表裡的這個位置HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Script Host\Settings在右邊的窗口中是不是有個名為 Enabled的DWORD鍵值,有的話把它刪除或者把值該為1即可正常運行。經過以上操作後,下載的文件就可以運行安裝了。

B. 電腦每次打開C盤或者C盤內的文件夾都會彈出一個「Windows 腳本宿主」的對話框,請問應該怎麼解決

1218852477.vbs是腳本病毒。打開c盤自動運行,建議進行Autorun.inf免疫
使用http://dl.360safe.com/360safe_cq.exe掃描
smss.exe(Session Manager Subsystem),該進程為會話管理子系統用以初始化系統變數,MS-DOS驅動名稱類似LPT1以及COM,調用Win32殼子系統和運行在Windows登陸過程。這是一個會話管理子系統,負責啟動用戶會話。這個進程是通過系統進程初始化的並且對許多活動的,包括已經正在運行的Windows登錄程序(winlogon.exe),Win32子系統(csrss.exe)線程和設定的系統變數作出反映。

SMSS病毒

QQ尾巴,Trojan/PSW.MiFeng蜜蜂大盜等木馬病毒:
進程文件: smss.exe
進程名稱: PWSteal.Wowcraft.b木馬病毒
英文描述: N/A
進程分析: QQ尾巴,Trojan/PSW.MiFeng蜜蜂大盜等木馬病毒。主要通過瀏覽惡意網頁傳播。該病毒修改注冊表創建Run/Tok-Cirrhatus項實現自啟動。新變種也通過修改注冊表Winlogon項下的Userinit實現自啟動,並將病毒模塊regsvr.dll,cn_spi.dll注入進程運行。
安全等級 (0-5): 0 (N/A無危險 5最危險)
間諜軟體: 是
廣告軟體: 是
病毒: 是
木馬: 是
系統進程: 否
應用程序: 否
後台程序: 是
使用訪問: 是
訪問互聯網: 否
[1]清除方法:
1. 運行Procexp.exe和SREng.exe
2. 用ProceXP結束%Windows%\SMSS.EXE進程,注意路徑和圖標
3. 用SREng恢復EXE文件關聯(1,2,3步要注意順序,不要顛倒。)
4. 可以刪除文件和啟動項了……
①結束病毒的進程%Windows%\smss.exe(用進程管理軟體可以結束,如:Process viewer)
② 刪除相關文件:
C:\MSCONFIG.SYS
%Windows%\1.com
%Windows%\ExERoute.exe
%Windows%\explorer.com
%Windows%\finder.com
%Windows%\smss.exe
%Windows%\Debug\DebugProgram.exe
%System%\command.pif
%System%\dxdiag.com
%System%\finder.com
%System%\MSCONFIG.COM
%System%\regedit.com
%System%\rundll32.com
%ProgramFiles%\Internet Explorer\iexplore.com
%ProgramFiles%\Common Files\iexplore.pif
③ 恢復EXE文件關聯
刪除[HKEY_CLASSES_ROOT\winfiles]項
④ 刪除病毒啟動項:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
「Torjan Program」=「%Windows%\smss.exe」
修改[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]下
「shell」=「Explorer.exe 1」

「shell」=「Explorer.exe」
⑤ 恢復病毒修改的注冊表信息:
(1)分別查找「command.pif」、「finder.com」、「rundll32.com」的信息,將「command.pif」、「finder.com」、「rundll32.com」修改為「rundll32.exe」
(2)查找「explorer.com」的信息,將「explorer.com」修改為「explorer.exe」
(3)查找「iexplore.com」的信息,將「iexplore.com」修改為「iexplore.exe」
(4)查找「iexplore.pif」的信息,將找到的「%ProgramFiles%\Common Files\iexplore.pif」修改為「%ProgramFiles%\Internet Explorer\iexplore.exe」
⑥ 在command模式下寫入assoc .exe=exefile
修復exe關聯,這樣exe文件才可以打的開
刪除的啟動項:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
「TProgram」=「%Windows%\SMSS.EXE」
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Runservices]
「TProgram」=「%Windows%\SMSS.EXE」
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
「Shell」=「Explorer.exe 1」
修改為:
「Shell」=「Explorer.exe」
刪除的文件就是一開始說的那些,別刪錯就行
5. 最後打開注冊表編輯器,恢復被修改的信息:
查找「explorer.com」,把找到的「explorer.com」修改為「explorer.exe」;
查找「finder.com」、「command.pif」、「rundll32.com」,把找到的「finder.com」、「command.pif」、「rundll32.com」修改為「rundll32.exe」;
查找「iexplore.com」,把找到的「iexplore.com」修改為「iexplore.exe」;
查找「iexplore.pif」,把找到的「iexplore.pif」,連同路徑一起修改為正常的IE路徑和文件名,比如「C:\Program Files\Internet Explorer\iexplore.exe」。
英文版本
進程文件: smss.exe or smss
進程名稱: Session Manager Subsystem
描述:
smss.exe is a process which is a part of the Microsoft Windows Operating System. It is called the Session Manager Subsystem and is responsible for handling sessions on your system. This program is important for the stable and secure running of your computer and should not be terminated.
Note: smss.exe is a process which is registered as a trojan. This 木馬 allows attackers to access your computer from remote locations, stealing passwords, Internet banking and personal data. This process is a security risk and should be removed from your system.
Determining whether smss.exe is a virus or a legitimate Windows process depends on the directory location it executes or runs from in WinTasks.
Recommendation for smss.exe:
smss.exe should not be disabled, required for essential applications to work properly.
Author: Microsoft Corp.
Part Of: Microsoft Windows Operating System
安全等級 (0-5): 0
間諜軟體: No
病毒: No ( Remove smss.exe )
木馬: No ( Remove smss.exe )
Memory Usage: N/A
System Process: Yes
Background Process: Yes
Uses Network: No
Hardware Related: No
Common smss.exe Errors: N/A
中文描述:
smss.exe是一個進程,這是一種部分的微軟視窗操作系統。這就是所謂的會話管理子系統和負責處理會在您的系統。這項計劃是重要的穩定和安全運行的計算機,而不應被終止。
注意: smss.exe是一個進程,這是注冊為木馬。這木馬允許黑客訪問您的計算機從遙遠的地點,竊取密碼,網上銀行和個人數據。這是一個安全風險,應刪除您的系統。
確定是否是一個smss.exe病毒或合法的Windows進程取決於它的位置目錄執行或執行從WinTasks 。
建議smss.exe :
smss.exe不應該被禁用,應該修復以便支持基本應用的進行。
作者:微軟公司
部分:微軟Windows操作系統
安全等級( 0-5 ) : 0
間諜軟體:否
病毒:否(刪除smss.exe )
木馬:否(刪除smss.exe )
內存使用情況:無/阿
系統進程:是
後台進程:是
利用網路:無
硬體相關:無
共同smss.exe錯誤:無/阿
注釋: 文件 smss.exe 是存放在目錄 C:\Windows\System32。已知的 Windows XP 文件大小為 50,688 位元組 (占總出現比率 90% ),45,568 位元組,62,976 位元組,64,000 位元組。
這是 Windows 系統文件。 程序沒有可視窗口。 這個文件是由 Microsoft 所簽發。 總結在技術上威脅危險度是 4% , 但是也可以參考 用戶意見。
如果 smss.exe 位於在目錄 C:\Windows下,那麼威脅危險度是 75% 。文件大小是 229,621 位元組 (占總出現比率 15% ),122,880 位元組,34,816 位元組,159,841 位元組,51,712 位元組,65,664 位元組,45,866 位元組,163,840 位元組,229,888 位元組,69,632 位元組,53,249 位元組,15,872 位元組,106,496 位元組,50,767 位元組,55,296 位元組。這個不是 Windows 核心文件。 文件沒有發行者的資料。 應用程序是不可見的。 這是個不知名的文件存放於 Windows 目錄。 這個進程在 Windows 啟動時自動載入 (參看注冊表項: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell,C:\Windows\win.ini,HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Run,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit,HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders,HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders)。 smss.exe 是有能力可以 監控應用程序,操縱其他程序,紀錄輸入。
如果 smss.exe 位於在 C:\Windows\System32\drivers 下的子目錄下,那麼威脅危險度是 71% 。文件大小是 86,016 位元組 (占總出現比率 81% ),13,312 位元組。這個程序沒有備注。 程序是不可見的。 這是個不知名的文件存放於 Windows 目錄。 這個不是 Windows 系統文件。 smss.exe 是有能力可以 監控應用程序。
7,聯想傳奇電子教室程序安裝後,學生機的執行程序也為smss.exe。
[編輯本段]判斷是否感染smss.exe病毒的的重要依據
[2]文件 smss.exe 是存放在目錄 C:\Windows\System32。已知的 Windows XP 文件大小為 50,688 位元組 (占總出現比率 90% ),45,568 位元組,62,976 位元組,64,000 位元組。
這是 Windows 系統文件。 程序沒有可視窗口。 這個文件是由 Microsoft 所簽發。 總結在技術上威脅的危險度是 4% , 但是也可以參考 用戶意見。
如果 smss.exe 位於在目錄 C:\Windows下,那麼威脅的危險度是 75% 。文件大小是 229,621 位元組 (占總出現比率 15% ),122,880 位元組,34,816 位元組,159,841 位元組,51,712 位元組,65,664 位元組,45,866 位元組,163,840 位元組,229,888 位元組,69,632 位元組,53,249 位元組,15,872 位元組,106,496 位元組,50,767 位元組,55,296 位元組。這個不是 Windows 核心文件。 文件沒有發行者的資料。 應用程序是不可見的。 這是個不知名的文件存放於 Windows 目錄。 這個進程在 Windows 啟動時自動載入 (參看注冊表項: HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Shell,C:\Windows\win.ini,HKEY_USERS\.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Run,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices,HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit,HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders,HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders)。 smss.exe 是有能力可以 監控應用程序,操縱其他程序,紀錄輸入。
如果 smss.exe 位於在 C:\Windows\System32\drivers 下的子目錄下,那麼威脅的危險度是 71% 。文件大小是 86,016 位元組 (占總出現比率 81% ),13,312 位元組。這個程序沒有備注。 程序是不可見的。 這是個不知名的文件存放於 Windows 目錄。 這個不是 Windows 系統文件。 smss.exe 是有能力可以 監控應用程序。
如果 smss.exe 位於在 C:\Windows 下的子目錄下,那麼威脅的危險度是 73% 。文件大小是 245,760 位元組 (占總出現比率 21% ),1,159,680 位元組,45,126 位元組,18,498 位元組,32,768 位元組,176,128 位元組,225,280 位元組,1,284,419 位元組,172,032 位元組,29,184 位元組,344,116 位元組。
如果 smss.exe 位於在 C:\Windows\System32 下的子目錄下,那麼威脅的危險度是 75% 。文件大小是 223,232 位元組 (占總出現比率 22% ),9,525 位元組,9,497 位元組,10,752 位元組,385,024 位元組,227,328 位元組,76,800 位元組。
如果 smss.exe 位於在 「C:\Program Files」 下的子目錄下,那麼威脅的危險度是 58% 。文件大小是 3,428,352 位元組 (占總出現比率 33% ),36,352 位元組,363,952 位元組,1,884,160 位元組,700,416 位元組。
如果 smss.exe 位於在目錄 C:\Windows\System32\drivers下,那麼威脅的危險度是 52% 。文件大小是 94,208 位元組。
如果 smss.exe 位於在 of C:\ 下的子目錄下,那麼威脅的危險度是 65% 。文件大小是 1,146,880 位元組 (占總出現比率 50% ),420,864 位元組。
如果 smss.exe 位於在目錄 「C:\Program Files\Common Files」 下的子目錄下,那麼威脅的危險度是 56% 。文件大小是 21,538 位元組 (占總出現比率 50% ),13,650 位元組。
如果 smss.exe 位於在目錄 C:\下,那麼威脅的危險度是 65% 。文件大小是 110,592 位元組 (占總出現比率 50% ),130,690 位元組。
如果 smss.exe 位於在目錄 「C:\Program Files\Common Files」下,那麼威脅的危險度是 100% 。文件大小是 130,690 位元組。
如果 smss.exe 位於在 「C:\Documents and Settings」 下的子目錄下,那麼威脅的危險度是 36% 。文件大小是 42,065 位元組。
切記: smss.exe 也可能是惡意軟體所偽裝,尤其是當它們存在於 c:\windows 或 c:\windows\system32 目錄。我們建議使用 Security Task Manager 來檢查電腦的安全狀況,以便進一步查看 smss.exe 進程是否真的有害。

C. Microsoft visual c++彈窗

適用於 Linux 的 Windows 子系統中的 Visual Studio Code 伺服器使用本地 WebSocket WebSocket 連接與遠程 WSL 擴展進行通信。網站中的 JavaScript 可以連接到該伺服器並在目標系統上執行任意命令。目前該漏洞被命名為CVE-2021-43907。

這些漏洞可以被用於:
本地 WebSocket 伺服器正在監控所有介面。如果允許通過 Windows 防火牆,外部應用程序可能會連接到此伺服器。
本地 WebSocket 伺服器不檢查 WebSocket 握手中的 Origin 標頭或具有任何身份驗證模式。瀏覽器中的 JavaScript 可以連接到該伺服器。即使伺服器正在監控本地主機,也是如此。
我們可以在特定埠上生成一個Node Inspector示例,它還監控所有介面。外部應用程序可以連接到它。
如果外部應用程序或本地網站可以連接到這些伺服器中的任何一個,它們就可以在目標計算機上運行任意代碼。
Visual Studio Code 庫是不斷更新的。我將使用一個特定的提交 ()。
$ git clone https://github.com/microsoft/vscode $ git reset --hard
我們可以使用 Code (lol) 來導航源代碼。事實上,我已經在 WSL 中為這個漏洞創建了具有相同擴展名的概念驗證。
Visual Studio Code在 WSL 內以伺服器模式運行,並與 Windows 上的代碼示例對話(我稱之為代碼客戶端)。這使我們可以在 WSL 中編輯文件和運行應用程序,而不需要運行其中的所有內容。
遠程開發架構
可以通過 SSH 和容器在遠程計算機上進行遠程開發。GitHub Codespaces 使用相同的技術(很可能通過容器)。
在 Windows 上使用它的方法:
1.打開一個WSL終端示例,在Windows上的代碼中應該可以看到遠程WSL擴展;
2.在 WSL 中運行code /path/to/something;
3.如果未安裝代碼伺服器或已過時,則會下載它;
4.VS Code 在 Windows 上運行;
5.你可能會收到一個 Windows 防火牆彈出窗口,用於執行如下所示的可執行文件:
伺服器的防火牆對話框
這個防火牆對話框是我執行失敗的原因。出現該對話框是因為 VS Code 伺服器想要監控所有介面。
從我信任的Process Monitor開始:
1.運行進程監控器;
2.在WSL中運行code .;
3.Tools > Process Tree;
4.我運行代碼(例如,Windows Terminal.exe)的終端示例中運行Add process and children to Include filte。
Procmon 的進程樹
經過一番挖掘,我發現了 VSCODE_WSL_DEBUG_INFO 環境變數。我只是在 WSL 中將 export VSCODE_WSL_DEBUG_INFO=true 添加到 ~/.profile 。運行伺服器後我們會得到額外的信息。
VSCODE_WSL_DEBUG_INFO=true
輸出被清理。
檢查命令行參數。
可以看到出現了WebSocket詞彙。
運行 Wireshark 並捕獲loopback介面上的流量。然後我再次在 WSL 中運行代碼。這次可以看到兩個 WebSocket 握手。
在 Wireshark 中捕獲的 WebSocket 連接
該運行中的伺服器埠是63574,我們也可以從日誌中看到。在 Windows 上的代碼客戶端中打開命令面板 (ctrl+shift+p) 並運行 > Remote-WSL: Show Log。
遠程 WSL:顯示日誌
最後一行有埠:在 http://127.0.0.1:63574/version 上打開本地瀏覽器。我們還可以看到從 Windows 上的 Code 客戶端到伺服器的兩個單獨的 WebSocket 連接。
伺服器是位於 /src/vs/server/.ts#L207 的 的一個示例。
它被 createServer 在同一個文件中使用,我們可以使用 Code (lol) 找到它的引用並追蹤到 remoteExtensionHostAgent.ts(同一目錄)。
可以根據注釋查看 main.js 內部。
打開文件,看到伺服器可以從傳遞給main.js的參數中獲得主機和埠。
main.js 被 server.sh 調用:
沒有 IP 地址傳遞給腳本,我認為這就是為什麼伺服器監控所有有趣的事情。port=0 可能告訴伺服器使用臨時埠,此信息來自同一目錄中的 wslServer.sh。
每次看到本地 WebSocket 伺服器時,都應該檢查誰可以連接到它。
WebSocket 連接不受同源策略約束,瀏覽器中的 JavaScript 可以連接到本地伺服器。
WebSockets 從握手開始,在跨源資源共享或 CORS 的上下文中它始終是一個「簡單」的GET 請求,因此瀏覽器不需要預先請求就可以發送它。
可以快速創建一個嘗試連接到特定埠上的本地WebSocket伺服器的測試頁面,將它託管在某個遠程位置(例如,S3 存儲桶)並在計算機上打開它。如果連接成功,就可以繼續操作了。
我還檢查了 Burp,在 Burp Repeater 中創建了 WebSocket 握手。將 Origin 標頭修改為 https://example.net。如果響應具有 HTTP/1.1 101 交換協議,那麼就可以繼續了。
在 Burp 中測試
注意,這只對本地主機伺服器有影響。這里的伺服器也對外公開,攻擊者不受瀏覽器約束。它們可以直接連接到伺服器並提供任何 Origin 標頭。
接下來是查看 Wireshark 中的流量,右鍵點擊之前的WebSocket握手GET請求,然後選擇 Follow > TCP Stream。我們將看到一個帶有一些可讀文本的屏幕。關閉它,只會看到這個進程的數據包,這允許我們只關注這個進程。
你可能會問為什麼我關閉了僅包含消息內容的彈出窗口,因為沒有用。根據 RFC6455,從客戶端到伺服器的消息必須被屏蔽。這意味著它們與一個 4 位元組的密鑰(也隨消息一起提供)進行了異或運算。Wireshark 在選擇時取消屏蔽每個數據包,但有效載荷在初始進程彈出窗口中顯示為屏蔽。所以我們將看到純文本的伺服器消息,而客戶端消息被屏蔽並出現亂碼。如果你點擊單個消息,Wireshark 就會顯示有效載荷。
我花了幾天時間對協議進行逆向工程。後來,我意識到只能在/src/vs/base/parts/ipc/common/ipc.net.ts 中看到協議的源代碼。
來自伺服器的第一條消息是 KeepAlive 消息。
在協議定義中,我們可以看到不同的消息類型。
在 /src/vs/platform/remote/common/remoteAgentConnection.ts 中,它在代碼的其他部分被稱為 OKMessage 和heartbeat。
客戶端在/src/vs/platform/remote/common/remoteAgentConnection.ts的中處理此問題。客戶端(Windows上的代碼)發送這個包,它是一個KeepAlive和一個單獨的認證消息。
最初,我認為長度欄位是 12 個位元組而不是 4 個位元組,因為其餘的位元組總是空的。然後我意識到只有常規消息使用消息 ID 和 ACK 欄位,而且我只看到了不規則的握手消息。
在修復之前,沒有勾選此選項。
注意:在 2021-11-09 更新之前(commit )客戶端沒有發送數據。但是,使用此提交,我們仍然可以在沒有此密鑰的情況下發送消息並且它會起作用。這是我們給伺服器簽名的內容,以檢查連接到正確的伺服器。
伺服器響應一個簽名請求。
另一個 JSON 對象:
伺服器已經簽名了我們在前一條消息中發送的數據,並用它自己的數據請求進行了響應。
客戶端驗證簽名的數據,以檢查它是否是受支持的伺服器。當創建我們的客戶端時,可以簡單地跳過。
使用options.signService.validate 方法,然後就會得到/src/vs/platform/sign/node/signService.ts。
vsda 是一個用 C++ 編寫的 Node 原生插件,將 Node 原生插件視為共享庫或 DLL。該插件位於 https://github.com/microsoft/vsda 的私有存儲庫中,根據https://libraries.io/npm/vsda/的說法,直到2019年左右,它都是一個NPM包。
它與 VS Code 客戶端和伺服器捆綁在一起:
Windows系統:
C:\Program Files\Microsoft VS Code\resources\app\node_moles.asar.unpacked\vsda\build\Release\vsda.node
伺服器(WSL):~/.vscode-server/bin/{commit}/node_moles/vsda/build/Release/vsda.node。
我找到了https://github.com/kieferrm/vsda-example,並通過一些實驗找到了如何使用它創建和簽名消息。
1.用msg1 = validator.createNewMessage("1234")創建一個新消息,輸入至少4個字元。
2.使用signed1 = signer.sign(msg1)進行簽名。
3.使用 validator.validate(signed1) 對其進行驗證,響應為「ok」。
需要注意的是,如果你創建了新消息,則無法再驗證舊消息。在源代碼中,每條消息都有自己的驗證器。
Linux 版本有符號,大小約為 40 KB。把它放到 IDA/Ghidra 中,應該就可以開始了。
我花了一些時間,想出了這個偽代碼。可能不太正確,但可以讓你大致了解此簽名的工作原理。
1.用當前時間 + 2*(msg[0]) 初始化 srand,它只會創建 0 到 9(含)之間的隨機數;
2.從許可證數組中附加兩個隨機字元;
3.從 salt 數組中附加一個隨機字元;
4.SHA256;
5.Base64;
6.???;
7.Profit。
僅從許可證數組中選擇前 10 個位置的字元,它總是 rand() % 10 ,但salt 數組翻了一番。
許可證數組的字元串如下所示:
salt 數組的前 32 個位元組(查找 Handshake::CHandshakeImpl::s_saltArray)是:
我從來沒有真正檢查過我的分析是否正確,不過這無關緊要,知道如何使用插件簽名消息,這就足夠了。
接下來,客戶端需要簽名來自伺服器的數據並將其發送回來,以顯示它是一個「合法」的代碼客戶端。
伺服器響應如下:
客戶端發送了如下消息:
提交應該匹配伺服器的提交哈希。這不是秘密。這可能是最後一個穩定版本提交(或最後幾個之一)。這只是檢查客戶端和伺服器是否在同一版本上。它也可以在 http://localhost:{port}/version 上找到,你的瀏覽器 JavaScript 可能無法看到它,但外部客戶端沒有這樣的限制。
signedData是對我們在前面消息中從伺服器獲得的數據進行簽名的結果。
Args是此消息中最重要的部分,它可以告訴伺服器在特定埠上啟動一個 Node Inspector 示例。
break: 啟動 Inspector 示例後中斷。
埠:檢查器示例的埠。
Env:傳遞給檢查器示例進程的環境變數及其值的列表。
Node Inspector 示例可用於調試 Node 應用程序。如果攻擊者可以連接到你計算機上的此類示例,那麼攻擊就成功了。2019 年,Tavis 發現 VS Code 默認啟用了遠程調試器。
整個設置旨在允許 Windows 上的代碼客戶端在 WSL、容器或 GitHub 代碼空間中進行遠程開發。這意味著它可以在遠程計算機上做任何想做的事情。
因此,如果網站可以連接到你本地的 WebSocket 伺服器並繞過 DRM,它就可以模擬代碼客戶端。它可以在你的系統上遠程執行代碼,並且不需要 Node Inspector 示例。
到目前為止,我們已經找到了兩種利用該系統的方法:
生成並連接到 Node Inspector 示例;
模擬代碼客戶端並使用自定義協議與遠程計算機交互;
Node Inspector示例
讓我們看看前面消息中的參數, /src/vs/server/.ts 在伺服器上處理它們。
介面類似於我們之前看到的 JSON 對象:
_updateWithFreeDebugPort檢查埠是否空閑,如果沒有,它將嘗試接下來的10個埠。最後一個空閑埠存儲在startParams.port中。
選擇的埠被發送回客戶端,所以我們知道去哪裡:
最後,它在 /src/vs/server/extensionHostConnection.ts 中調用con.start(startParams);。
這看起來很復雜,讓我們來分析一下:
1.Node Inspector 示例將監聽 0.0.0.0:debugPort,這很危險,如果用戶接受 Windows 防火牆對話框,它將在外部可用;
2.我們也可以注入 Inspector 的環境變數;
3.removeDangerousEnvVariables 方法不是安全過濾器,只是刪除 DEBUG、DYLD_LIBRARY_PATH 和 LD_PRELOAD 環境變數(如果存在)以防止崩潰。
什麼是Node Inspector?
它可以用來調試Node進程。有一些客戶端和庫支持這一點,但通常,我使用Chromium內置的專用節點DevTools (chrome|edge://inspect)。
連接到 Inspector 示例後,我們可以打開控制台並運行 require('child_process').exec('calc.exe');。盡管我們使用的是wsdl,但它仍然有效。
瀏覽器中的 JavaScript 無法連接到 Inspector 示例,客戶端使用另一個 WebSocket 連接與示例對話。但是,我們需要知道調試器會話 ID。
/json/列表
瀏覽器中的 JavaScript 可以發送此 GET 請求,但由於 SOP(響應沒有 Access-Control-Allow-Origin 標頭)而無法看到響應。其他客戶端則沒有這個限制,因為檢查器在外部可用,我們可以從外部連接到它。
現在,我創建了一個簡單的概念驗證:
1.打開一個網站並輸入埠(我們可以掃描它,但手動輸入它會更快)。
2.網站中的 JavaScript 完成握手。
3.我使用 /sign API 創建了一個 Node 應用程序,這樣就可以使用 vsda 插件。
4.一旦生成Node Inspector 示例,第二個 API 就會被 debugPort 調用。
5.使用 chrome-remote-interface 庫的 Node 應用程序連接到 Inspector 示例並運行 calc。
你可以通過以下鏈接看到源代碼:
https://github.com/parsiya/code-wsl-rce https://github.com/parsiya/Parsia-Code/tree/master/code-wsl-rce
模擬代碼客戶端
創建客戶端並使用協議連接到伺服器的代碼位於 VS Code GitHub 存儲庫中,這需要大量的復制/粘貼和解析,我只花了幾個小時。
如果要創建一個快速的概念驗證,應該滿足一些假設:
1.找到本地的 WebSocket 埠;
2.從外部連接到Node Inspector示例;
查找本地 WebSocket 埠並不難,從瀏覽器掃描本地伺服器並不是什麼新鮮事。伺服器也可以從外部使用,因此我們不受那裡的瀏覽器約束。
Chrome 限制不起作用,因為 WebSocket 伺服器需要一個網路伺服器來處理握手。我也很好奇 WebSocket 節流是 Chrome 特定的保護還是 Chromium 的一部分。
有趣的是,Chrome 瀏覽器有一個保護機制,可以防止惡意行為者暴力破解 WebSocket 埠,它在第 10 次嘗試後開始節流。不幸的是,這種保護很容易被繞過,因為擴展的 HTTP 和 WebSocket 伺服器都在同一個埠上啟動。這可用於通過向 img 標簽添加 onload 處理程序來檢查特定本地主機埠上的圖片是否存在來強制所有可能的本地埠。
也就是說,這是一個開發環境,用戶可能整天都在 WSL 中開發並且從不關閉他們的瀏覽器選項卡,因此如果他們打開我們的網站,我們就有可能找到它。
連接到Node Inspector示例是另一回事,我們無法從瀏覽器執行此操作,因此我們需要我們的伺服器可以訪問受害者的計算機。
第二種利用方法(模擬代碼客戶端)沒有這些限制,因為瀏覽器可以與本地伺服器通信並執行所有操作。它只需要我們對協議進行逆向工程並找出要發送的正確消息。
當你收到 WebSocket 升級請求時,請根據許可名單檢查 Origin 標頭。代碼客戶端在該標頭中發送 vscode-file://vscode-app,以便我們可以使用它來操作。
參考及來源:https://parsiya.net/blog/2021-12-20-rce-in-visual-studio-codes-remote-wsl-for-fun-and-negative-profit/

D. 我的電腦經常彈出「internet explorer腳本錯誤

那是網頁本身代碼寫的有問題,或者因為網路原因,網頁未在規定時間內載入完成造成的。不是IE問題。忽略即可。

E. 電腦剛開機時會跳出 windows script host 腳本錯誤

點擊:開始->運行->輸入:msconfig->確定:

運行系統配置實用程序,選擇啟動一項,

在啟動項目里找到結尾是VBS的文件,去掉選中的勾.

確定,應該就能解決了.

F. Win10系統開機後彈出「當前頁面腳本發生錯誤」怎麼辦

1.右擊IE圖標——屬性——高級——選中「禁用腳本調試」,取消「顯示每個腳本錯誤的通知」;2.右擊我的電腦圖標——屬性——高級——錯誤報告——選中「禁用錯誤報告」。 還不行,就------------ 一號方案【新P】 注意【原創】: 1.安全模式下,效果更好! 2. 以下所要使用的軟體,都要安裝或升級到最新版本,以保證使用的效果。 3. 不殺毒,直接使用以下方法也可以 。若效果不好,就先在安全模式下用優質殺毒軟體(如:卡巴斯基)殺一下,360安全衛士最好也用一下,之後,再用以下方法。 (用360安全衛士的「殺木馬」----「全盤掃描」。殺完重啟。) 以下方法,不一定都要用,可以一個一個去試。有時,僅第一個就管用了。

G. 電腦彈出一個微軟通知:我們正在更新我們的使用條款和隱私政策,可是點擊之後說庫沒注冊,腳本運行錯誤。

這個通知是微軟更改了服務協議和隱私聲明,對普通用戶沒有任何影響。腳本錯誤是IE問題,只要平時使用IE沒啥問題,這個就不用管。

H. 每次開機都會彈出一個實時調試..新實例Microsoft Script ...

你是不是有裝過微軟的什麼編輯軟體,像vb 等,重新安裝這些軟體
2、殺毒,可能是vbs病毒
3、看看開機的腳本(這個網路),
來踩踩我的網站!: