0x01 web日志
Web訪問日志記錄了Web服務(wù)器接收處理請(qǐng)求及運(yùn)行時(shí)錯(cuò)誤等各種原始信息。通過對(duì)WEB日志進(jìn)行的安全分析,不僅可以幫助我們定位攻擊者,還可以幫助我們還原攻擊路徑,找到網(wǎng)站存在的安全漏洞并進(jìn)行修復(fù)。
我們來看一條Apache的訪問日志:
127.0.0.1?-?-?[11/Jun/2018:12:47:22?+0800]?"GET?/login.html?HTTP/1.1"?200?786?"-"?"Mozilla/5.0? (Windows?NT?10.0;?WOW64)?AppleWebKit/537.36?(KHTML,?like?Gecko)?Chrome/66.0.3359.139?Safari/537.36"
通過這條Web訪問日志,我們可以清楚的得知用戶在什么IP、什么時(shí)間、用什么操作系統(tǒng)、什么瀏覽器的情況下訪問了你網(wǎng)站的哪個(gè)頁(yè)面,是否訪問成功。
0x02 日志分析技巧
在對(duì)WEB日志進(jìn)行安全分析時(shí),一般可以按照兩種思路展開,逐步深入,還原整個(gè)攻擊過程。
第一種:確定入侵的時(shí)間范圍,以此為線索,查找這個(gè)時(shí)間范圍內(nèi)可疑的日志,進(jìn)一步排查,最終確定攻擊者,還原攻擊過程。
第二種:攻擊者在入侵網(wǎng)站后,通常會(huì)留下后門維持權(quán)限,以方便再次訪問,我們可以找到該文件,并以此為線索來展開分析。
常用分析工具:
Window下,推薦用 EmEditor 進(jìn)行日志分析,支持大文本,搜索效率還不錯(cuò)。
Linux下,使用Shell命令組合查詢分析。
Shell+Linux命令實(shí)現(xiàn)日志分析,一般結(jié)合grep、awk等命令等實(shí)現(xiàn)了幾個(gè)常用的日志分析統(tǒng)計(jì)技巧。
Apache日志分析技巧:
1、列出當(dāng)天訪問次數(shù)最多的IP命令:cut?-d-?-f?1?log_file|uniq?-c?|?sort?-rn?|?head?-20 2、查看當(dāng)天有多少個(gè)IP訪問:awk?'{print?$1}'?log_file|sort|uniq|wc?-l 3、查看某一個(gè)頁(yè)面被訪問的次數(shù):grep?"/index.php"?log_file?|?wc?-l 4、查看每一個(gè)IP訪問了多少個(gè)頁(yè)面:awk?'{++S[$1]}?END?{for?(a?in?S)?print?a,S[a]}'?log_file 5、將每個(gè)IP訪問的頁(yè)面數(shù)進(jìn)行從小到大排序: awk?'{++S[$1]}?END?{for?(a?in?S)?print?S[a],a}'?log_file?|?sort?-n 6、查看某一個(gè)IP訪問了哪些頁(yè)面:grep?^111.111.111.111?log_file|?awk?'{print?$1,$7}' 7、去掉搜索引擎統(tǒng)計(jì)當(dāng)天的頁(yè)面: awk?'{print?$12,$1}'?log_file?|?grep?^"Mozilla?|?awk?'{print?$2}'?|sort?|?uniq?|?wc?-l 8、查看2018年6月21日14時(shí)這一個(gè)小時(shí)內(nèi)有多少IP訪問: awk?'{print?$4,$1}'?log_file?|?grep?21/Jun/2018:14?|?awk?'{print?$2}'|?sort?|?uniq?|?wc?-l
0x03 日志分析案例
Web日志分析實(shí)例:通過nginx代理轉(zhuǎn)發(fā)到內(nèi)網(wǎng)某服務(wù)器,內(nèi)網(wǎng)服務(wù)器某站點(diǎn)目錄下被上傳了多個(gè)圖片木馬,雖然II7下不能解析,但還是想找出誰通過什么路徑上傳的。
在這里,我們遇到了一個(gè)問題:由于設(shè)置了代理轉(zhuǎn)發(fā),只記錄了代理服務(wù)器的ip,并沒有記錄訪問者IP?這時(shí)候,如何去識(shí)別不同的訪問者和攻擊源呢?
這是管理員日志配置不當(dāng)?shù)膯栴},但好在我們可以通過瀏覽器指紋來定位不同的訪問來源,還原攻擊路徑。
1、定位攻擊源
首先訪問圖片木馬的記錄,只找到了一條,由于所有訪問日志只記錄了代理IP,并不能通過IP來還原攻擊路徑,這時(shí)候,可以利用瀏覽器指紋來定位。
瀏覽器指紋:
Mozilla/4.0+ (compatible;+MSIE+7.0;+Windows+NT+6.1;+WOW64;+Trident/7.0;+SLCC2;+.NET+CLR+2.0.50727;+.NET+CLR+3.5.30729; +.NET+CLR+3.0.30729;+.NET4.0C;+.NET4.0E)
2、搜索相關(guān)日志記錄
通過篩選與該瀏覽器指紋有關(guān)的日志記錄,可以清晰地看到攻擊者的攻擊路徑。
3、對(duì)找到的訪問日志進(jìn)行解讀
攻擊者大致的訪問路徑如下:
A、攻擊者訪問首頁(yè)和登錄頁(yè)B、攻擊者訪問MsgSjlb.aspx和MsgSebd.aspxC、攻擊者訪問Xzuser.aspxD、攻擊者多次POST(懷疑通過這個(gè)頁(yè)面上傳模塊缺陷)E、攻擊者訪問了圖片木馬
打開網(wǎng)站,訪問Xzuser.aspx,確認(rèn)攻擊者通過該頁(yè)面的進(jìn)行文件上傳了圖片木馬,同時(shí),發(fā)現(xiàn)網(wǎng)站了存在越權(quán)訪問漏洞,攻擊者訪問特定URL,無需登錄即可進(jìn)入后臺(tái)界面。通過日志分析找到網(wǎng)站的漏洞位置并進(jìn)行修復(fù)。
0x04 日志統(tǒng)計(jì)分析技巧
統(tǒng)計(jì)爬蟲:
統(tǒng)計(jì)瀏覽器:
IP 統(tǒng)計(jì):
統(tǒng)計(jì)網(wǎng)段:
統(tǒng)計(jì)域名:
HTTP狀態(tài):
URL 統(tǒng)計(jì):
文件流量統(tǒng)計(jì):
URL訪問量統(tǒng)計(jì):
腳本運(yùn)行速度:
查出運(yùn)行速度最慢的腳本
IP, URL 抽取:
相關(guān)文章教程:web安全教程