日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
云沙箱流量識別技術(shù)剖析

相信大家都知道,沙箱識別是老生常談的話題了,目前大部分的識別方案都是基于樣本側(cè)去完成的。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),城陽企業(yè)網(wǎng)站建設(shè),城陽品牌網(wǎng)站建設(shè),網(wǎng)站定制,城陽網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,城陽網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

例如常規(guī)方式,包括硬件檢查(CPU核心數(shù)、輸入輸出設(shè)備、內(nèi)存)、鼠標(biāo)移動檢查、進(jìn)程名、系統(tǒng)服務(wù)、開機(jī)時長等,都不能直觀準(zhǔn)確地識別出目標(biāo)進(jìn)行流量交互的服務(wù)器是否是沙箱環(huán)境。

舉個例子,之前看到有師傅使用鼠標(biāo)移動檢查的方式去識別目標(biāo)是否是沙箱虛擬機(jī)環(huán)境。 那么問題來了,這種方式在釣魚的場景下,我們雖然知道目標(biāo)是PC客戶端,有人使用這臺電腦,但是對于目標(biāo)是服務(wù)器場景的情況下,這種方法就不適用了。

運維人員并不會時刻都在每臺服務(wù)器前面操作,所以我們需要一種更加優(yōu)雅的識別方式。

當(dāng)然,沙箱是快照還原,時間一般都存在問題。并且由于進(jìn)行sleep加速,意味著這時候在樣本側(cè)進(jìn)行延遲執(zhí)行操作會被沙箱反調(diào)。

一旦樣本被反調(diào)了,那么其樣本就身處異常環(huán)境下,這時候延遲幾秒后獲取本地時間,就能夠識別出異常。

這當(dāng)然也是一種很好的反調(diào)試手段。但是,上述這些操作都是在樣本側(cè)完成的,需要定制化腳本實現(xiàn)功能,出現(xiàn)問題后進(jìn)行排查等等都會比較麻煩。

本文將深入淺出地講解基于流量側(cè)對沙箱請求流量進(jìn)行識別的方法,這種方法也能更易部署且有效識別,從而針對性的反制沙箱分析流量。

1 TLS JA3指紋

正式講解流量側(cè)識別云沙箱技術(shù)之前,我們先簡述一下TLS JA3(S)指紋的基本概念。

JA3為客戶端與服務(wù)器之間的加密通信提供了識別度更高的指紋,通過TLS指紋來識別惡意客戶端和服務(wù)器之間的TLS協(xié)商,從而實現(xiàn)關(guān)聯(lián)惡意客戶端的效果。

該指紋使用MD5加密,易于在任何平臺上生成,目前廣泛應(yīng)用于威脅情報。例如,在某些沙箱的樣本分析報告中,可以看到以此佐證不同樣本之間的關(guān)聯(lián)性的樣例。

如果可以掌握C2服務(wù)器與惡意客戶端的JA3(S),即使加密流量且不知道C2服務(wù)器的IP地址或域名,我們?nèi)匀豢梢酝ㄟ^TLS指紋來識別惡意客戶端和服務(wù)器之間的TLS協(xié)商。

相信看到這里大家就能想到,這也正是對付域前置、反向代理、云函數(shù)等流量轉(zhuǎn)發(fā)隱匿手段的一種措施,通過沙箱執(zhí)行樣本識別與C2之間通信的TLS協(xié)商并生成JA3(S)指紋,以此應(yīng)用于威脅情報從而實現(xiàn)輔助溯源的技術(shù)手段。

JA3通過對客戶端發(fā)送的ClientHello數(shù)據(jù)包中的以下字段收集字節(jié)的十進(jìn)制值: SSL 版本、接受的密碼、擴(kuò)展列表、橢圓曲線、橢圓曲線格式。

然后它將這些值按順序連接在一起,使用“,”分隔每個字段,使用“-”分隔每個字段中的每個值。

示例:

771,39578-4865-4866-4867-49195-49199-49196-49200-52393-52392-49171-49172-156-157-47-53,23-65281-10-11-35-16-5-13-18-51-45-43-27-17513-21,56026-29-23-24,0

MD5編碼:

9ef1ac1938995d826ebe3b9e13d9f83a

如上示例,最終得到并應(yīng)用的JA3指紋即:

9ef1ac1938995d826ebe3b9e13d9f83a

之前文章提到的JARM與JA3(S)都是TLS指紋,那么他們的區(qū)別是什么呢?

一是JARM指紋是主動掃描并生成指紋的,類似FUZZ的效果;

二是JA3(S)是基于客戶端與服務(wù)端流量交互識別并生成的指紋。

2 基于流量的云沙箱識別

上面簡述了JA3(S)指紋的概念,這里應(yīng)用到識別沙箱流量,也是類似的原理。我們需要一個基礎(chǔ)設(shè)施可以監(jiān)控識別上線主機(jī)和C2服務(wù)器之間的TLS協(xié)商,從而生成請求主機(jī)的JA3指紋。

這里我們以RedGuard舉例。

通過上圖不難看出,RedGuard充當(dāng)著C2服務(wù)器與上線主機(jī)流量交互的代理主機(jī),所有的流量都會經(jīng)由它轉(zhuǎn)發(fā)到C2服務(wù)器上,那么在這個過程中,我們基于流量側(cè)生成并識別JA3指紋的想法就可以實現(xiàn)了,在不修改后端C2設(shè)施源碼的基礎(chǔ)上,賦予了生成識別JA3指紋的功能。

在云沙箱的立場上,通過監(jiān)控樣本與C2服務(wù)器之間流量交互,生成JA3(S)指紋,識別惡意客戶端,從而進(jìn)行關(guān)聯(lián)。

而我們逆向思考,同樣作為C2前置的流量控制設(shè)施,我們也可以進(jìn)行這樣的操作獲取客戶端請求的JA3指紋,通過對不同沙箱環(huán)境的調(diào)試,獲取這些JA3指紋形成指紋庫,從而形成基礎(chǔ)攔截策略。

在測試某廠商沙箱環(huán)境時發(fā)現(xiàn),其請求交互的出口IP雖然數(shù)量不大,但是通過IP識別沙箱并不準(zhǔn)確,并且這是很容易改變的特征,但是其在多種不同配置的相同系統(tǒng)環(huán)境下JA3指紋是唯一的。

設(shè)想在分階段木馬交互的過程中,加載器會首先拉取遠(yuǎn)程地址的shellcode,那么在流量識別到請求符合JA3指紋庫的云沙箱特征時,就會進(jìn)行攔截后續(xù)請求。那么無法獲取shellcode,不能完成整個加載過程,沙箱自然不能對其完整的分析。

如果環(huán)境是無階段的木馬,那么沙箱分析同樣無法最終上線 到C2服務(wù)器上,相信大家都有睡一覺起來,C2上掛了一大堆超時已久的沙箱記錄的經(jīng)歷吧。

當(dāng)然理想狀態(tài)下,我們可以對不同沙箱環(huán)境進(jìn)行識別,這主要也是依賴于指紋庫的可靠性。

3 識別網(wǎng)絡(luò)空間測繪掃描

在測試的過程中,指紋庫添加GO語言請求庫的JA3指紋后,監(jiān)測RedGuard請求流量情況??梢钥吹?,大部分的請求觸發(fā)了JA3指紋庫特征的基礎(chǔ)攔截。

這里我猜測其測繪產(chǎn)品在該掃描中,底層語言是以GO語言實現(xiàn)的大部分掃描任務(wù)。通過一條鏈路,不同底層語言組成的掃描邏輯最終完成了整個掃描任務(wù),這也就解釋了部分測繪產(chǎn)品的掃描為什么觸發(fā)了GO語言請求庫的JA3指紋攔截特征。

當(dāng)然,觸發(fā)攔截規(guī)則的請求都會被重定向到指定URL站點。

4 后記

JA3(S)指紋當(dāng)然是可以更改的,但是會很大程度上提高成本,同樣,修改基礎(chǔ)特征無法對其造成影響。如果準(zhǔn)備用劫持的方式去偽造JA3指紋,并不一定是可行的,OpenSSL會校驗extension。如果和自己發(fā)出的不一致,則會報錯:

OpenSSL: error:141B30D9:SSL routines:tls_collect_extensions:unsolicited extension

偽造JA3指紋可以看以下兩個項目:

"https://github.com/CUCyber/ja3transport"

"https://github.com/lwthiker/curl-impersonate"

通常自主定制化的惡意軟件會自己去實現(xiàn)TLS,這種情況下JA3指紋可以唯一的指向它。但是現(xiàn)在研發(fā)一般都會用第三方的庫,不管是諸如Python的官方模塊還是win下的組件,如果是這種情況,那么JA3就會重復(fù),誤報率很高。

當(dāng)然應(yīng)用到我們的流量控制設(shè)施,其實不需要考慮這些固定組件的問題,因為并不會有正常的封裝組件的請求,多數(shù)也是上面提到某些語言編寫的掃描流量。反而以此對這些語言請求的JA3指紋封裝進(jìn)指紋庫,也能起到防止掃描的效果。


網(wǎng)站欄目:云沙箱流量識別技術(shù)剖析
文章分享:http://www.5511xx.com/article/dppicjh.html