<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    干貨 | 紅隊攻防快速獲取入口權限總結

    VSole2023-01-15 10:28:22

    前言

    近年來各種大規模的紅藍對抗逐漸興起,攻防實戰受到了更多的重視。對抗時紅隊模擬真實黑客的攻擊行為,對企業網絡應用系統進行滲透攻擊,最終能發現企業平時未注意到的風險點,達到完善企業的安全體系的目的。

    本文站在紅隊攻擊的角度,介紹一種在紅隊攻擊初期快速通過已知Nday漏洞獲取入口權限的思路,并編寫成工具供紅隊滲透測試人員使用。

    紅隊攻擊流程概述

    在紅藍對抗中紅隊的攻擊流程大致可總結為以下幾點

    情報收集 => 入口權限獲取 => 內網信息探測 => 橫向移動 => 權限維持
    

    本文主要針對第二步入口‘入口權限獲取‘展開討論。

    獲取入口權限

    在真實的企業網絡中內網往往是脆弱的,通過一個入口權限進入內網后往往可以上線大量內網機器。所以入口權限的獲取至關重要。

    在大型的紅藍對抗中,要對一定地區的企業應用進行打擊,紅隊初期拿到目標有時會涉及成百上千個url和ip。

    在如此龐大的目標面前,初期通過常規滲透測試手法對單一系統進行測試是不合理的,這樣難以涉及到全部目標并且容易漏掉容易出現問題的系統。

    比較流行的方法是用工具批量化掃描,比如用goby + awvs + xray等常見漏洞掃描工具進行聯動,以達到批量測試目標獲取入口權限的目的。

    利用常見組件的漏洞

    利用漏掃聯動批量掃描的確是一個很好打點方法,但避免不了效率慢,ip被ban,流量易被檢測的問題。

    所以在紅隊攻擊的初期應該重將心放在各種主流 "中間件 + 開源程序 + Web服務組件" 歷史上爆出的各種Nday漏洞的檢測上面,通過這些漏洞的利用,我們可以很容易的getshell后進入內網。

    這里列舉一些常見漏洞組件


    struct2 (s2系列rce)
    thinkphp系列 (tp2x,3x,5x的代碼執行等)
    Jekins (未授權訪問,命令執行等)
    weblogic (CVE-2020-2551,CVE-2019-2729等)
    Jboss (反序列化CVE-2015-7501,CVE-2017-7504,CVE-2017-12149)
    各類開源cms的漏洞 (如wordpress,drupal ,discuz,joomla, 帝國cms,織夢cms等)
    常見編輯器的歷史漏洞 (如ueditor編輯器解析漏洞,各種越權和后臺地址泄露等)
    常見OA漏洞 (用友,泛微,致遠,金蝶等)
    各種網關防火墻nday,redis未授權,mongodb未授權,mysql認證繞過等
    

    在信息收集時EHole是一款優秀的紅隊工具,它可以從大量雜亂的資產中找到這些易受攻擊的系統,紅隊人員再利用對應組件的poc驗證目標系統是否存在漏洞,以達到快速獲取入口權限的目的。

    項目地址:https://github.com/popmedd/EHole

    高危漏洞的檢測與攻擊

    * POC:可以理解為一段驗證漏洞是否存在的程序,如果驗證成功,poc可以將漏洞存在的消息返回通知我們。一個poc往往對應一個或一類漏洞,并且poc只提供驗證的功能,不會利用漏洞對目標造成危害。
    * EXP:即為一段利用漏洞的程序,與poc對應,exp提供攻擊功能,exp通過利用漏洞攻擊目標以發揮這個漏洞帶來的危害。
    

    在識別到常見組件后,我們往往會利用該組件歷史漏洞的poc,來驗證是否有漏洞的存在

    如果驗證成功再利用該漏洞對應的exp攻擊目標系統,以獲取我們想要的信息,這需要紅隊測試人員在平時對常見組件的漏洞足夠了解,需要收集大量的poc/exp并能夠及時對相應漏洞進行復現和利用。

    對于紅隊人員來說,最好的情況是利用exp返回一個主機shell,這將直接進入內網滲透階段。

    所以在紅隊攻擊初期,一些危害性大的漏洞如 RCE,反序列化,任意文件上傳等往往得到格外的青睞,通過對這些漏洞的檢測利用我們可以很容易的打通入口隧道進入內網。

    而反之xss,crsf,業務邏輯漏洞,甚至是一些以時間為成本的sql注入在初期顯得不是特別重要,這些可以在攻擊中后期進行挖掘利用。

    goby提供poc驗證的功能,并且goby收集的poc基本都能獲取到主機的shell權限,滿足紅隊初期優先檢測高危漏洞的觀念,但也有很明顯的不足之處

    在紅藍攻防中紅隊時間緊任務重,一是goby的掃描速度堪憂,再者普通版goby中poc不能及時更新到新爆的高危漏洞,并且用goby只進行高危poc的檢測掃描無疑大材小用的。

    為了解決這種情況,我們可以編寫掃描器來快速對大量目標進行高危漏洞的poc驗證。

    POC的集成與自動化驗證

    要編寫一款適合紅隊快速打點的掃描器。

    掃描器的核心思想在于收集大量常見組件高危漏洞的poc,然后編寫一個框架加載這些poc,批量對多個目標進行fuzz測試。

    這款專為紅隊定制的掃描器旨在只要掃出漏洞即可搜索對應exp獲取目標shell權限。

    因為常見的poc都是以python腳本的形式分布在互聯網上,所以用python編寫掃描器框架可以很容易的加載調用這些poc進行漏洞驗證,我們只需要不斷收集這些poc并稍加改動即可。

    我們可以將一個poc編寫成一個檢測漏洞是否存在的函數存在掃描器的poc模塊中,并用框架去調用這些漏洞驗證函數。

    一個漏洞驗證函數的編寫思路可以如下:

    1. 函數的返回結果以字典的形式返回并且具有name和vulnerable兩個鍵值,name說明漏洞名稱,vulnerable通過True和False的狀態表明漏洞是否存在
    2. 示例函數如下(以 thinkphp5.0.22/5.1.29 的命令執行漏洞為例)
    def  thinkphp5022_5129_rce(url):
         relsult = {
             'name': 'Thinkphp5 5.0.22/5.1.29 Remote Code Execution Vulnerability',
             'vulnerable': False
         }
         try:
           ......
           (用任意方法檢測漏洞)
           ......
           if 存在漏洞:
               relsult['vulnerable'] = True     # 將relsult的vulnerable的值置為True
               relust['xxxxx'] = 'xxxxx'     # 可以添加該漏洞相關來源等信息
               ......
               return relsult     # 將vulnerable值為True的relsult返回
           else:  # 不存在漏洞
               return relsult    # 若不存在漏洞將vulnerable值為False的relsult返回
         execpt:
           return relsult
    

    這樣掃描器框架可以通過通過調用這個函數來實現poc的掃描驗證,通過返回字典中的vulnerable值來判斷漏洞是否存在。

    POC bomber

    POC bomber是筆者編寫的一款高危漏洞掃描器,其中集成了各種紅隊攻擊中常見組件高危漏洞的poc并能夠多線程多目標進行fuzz測試,是一款專門為紅隊定制的工具,適合在紅隊攻擊初期快速找到突破口。

    項目地址:

    https://github.com/tr0uble-mAker/POC-bomber

    此款掃描器支持thinkphp全版本,s2全版本,weblogic全版本的漏洞檢測,并整合多個hvv高危漏洞,poc有的是網上收集有的是筆者自己編寫,是很多掃描器的集合體,并且poc經過改動后誤報率很低,能大大減少紅隊人員的手工驗證漏洞時間。

    掃描器檢測結果:

    目前項目的poc在不斷更新中并及時更新最新高危漏洞的poc驗證(包括最近的泛微任意文件上傳-CNVD-2021-49104)

    漏洞漏洞挖掘
    本作品采用《CC 協議》,轉載必須注明作者和本文鏈接
    src漏洞挖掘淺談
    2023-02-20 11:22:13
    信息收集就說到這里,信息收集的主要目的就是擴大可利用面,10000萬個資產你可能碰到弱口令,但1個資產你肯定沒有弱口令挖掘前篇前邊已經講了信息收集,在測試前為了能高效的挖掘src,就需要有數據進行測試,這個數據就是我們常說的字典,字典怎么來,整理,收集,經驗,積累。金額,數量都是可以篡改的地方小結挖掘src漏洞最主要還是挖掘邏輯漏洞,無非就是耐心,細節,多留意數據包的可疑數據,數據包所實現的功能。
    首先要上分那么一定是批量刷漏洞,不然不可能上得了分的,然后呢,既然要批量刷漏洞。兩種思路:1.審計通用性漏洞2.用大佬已公布的漏洞思路1難度較大,耗時也較長。思路2難度適中,就是需要寫腳本或者使用別人已經寫好的腳本。這是泛微繼與微信企業號合作后,又一個社交化管理平臺的落地成果。簡單的說,一般比較大的企業都會用這個平臺來做一些釘釘或者微信接口對接泛微OA的功能。
    關于漏洞的基礎知識
    2022-07-20 09:44:23
    黑客可以通過修改事件完成的順序來改變應用的行為。所以,進行有效的驗證是安全處理文件的重要保證。這種類型的漏洞有可能是編程人員在編寫程序時,因為程序的邏輯設計不合理或者錯誤而造成的程序邏輯漏洞。這種類型的漏洞最典型的是緩沖區溢出漏洞,它也是被黑客利用得最多的一種類型的漏洞
    網絡安全漏洞(以下簡稱“漏洞”)作為信息通信網絡中在硬件、軟件、協議的具體實現或系統安全策略上存在的缺陷,隨著經濟社會信息化、網絡化、數字化和智能化程度的加深,對國家網絡安全的影響也日益加劇。世界各主要國家和組織為了切實提升國家網絡安全防護能力,圍繞漏洞的研究、收集和利用,紛紛建立國家級漏洞通報平臺或漏洞數據庫。日本于2003年開始建設“日本漏洞通報”(JVN)平臺;美國于 2005 年開始建設“
    細說從0開始挖掘cms-
    2022-08-17 16:26:57
    確立目標挖洞的第一步首先是確立一個目標,也就是找個cms來挖,這里可以通過github,gitee或者谷歌百度直接去搜cms。或者cnvd查看相應的信息,通過查看相應的信息可以提高我們挖洞的效率,我們從中可以知道該項目已經存在漏洞,我們到時候挖就可以看看相應的地方會不會還存在漏洞或者避免挖到別人挖過的漏洞。本次挖掘漏洞是ofcms,首先先下載一下源碼,然后解壓丟一邊,回到網頁來看一下項目文檔。
    最后對響應的匹配,使用正則識別id命令之后的結果。成功掃描出CVE-2022-1388F5 BIG-IP API Unauthenticated RCE漏洞漏洞的請求也變異無誤,最后的響應中也是執行了id命令。案例二:利用Scalpel工具挖掘多個0day漏洞Scalpel工具使用較為靈活,通過對檢測目標變異響應的check,可以發現檢測目標中未知的安全問題。同時發現某Apache開源項目的CVE漏洞,報告被該團隊接受并正在修復,尚未披露。
    攻擊者可在無需認證的情況下,通過構造特殊的請求,觸發反序列化,從而執行任意代碼,接管運行ForgeRock AM的服務器。本文從漏洞挖掘的角度分析其中的技術細節,也將公開一些其他的反序列化點。
    對于公益SRC來說,想要沖榜就不能在一個站上浪費大量時間,公益SRC對洞的質量要求不高,所以只要 花時間,還是可以上榜的。在對某站點進行測試SQL注入的時候,先通過一些方式測試是否可能存在漏洞,然后可以直接sqlmap一把梭,也可以手工測試,然后提交漏洞。任意注冊算是低危漏洞,不過也有兩分。不管是進行SRC漏洞挖掘,還是做項目進行滲透測試,又或者是打紅藍對抗,一定要做好信息收集。
    VSole
    網絡安全專家
      亚洲 欧美 自拍 唯美 另类