通過Nvidia簽名的二進位制檔案執行系統命令
前段時間,在PowerMemory上工作時,我在其中一臺電腦上發現了一個由Nvidia配置的隱藏帳戶(https://twitter.com/pabraeken/status/651369704746020864)。
然後,當我看到Hexacorn文章(http://www.hexacorn.com/blog/2017/11/10/reusigned-binaries-living-off-the-signed -land /)時,我非常開心。
我開始尋找Nvidia其他類似的可執行系統命令,以及Nvidia的合法性。
我發現這一個:
執行它,之後看他的引數很有希望執行命令。
命令列表包括Hexacorn發現的:
AddUninstall,Call,CheckPath,CheckRAID,ClassSweep,Copy,CopyV,CreateDevice,CreateShortcut,Del,DelBoot,DelBootQuiet,DelIniIfMatched,DelOemInfs,DelReg,DelRegE,DirAndApply,Echo,EnumDevices, EnumRegCmd,EnumRegNamesCmd,Eval,FindOEMInf,GetDrivePort,GetFolderPath,GetInfGUID,GetReg,Help,If,InstallDriver,InstallDriverEx,KillApp,RemoveDevice,Run,RunOnce,SendMessage,Set,SetEnv,SetReg,Sleep,Splash,StartLogging,StopLogging,SysCallAndWait,系統,UnifyUninst,解除安裝,UnInstallEx,UninstallGUI,UninstallService,WaitOnRegDel
以下這些命令的說明:
· Decrement: 以數字方式減少變數
· Increment: 以數字方式增加一個變數
· DisplayControlPanel:顯示有關顯示控制皮膚解除安裝的訊息。
· AskToCloseAndExitIfRunning:給定應用程式名稱,列舉所有正在執行的應用程式以進行匹配。如果找到,則提示使用者關閉應用程式。
· RemoveDriverStore:使用setupdi呼叫從系統中刪除與給定描述相匹配的任何裝置。 Enum可以是(PCI,EISA等),HWID通常是VEN_10DE,裝置型別可以是DISPLAY,HDC,MEDIA,NET,SYSTEM。
· RemoveDeviceEx:使用setupdi呼叫從系統中刪除與給定描述相匹配的任何裝置。 Enum可以是(PCI,EISA等),HWID通常是VEN_10DE,裝置型別可以是DISPLAY,HDC,MEDIA,NET,SYSTEM。
· DisableDevice:使用setupdi呼叫禁用與系統中給定描述相匹配的任何裝置。 Enum可以是(PCI,EISA等),HWID通常是VEN_10DE,裝置型別可以是DISPLAY,HDC,MEDIA,NET,SYSTEM。
· RemoveUpperFilter:從指定它的任何裝置中刪除過濾器服務。
· StopService:解除安裝給定的服務名稱。
· RmString:如果找到,則從原始字串中刪除該字串,並將結果儲存到新變數中。
· DelAll:刪除給定的資料夾,如果它存在,它也刪除資料夾內的內容。
· DisplayControlPanel:顯示有關顯示控制皮膚解除安裝的訊息。
· AskToCloseAndExitIfRunning:給定應用程式名稱,列舉所有正在執行的應用程式以進行匹配。如果找到,則提示使用者關閉應用程式。
· RemoveDriverStore:使用setupdi呼叫從系統中刪除與給定描述相匹配的任何裝置。 Enum可以是(PCI,EISA等),HWID通常是VEN_10DE,裝置型別可以是DISPLAY,HDC,MEDIA,NET,SYSTEM。
· RemoveDeviceEx:使用setupdi呼叫從系統中刪除與給定描述相匹配的任何裝置。 Enum可以是(PCI,EISA等),HWID通常是VEN_10DE,裝置型別可以是DISPLAY,HDC,MEDIA,NET,SYSTEM。
· DisableDevice:使用setupdi呼叫禁用與系統中給定描述相匹配的任何裝置。 Enum可以是(PCI,EISA等),HWID通常是VEN_10DE,裝置型別可以是DISPLAY,HDC,MEDIA,NET,SYSTEM。
· RemoveUpperFilter:從指定它的任何裝置中刪除過濾器服務。
· StopService:解除安裝給定的服務名稱。
· RmString:如果找到,則從原始字串中刪除該字串,並將結果儲存到新變數中。
· DelAll:刪除給定的資料夾,如果它存在,它也刪除資料夾內的內容。
執行 calc.exe
檢視資訊顯示我們該檔案需要管理員許可權(與Hexacorn描述的二進位制檔案nvuhda.exe和nvuhda6.exe完全相同)。
Sigcheck -m nvudisp.exe
這是一個有意義的研究,攻擊者可以用來打破標準的EDR檢測規則。
原文釋出時間為:2018-05-24
本文來自雲棲社群合作伙伴“嘶吼網”,瞭解相關資訊可以關注“嘶吼網”。
相關文章
- 6.3建立自己執行的二進位制檔案
- 通過二進位制頭識別檔案型別型別
- 淺談從原始碼檔案到二進位制可執行檔案的過程原始碼
- iOS系統分析(二)Mach-O二進位制檔案解析iOSMac
- 通過OpenSSL來生成二進位制格式證書檔案(pfx和cer)
- 二進位制檔案複製
- php寫二進位制檔案PHP
- 二進位制檔案拷貝
- od 轉儲 二進位制檔案常用命令
- 二進位制檔案視覺化(二)視覺化
- C#的二進位制檔案操作C#
- 文字檔案與二進位制檔案的區別
- 檔案操作(二進位制拷貝)
- Git處理二進位制檔案Git
- MySQL二進位制檔案(binlog)MySql
- 不知jdon有沒有研究過二進位制class檔案的
- offer通過--10二進位制中統計1的個數-2
- 介面返回二進位制檔案的下載。
- Python讀寫二進位制檔案Python
- Java二進位制Class檔案格式解析Java
- c++ 二進位制儲存檔案C++
- 使用UltraEdit 拷貝二進位制檔案
- WebLogic之Java反序列化漏洞利用實現二進位制檔案上傳和命令執行WebJava
- 5 個找出“二進位制命令”描述和系統中位置的方法
- 透過禁止比較讓 Go 二進位制檔案變小Go
- Oracle建立二進位制檔案索引的方法(轉)Oracle索引
- MySQL 匯出匯入二進位制檔案MySql
- UltraEdit--二進位制檔案編輯功能
- 用shell處理二進位制檔案(轉)
- UE複製貼上二進位制檔案
- 二進位制檔案記憶體對映記憶體
- mysqlbinlog命令詳解 Part 7 備份二進位制日誌檔案MySql
- 『學了就忘』Linux檔案系統管理 — 67、通過命令模式進行LVM分割槽Linux模式LVM
- 二進位制,八進位制,十進位制,十六進位制的相互轉換
- 二進位制與二進位制運算
- 二進位制檔案安裝安裝etcd
- C++ 讀取二進位制檔案到char*C++
- C/C++ 二進位制讀寫 png 檔案C++