日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

【网络安全】Windows cmd的命令混淆学习思路

發(fā)布時間:2025/3/21 windows 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【网络安全】Windows cmd的命令混淆学习思路 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言

最近有些朋友問我一些免殺問題,由于個人技術(shù)有限,對靜態(tài)免殺有些了解(動態(tài)免殺真的不會,太菜了),所以就總結(jié)了一些Windows中cmd的命令混淆思路,靜態(tài)免殺無非就是對安全設(shè)備檢測到代碼(命令)中的特征字符進(jìn)行查殺、過濾,首先做的就是對于特征字符的處理,隨后就是對環(huán)境中限制的字符替換或混淆,從而達(dá)到免殺效果。

【查看資料】

一、選項(xiàng)字符替換

CMD命令中可以執(zhí)行ping 命令,該命令是由unix系統(tǒng)移植過來的,幫助頁面建議命令行選項(xiàng)應(yīng)使用連字符作為選項(xiàng)字符,例如ping -n 1 127.0.0.1. 這與大多數(shù)其他使用正斜杠的 Windows 原生命令行工具不一致。大概是為了幫助有疑問的用戶,該程序還接受正斜杠作為選項(xiàng)比如 ping /n 1 127.0.0.1也能運(yùn)行的。

大多數(shù)使用連字符的內(nèi)置 Windows 可執(zhí)行文件也接受正斜杠,但有的命令卻不可以,例如find /i keyword,該命令將顯示包含單詞“keyword”的所有文件,但find -i keyword會提示語句錯誤。

二、字符替換

Unicode修飾符替換

另一種方法是用類似的字符替換命令行中的其他字符(即除了選項(xiàng)字符之外)。特別是當(dāng)你考慮整個 Unicode 范圍時,在某些進(jìn)程可能接受的 ASCII 范圍中還發(fā)現(xiàn)了許多字母變體。

涉及到的 Unicode 字符? ? ? ? ? ? ? ? ?

? 修飾字母小寫 W

? 修飾字母小寫 Y

? 修飾字母小寫 H

? 帶鉤的修飾字母小寫 H

? 修飾字母小寫 J

? 修飾字母小寫 R

? 修飾字母小寫 L

? 修飾字母小寫 S

? 修飾字母小寫 X

Unicode 包含一個間距修飾字母范圍(0x02B0 - 0x02FF) [ 4 ],其中包括 ?、? 和 ? 等字符。一些命令行解析器將它們識別為字母并將它們分別轉(zhuǎn)換回 l、x 和 s。這方面的一個例子是reg,它將reg export HKCU out.reg和reg e?port HKCU out.reg視為平等。

因?yàn)榫幋a問題顯示 ? 為方框

逗號、分號替換空格

使用 ; (分號) 和 , (逗號)替換合法空格,但是在某些命令中無法替換,例如:net user會提示語法錯誤。

三、 字符插入

同樣,有時可以在命令行中插入額外的字符,這些字符將被執(zhí)行程序忽略。例如,某些可執(zhí)行文件可能會刪除不可打印的字符,同時也可能會過濾掉某些可打印的字符。

例如,Windows 事件日志工具wevtutil似乎接受在隨機(jī)位置插入某些范圍內(nèi)的 Unicode 字符(?)的命令行。因此執(zhí)行wevtutil gli hardwareeventsandwevtutil g?li hardwareevents將產(chǎn)生完全相同的輸出,盡管后者在第一個參數(shù)的中間包含一個阿拉、伯字母。

還有常見的 ^ 轉(zhuǎn)義字符插入

插入多個(),也不會影響命令運(yùn)行

四、 行情插入

在保持流程完整的同時操縱命令行的另一種方法是插入引號。盡管這聽起來像是先前技術(shù)的一個子集,但這里的要求是引號成對出現(xiàn)。

您可能熟悉在參數(shù)周圍加上引號的概念。就拿dir "c:\windows"例如,這是有效的一樣dir c:\windows\,由于缺乏空間。大多數(shù)程序都接受這個約定。鮮為人知的是,大多數(shù)程序在任意位置接受引號:該命令dir c:“win"d”"ow"s"也可以工作。只要每個參數(shù)的引號數(shù)是偶數(shù)并且后面的引號不超過兩個,大多數(shù)程序似乎都接受這一點(diǎn)。

五、環(huán)境變量

在cmd命令行中支持設(shè)置環(huán)境變量和自定義變量,使用環(huán)境變量中的值或字符串可以拼接成想要的命令。例如whoami,將am 設(shè)置變量為 t,將命令拼接成who%t%i,執(zhí)行成功。

利用@在cmd中的特性,@表示后面的命令不顯示執(zhí)行

六、參數(shù)縮寫

插入和替換字符后,我們還需要嘗試刪除字符。一些應(yīng)用程序允許為其他冗長的命令行選項(xiàng)提供“速記”,從而更容易記住這些命令,或者縮短命令字符個數(shù)。

這是基于 Unix 的工具(例如grep -i keywordvs grep --ignore-case keyword)中的一個眾所周知的概念,但在 Windows 上則不然。然而,一些程序接受縮短的版本。有些程序采用與 Unix 類似的方法并接受單字母版本(例如cmdkey /lvs cmdkey /list),有些程序接受其他縮寫版本(例如wevtutil glivs wevtutil get-loginfo),而其他程序則采用“通配符方法”。這方面的一個例子是 PowerShell,它的許多關(guān)鍵字允許您在關(guān)鍵字 [ 5 ]的末尾省略一個或多個字符。

需要注意的是有些命令的縮寫會出現(xiàn)一些沖突。可以查看powershell相關(guān)文檔。

免殺的方法有很多,只要思路靈活,靜態(tài)免殺很容易的。

命令混淆工具已經(jīng)有好多大佬開發(fā)出來了,詳細(xì)用法大家可以自己研究(網(wǎng)上已經(jīng)有很多了),命令混淆過靜態(tài)免殺很簡單,在這里提供一個簡單的樣例供大家參考。

下載地址:https://github.com/danielbohannon/Invoke-DOSfuscation

大概使用方法也很簡單。

下載文件后再當(dāng)前目錄運(yùn)行powershell,導(dǎo)入使用的模塊 Import-Module .\Invoke-DOSfuscation.psd1 ;

再運(yùn)行程序Invoke-DOSfuscation ;

可以查看工具的基本使用方法TUTORIAL

Set command //設(shè)置需要混淆的命令

Set FINALBINARY
//設(shè)置命令運(yùn)行的環(huán)境

加載混淆模塊,(可以查看下當(dāng)前目錄下的文件夾,不同文件有不同的混淆效果)

使用show命令查看當(dāng)前命令設(shè)置的參數(shù)情況

\5. 可以使用test命令再當(dāng)前窗口進(jìn)行測試混肴過后的命令;

復(fù)測下再cmd 中運(yùn)行的結(jié)果;


其中有很多混淆方法,可以自己看下教程,在這里就不一一舉例了。混淆只是可以過一些靜態(tài)面紗,靜態(tài)免殺無非就是針對特征字符的處理,靜態(tài)免殺的方法千千萬,基本原理不會變,這里只是提供一種思路,供大家參考。參考文獻(xiàn)

關(guān)注我,持續(xù)更新!!!

私我獲取【網(wǎng)絡(luò)安全學(xué)習(xí)資料·攻略】

總結(jié)

以上是生活随笔為你收集整理的【网络安全】Windows cmd的命令混淆学习思路的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。