Crackmapexec 6.1.0 和一些雜項(xiàng)
Author:Xiaoli-小離
0x01 Intro
-
? 在內(nèi)網(wǎng)滲透中,一般收集到了憑據(jù),都會去用CME掛個(gè)代理去爆破一遍,嘗試擴(kuò)大你的戰(zhàn)果,但有個(gè)協(xié)議估計(jì)沒什么人會focus
-
? 本文也談?wù)勎医趯ME提交的PR,以及一些關(guān)于CME的事情
0x02 被人遺忘的協(xié)議 - WMI / RPC(ncacn_ip_tcp)
-
? 相信大家對CME的使用流程已經(jīng)基本很熟悉了,收集到憑據(jù)后,美美的跑一波SMB + WINRM爆破,所以普遍來說,管理員印象中只對445,139特別關(guān)照,而WINRM這個(gè),實(shí)戰(zhàn)沒遇到多少臺機(jī)器開,基本上也可以忽略了,除了你打HTB之外
-
? 很早之前Orange-Cyberdefense也寫過這個(gè)協(xié)議,但是CME已經(jīng)更新多個(gè)版本了,這個(gè)模塊也是用不了了,這也萌生了重寫的想法 [Orange-Cyberdefense/cme-wmi: A standalone WMI protocol for CrackMapExec (github.com)]https://github.com/Orange-Cyberdefense/cme-wmi 一個(gè)看上去什么都沒的內(nèi)網(wǎng)

-
但是,讓我們切換到135,此時(shí)出現(xiàn)了驚喜

-
目前我給這兩個(gè)協(xié)議預(yù)留了兩種命令執(zhí)行方法,第一種是普通的wmiexec,但是也是不使用SMB,第二種則是和wmiexec-Pro一樣的方法,原定計(jì)劃還有第三種,atexec,(其實(shí)只需要改一改代碼,就可以讓atexec不走ncacn_np,走ncacn_ip_tcp,要考慮的就是防火墻問題了) 目前你可以在CME體驗(yàn)到該協(xié)議,具體的Commit你可以在CME官方看到,mpgn也以該P(yáng)R為CME 6.1.0劃上了句號(感動 TAT)
0x03 RDP模塊重寫
-
? 使用效果和wmiexec-Pro一樣,通過wmi開啟,不需要cmd

0x04 題外話1 - 武器化你的工具
-
? 還有很多bug修復(fù)之類的,這里就不一一說了,有興趣的可以去看我的commit
-
? 此外,我最近看到很多文章,都在寫impacket GUI,什么什么impacket圖形化之類的,但是我沒get到意義何在,更有甚者JAVA套殼impacket,我承認(rèn)java很屌,但是寫這些東西,真的有意義嗎?(似乎在往一條錯(cuò)誤的道路前進(jìn),也許我是傻逼,沒看懂操作,歡迎多多指教)
-
? 很多時(shí)候,我們需要快準(zhǔn)狠的工具作為內(nèi)網(wǎng)滲透,但是像CME這種已經(jīng)很成熟的工具,動動手指,基本上就可以寫出一個(gè)CME模塊,并且剩下你大量的時(shí)間
-
? 以下是一個(gè)例子:上一篇文章我寫了個(gè)zerologon-Shot,但是有不少人私下找我反饋,參數(shù)太麻煩,基本上沒啥bug,都能做到自動恢復(fù)DC密碼 看到CME,已經(jīng)是很屌的一個(gè)核心了,因此可以基于該核心編寫一個(gè)模塊 如圖所示,當(dāng)你還在慢慢尋找恢復(fù)密碼的命令/腳本,綁定Hosts,找筆記之類的繁瑣過程,而我已經(jīng)可以做到一步到位,剩下的時(shí)間用來截圖寫報(bào)告之類的

0x05 題外話2 - 是否要打開潘多拉魔盒?
-
? CME雖然支持rdp協(xié)議,但是用的是aardwolf,這個(gè)項(xiàng)目是真的屌,但是也存在許多BUG,例如判斷信息非常不準(zhǔn)確,如圖所示,和調(diào)用popen的xfreerdp相比,這種錯(cuò)誤是實(shí)戰(zhàn)不允許的
-

-
? 但是和其他開發(fā)者交流過,他們覺得不應(yīng)該打開這個(gè)Popen潘多拉魔盒,目前你需要的話可以在這里獲取到相關(guān)代碼 [XiaoliChan/CrackMapExec-Extension: CrackMapExec extension module/protocol support (github.com)]https://github.com/XiaoliChan/CrackMapExec-Extension
0x06 題外話2 - 交PR的心得
-
? 在給CME交PR的過程中,不僅能鍛煉你的英語,更重要的是,你能知道其他開發(fā)者這么想,而我更喜歡這一種氛圍
-
? 代碼要注意規(guī)范,不然會被卡rewiew,WMI那個(gè)PR就是了,九世看著我寫,卡PR卡了挺久的
-
? 早在上一年,我就看到mpgn在給CME 的contributiors贈送CME 紀(jì)念幣,但是努力也換來了回報(bào)

0x07 題外話3 - CME代碼之爭
-
? 在mpgn發(fā)布6.1.0之后,原先的作者byt3bl33d3r想繼續(xù)發(fā)布半開源(現(xiàn)在的狀態(tài)時(shí),他更偏向于把代碼商業(yè)化),以sponsorware模型發(fā)布CME(贊助者能比開源版早獲取1-2個(gè)月的代碼更新),最終的結(jié)局就是mpgn退出了他們的組織,同時(shí)遭到多名開發(fā)者反對sponsorware,堅(jiān)持要求全開源 [So what happens now? the future of CrackMapExec · Porchetta-Industries/CrackMapExec · Discussion #801 (github.com)]https://github.com/Porchetta-Industries/CrackMapExec/discussions/801
-
? 和mpgn私下聊了,他表示不會再去管理任何關(guān)于CME的東西,等他下個(gè)新項(xiàng)目(我也不知道是什么項(xiàng)目)
-
? 同時(shí)和另外一名開發(fā)者neff也聊了,他表示會fork一份出來,和他一起維護(hù):[Pennyw0rth/CrackMapExec: A swiss army knife for pentesting networks (github.com)]https://github.com/Pennyw0rth/CrackMapExec
0x08 Outro
-
? 原PO文:[(1) X 上的 mpgn:“New release of crackmapexec is out ! 6.1.0?? This version now support of a new protocol : WMI by @Memory_before ! If the SMB port is filtered, you can still pwn3d everything !! ?? Quick list of improvements ?? - CME now works against Windows 2003 and Windows 7 (it was broken)… https://t.co/0HMu538enM” / X (twitter.com)]https://twitter.com/mpgn_x64/status/1698384195641389559
-
? 文章有些地方是我本人的觀點(diǎn),只代表我本人,如果你覺得有更好的心得,亦或者感到困惑,有疑問,歡迎各位留言,我有時(shí)間也會一一解答,虛心傾聽各位意見
-
? 感謝mpgn和neff,這兩位大哥幾乎天天幫我檢查代碼,估計(jì)眼都要瞎了XD
-
? mpgn's twitter:[mpgn (@mpgn_x64) / X (twitter.com)]https://twitter.com/mpgn_x64
-
? neff's twitter: [Alex neff (@al3x_n3ff) / X (twitter.com)]https://twitter.com/al3x_n3ff
-
? 有大哥人寫了一篇文章,有興趣可以去看看:[X 上的 Kostas:“New blog: Understanding Red to Be Better at Blue: Navigating New CrackMapExec Updates ?Keeping up with the red team ?Breaking down CME’s new key features ?From code to behavioural hunting & detections ?Illustrations with examples https://t.co/ok1gZS7JXX” / X (twitter.com)]https://twitter.com/Kostastsale/status/1699082642988122622
