天天看點

紅藍對抗場景下的二三事

0x00 背景

未知攻焉知防,警察想要抓小偷,就該先摸透小偷的想法,才能更快捷的抓到小偷畢竟小偷抓小偷更容易。網絡安全的攻與防,好比“矛”與“盾”,要想不被“矛”輕易刺穿,不僅需要了解“矛”的作戰方式,同時也要不斷強化“盾”的防禦能力。謹以此文讨論一下在紅藍對抗場景下幾個關鍵的技術點的二三事

紅藍對抗場景下的二三事

0x01暴露面

大多數定向攻擊場景裡攻擊者都會針對受害者目标進行大量的資訊收集,比較常用的方式比如通過網絡空間搜尋引擎與各個網際網路技術論壇、開源站點等擷取到盡可能多的目标資訊、包括不局限于一些開源的應用、伺服器開發的特殊端口、常用的使用者名格式、密碼、網絡拓撲、内網網段、建站架構、資料庫類型、中間件版本、甚至是一些洩漏的V**帳号等。比如很多内部非技術類員工将一些V**技術指南上傳了百度網盤還共享給了其他人,裡面包含了帳号、V**接入IP或者預設密碼等資訊,被惡意攻擊者擷取到該資訊可能會直接導緻内網的被攻破。又或者是一個業務系統的開發人員,将自己的開源項目直接上傳到了github後并沒有修改裡面資料庫連接配接的配置檔案,抑或是該項目存在一些指令執行、任意檔案下載下傳等問題被攻擊者發現,也會造成極大的風險。

紅藍對抗場景下的二三事

針對防守方本身而已,首先需要做到就是對目前的網絡環境的安全狀态有一個比較合理的評估,結合對攻防的了解識别出網絡當中可能存在的風險,整理好目前的一些暴露面的資訊。就算千叮咛萬囑咐的要提高員工的資訊安全意識,當然這個也是老生常淡要想完全避免這些情況的發生也幾乎不可能,想要徹底解決此類問題更是難上加難。更多的努力應該是在梳理好内網的資産後,結合目前的業務邏輯與網絡拓撲分析出可能存在的入口點,識别風險與威脅針對性的做一些防護措施,加強通路控制、強制使用強密碼、周期性的更換密碼等方式都是一些合理且實用的方式。

0x02入口點邊界

攻擊者的對象是一個點,防禦的卻是一個面。對于大多數攻擊者來說滲透一個跨國大型的國有企業内網要比攻破一個小而精的金融網際網路要容易一些,比較組織結構複雜、網際網路資産更多容易出現更多的薄弱環節;主要的業務系統官方網站應用、CRM系統、業務系統往往有具備良好的安全防護,不同安全廠家的安全裝置估計也是各種安排,正常攻擊手法容易被攔截在大門之外。對于大型的集團類的公司下屬的子公司、下屬機關、冷門的業務系統系統、測試系統往往難度會降低不少,捏柿子還是軟的好。但同時風險也有 有時候不容易連接配接到母公司核心内網可能就做了一些無用功。是以至于入口點的邊界往往就不僅僅局限于目前網絡的邊界,這個網到底有多大也就隻有業務人員自己知道了。

紅藍對抗場景下的二三事

還有一些常見的入口點主要是一些網絡裝置的風險,比如V**、堡壘機、邊界路由器防火牆一類的,前幾年就有過國外某安全廠商的防火牆存在漏洞的問題。漏洞當然還是少數,預設使用者、預設密碼之類的反而更加常見一些,特别是針對特定場景下面結合工号、使用者名、密碼、TOP500常用姓名的爆破尤為危險。

紅藍對抗場景下的二三事

Web系統的弱密碼也是常見的入口點之一,對公網的web系統如果存在一些知名的RCE的話估計早就被各種挖礦、黑鍊、勒索給盯上了,但是特别一些非正常的弱密碼的風險類型就很高了比如P@ssw0rd、姓名+數字、以及結合特定公司場景、業務場景生成的弱密碼的情況。通過登入使用者上傳webshell 擷取讀取敏感資訊、注冊使用者資訊甚至擷取到系統shell的情況,可能會造成更大的風險。

0x03資料庫資産

資料庫資産也是經常收到攻擊者關注的方向之一,拿到了資料庫的權限後除了擷取到裡面的資料資訊之外也可以依次為跳闆進行下一步的攻擊。資料庫表裡面往往存儲有相關的使用者名、帳号等敏感資訊而往往内網裡面很多資産在密碼認可都能與之有關聯性。實在沒有思路,也能針對部分使用者實施針對性釣魚、社工也是一種突破手法。目前依然還是有不少企業将自己的資料庫映射到公網,還不設定相應的安全政策或者存在admin/123456 root/root一類的弱密碼問題,基本上就是送分題一樣的存在了。攻擊者拿到一個高權限的mssql使用者開啟xp_cmdshell之後,一個突破口帶來的就是内網漫遊擴大戰果了;大多數使用者往往也不會更改資料的端口都是預設的1521、3306、1433等,攻擊者拿出掃描器就掃描這些資料庫端口正中下懷,改成一個特定的5位數的端口,正常業務也不會通路就算掃描也掃描全全端口也才能發現,無形之下增加了發現難度也同時縮短了發現攻擊者的時間,一舉二得豈不快哉。

紅藍對抗場景下的二三事

本質上來說資料庫資産應該是重點關注的對象之一,除了加強密碼測試與安全測試之外,一個适合業務的通路限制往往就是最後一道防線。在攻擊者通過其他方式擷取到認證密碼之下,依然由于源IP的原因無法登入認證檢視到相應的資料,也不失為一種棄軍保帥的做法。

0x04 橫向移動

在攻擊者擷取到内網的跳闆機之後,下一步自然就是百尺竿頭更進一步。盡可能的擴大戰果。内網資産收集往往具備有很多的網絡行為,正常的存活性掃描、端口掃描、SYN掃描、Banner掃描、甚至是C段 B段的掃描流量層面動靜還是有點大的。在跳闆機上收集資訊動靜會小不少本地檢視一下ARP緩存、ifconfig看一下網關的位址等方式,雖然資訊有限但是基本上不會被流量層面的安全裝置發現。當然了掃描是有必要掃描的但是方法很多,動靜小點的方法也很多,這裡就不展開讨論。

有時候為了快速擷取權限拿下更多的伺服器,動靜大點也無所謂了。内網裡常見的漏洞利用比如MS17-010、MS08-067、RDP爆破、SMB暴力破解、資料庫爆破、S2漏洞利用、weblogic RCE系列等方式都是不錯的選擇,由于甲方對内網安全重視度不夠往往内網伺服器、主機很多安全更新檔都是沒有打的,内部的web系統也疏于修複高危漏洞、弱密碼問題、一個帳号多個登入的問題的情況是屢見不鮮,内網往往還有一些特殊的應用比如SVN、gitlab、zabbix、redis、企業wiki、OA系統等風險業務都可能是重大突破口。

紅藍對抗場景下的二三事

通過mimikatz擷取到跳闆機的使用者名密碼之後,對多個主機進行登入抓住幾個漏網之魚也不是什麼難事,說不定windows的賬戶還能登入linux伺服器甚至多個伺服器主機,如果能擷取到一些堡壘機、虛拟化管理平台的主機就更友善。

0x05内網穿透

大多數伺服器都在内網伺服器或者DMZ區域,出口位址經過NAT轉換後為公網提供服務,為了深一步的滲透内網和跨轉網段探測 同時增加一定的隐蔽性 一個合适的内網傳統就很有必要了。通過自建CS、MSF平台讓受控主機反彈shell連接配接回來本本質上動靜還是有點大,即使使用一定的隧道或者編碼混淆、特殊協定傳遞的方法,因為伺服器的外聯本身也是一種比較異常的行為容易被内網流量層的安全裝置發現,而且Client端容易被主機層面的殺軟給識别,由于Client端裡面包含CC端通信的IP、域名、端口等資訊容易暴露目标甚至被溯源,同時CS、MSF等知名工具的具備一定的流量特征也會被識别。

紅藍對抗場景下的二三事

使用一些常見的隧道提供商或者使用一些流量轉發的平台就比較重要了,例如目前常用的ngrok、frp、nps等此類工具特征流量往往都是基于TCP協定之上的,具備一定的隐蔽性同時防毒軟體也不會将其定義為惡意軟體。系統程序的利用也是較為不錯的方法常見的如powershell、SSH流量轉發等方法,上次更新的kali2的時候偶然間發現kali2都內建了nishang、Powersploit等架構。

紅藍對抗場景下的二三事

無檔案攻擊的方法的确更隐蔽一些。倘若上傳一個lcx一類的工具本地的殺軟估計會立馬報警,躺在了病毒隔離區裡面。Linux場景下,SSH自帶了此功能當然就更加隐蔽了基本上算是秋水了無痕,還有一些常見的隧道通信如HTTP、DNS、ICMP等都是不錯的選擇。

紅藍對抗場景下的二三事

0x06釣魚郵件

釣魚,釣大魚,釣鲸。與其把重心放在突破層層防禦體系上面,直接對人發起攻擊也是事半功倍的方法。現在主流的釣魚已經更新到釣鲸魚,針對特定對象建構特定的郵件主題、 附件與文檔正文,針對的對象比如一些管理人員、職能類的HR等場景,這些人的郵件位址往往也可以從招聘網站、社交平台獲得,結合特定場景與受害者的心理狀态建構一個特殊的誘餌檔案,軟體捆綁、Office CVE-2017-11882 CVE-2017-0199、Winrar CVE-2018-20250、office的混淆宏、僞造的PE檔案、HTA、CHM、Link檔案等多種方式,控制其電腦後植入遠控木馬,作為跳闆進行内網。

紅藍對抗場景下的二三事

0x07攻防對抗

攻防對抗的場景下和傳統的僵屍網絡、木馬、蠕蟲病毒類的檢測方法有相當大的差異性,主要表現在傳統的惡意程式更多的趨向于自動化攻擊,其攻擊特點表現在比較固定利用的漏洞、EXP都相差無幾且特征比較明顯,而且特征比較明顯沒有刻意的隐藏自己的行為,通常通過威脅情報、攻擊行為特征都能較好的識别,其風險等級都很高。攻防對抗的場景下的攻擊手法,較多的利用了一些人的弱點一些弱密碼、異常帳号登入、非法網絡接入、敏感資訊洩漏更多的是在一些行為上的特點,是以在識别惡意行為的時候更多的需要關注一些可疑的報警類型。基于單個報警的模式在場景下并不是很實用而往往防禦人員在識别低風險的報警的時候并不一定能發現其中的一些線索,這個時候就比較考驗防禦人員在攻防場景下的造詣了。

紅藍對抗場景下的二三事

在這種場景下建構一定的攻擊場景,自動化的将一些低可疑的線索進行聚合進行梳理提升相關的報警級别來引起重視就是一種不錯的方案。之前很多人讨論過關于AI算法模型的問題,本質上所謂AI也是将人的經驗賦能給代碼了而已,關鍵因素還是訓練資料從那裡擷取之後的訓練以及特征工程的相關細節,按照目前大多數的場景下面關鍵問題都還是在于特征工程和訓練資料的選取層面上,還沒有到達拼算法特性的優劣上面。

由于對抗場景下的很多行為也不是真正意義上的悄無聲息,由于大多數攻擊者對受害者網絡裡的業務邏輯并不是很熟悉,是以常常會出現很大層面的異常,這就埋下了被發現的隐患。被控制的跳闆機、洩漏的V**帳号、内網橫向的目标方向等等都會呈現與平時業務邏輯不一樣的地方,通過對業務邏輯的一個基線學習在真實的攻防場景下某敏感資産出現了一些非正常行為就是有很大的可能性被控制了,偏離基線的水準越大可疑性就越高。

0x08 總結

于筆者鄙見,多線索的關聯分析+基于行為的異常行為在識别進階攻擊的場景下對比正常的單事件的報警與攻擊行為比對上會有更多的識别效果。安全對抗的表面是攻擊技術與檢測防禦的技術演進,本質是人與人之間的投入、技術的博弈。之前有關注到部分文章提及到關于冰蠍、螞劍基于流量層面的檢測方案,仔細拜讀後覺得局限性還是比較大在針對部分初級白帽子不修改配置的前提下興許有檢出,若是針對性的做一些更改和特殊的字元拼接難度也不大,估計就會識别成正常流量了吧。

安全對抗的道路任重道遠,花裡胡哨的姿勢越來越多;文章最後說二句,做防禦方真的壓力好大一把辛酸淚,不但天天要膜拜各位滲透大佬的奇思妙想,抑或又是出了什麼新漏洞新病毒,還得分析檢測識别思路與解決方案 感覺最近頭發也是越來越少了好惶恐,最好再說一句有意換工作的技術大佬,可私信本人。

紅藍對抗場景下的二三事

*本文作者:si1ence,轉載請注明來自FreeBuf.COM