Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> 電腦軟件教程 >> 服務器技術 >> 關於服務器 >> 根據Web服務器的記錄來追蹤黑客

根據Web服務器的記錄來追蹤黑客

日期:2017/2/8 10:33:50      編輯:關於服務器

現今的網絡,安全越來越受到大家的重視,在構建網絡安全環境時,在技術手段,管理制度等方面都逐步加強,設置防火牆,安裝入侵檢測系統等等。但網絡安全是個全方位的問題,忽略哪一點都會造成木桶效應,使得整個安全系統虛設。本文從分析Web服務器的logging記錄來找出漏洞,防范攻擊,從而加強Web服務器安全。 

  Web服務是Internet所提供最多,最豐富的服務,各種Web服務器自然也是受到攻擊最多的,我們采用了很多措施來防止遭受攻擊和入侵,其中查看Web服務器的記錄是最直接,最常用,又比較有效的一種方法,但logging記錄很龐大,查看logging記錄是很繁瑣的事情,如果抓不住重點,攻擊線索就容易被忽略。下面就對最流行的兩類Web服務器:Apache和IIS做攻擊的實驗,然後在眾多的記錄中查到攻擊的蛛絲馬跡,從而采取適當的措施加強防范。 

  1.默認的web記錄 

  對於IIS,其默認記錄存放在c:\\winnt\\system32\\logfiles\\w3svc1,文件名就是當天的日期,記錄格式是標准的W3C擴展記錄格式,可以被各種記錄分析工具解析,默認的格式包括時間、訪問者IP地址、訪問的方法(GET or POST…)、請求的資源、HTTP狀態(用數字表示)等。對於其中的HTTP狀態,我們知道200-299表明訪問成功;300-399表明需要客戶端反應來滿足請求;400-499和500-599表明客戶端和服務器出錯;其中常用的如404表示資源沒找到,403表示訪問被禁止。 

  Apache的默認記錄存放在/usr/local/apache/logs,其中最有用的記錄文件是access_log,其格式包括客戶端IP、個人標示(一般為空)、用戶名(如果需要認證)、訪問方式(GET or POST…)、HTTP狀態、傳輸的字節數等。 

  2.收集信息 

  我們模擬黑客攻擊服務器的通常模式,先是收集信息,然後通過遠程命令一步步實施入侵。我們使用的工具是netcat1.1 for windows,Web服務器ip為10.22.1.100,客戶端IP為:10.22.1.80。 

  C:>nc -n 10.22.1.100 80 

  HEAD / HTTP/1.0 

  HTTP/1.1 200 OK 

  Server: Microsoft-IIS/4.0 

  Date: Sun, 08 Oct 2002 14:31:00 GMT 

  Content-Type: text/html 

  Set-Cookie: ASPSESSIONIDGQQQQQPA=IHOJAGJDECOLLGIBNKMCEEED; path=/ 

  Cache-control: private 

  在IIS和Apache的log裡顯示如下: 

  IIS: 15:08:44 10.22.1.80 HEAD /Default.asp 200 

  Linux: 10.22.1.80- - [08/Oct/2002:15:56:39 -0700] \"HEAD / HTTP/1.0\" 200 0 

  以上的活動看上去很正常,也不會對服務器產生任何影響,但這是通常攻擊的前奏。
  3. Web站點鏡像 

  黑客經常鏡像一個站點來幫助攻擊服務器,常用來鏡像的工具有Windows下的Teleport pro和Unix下的Wget。 

  下面我們看使用這兩個工具後在服務器記錄裡的信息: 

  16:28:52 10.22.1.80 GET /Default.asp 200 

  16:28:52 10.22.1.80 GET /robots.txt 404 

  16:28:52 10.22.1.80 GET /header_protecting_your_privacy.gif 200 

  16:28:52 10.22.1.80 GET /header_fec_reqs.gif 200 

  16:28:55 10.22.1.80 GET /photo_contribs_sidebar.jpg 200 

  16:28:55 10.22.1.80 GET /g2klogo_white_bgd.gif 200 

  16:28:55 10.22.1.80 GET /header_contribute_on_line.gif 200 

  16:49:01 10.22.1.81 GET /Default.asp 200 

  16:49:01 10.22.1.81 GET /robots.txt 404 

  16:49:01 10.22.1.81 GET /header_contribute_on_line.gif 200 

  16:49:01 10.22.1.81 GET /g2klogo_white_bgd.gif 200 

  16:49:01 10.22.1.81 GET /photo_contribs_sidebar.jpg 200 

  16:49:01 10.22.1.81 GET /header_fec_reqs.gif 200 

  16:49:01 10.22.1.81 GET /header_protecting_your_privacy.gif 200 

  10.22.1.80是使用Wget的Unix客戶端,10.22.1.81是使用Teleport pro的Windows客戶端,都請求robots.txt文件,Robots.txt是請求沒有被鏡像的文件時所要用到的。所以看到有對robots.txt文件的請求,表明有鏡像的企圖。當然,在Wget和Teleport pro客戶端,可以手工禁止對robots.txt文件的訪問,這時,辨別方法可以看是否有從同一IP地址來的重復資源請求。 

  4.漏洞掃描 

  隨著攻擊的發展,我們可以用一些Web漏洞檢查的軟件,如Whisker,它可以檢查已知曉的各種漏洞,如cgi程序導致的安全隱患等。下面是運行Whisker1.4的IIS和Apache的相關記錄: 

  IIS 

  12:07:56 10.22.1.81 GET /SiteServer/Publishing/viewcode.asp 404 

  12:07:56 10.22.1.81 GET /msadc/samples/adctest.asp 200 

  12:07:56 10.22.1.81 GET /advworks/equipment/catalog_type.asp 404 

  12:07:56 10.22.1.81 GET /iisadmpwd/aexp4b.htr 200 

  12:07:56 10.22.1.81 HEAD /scripts/samples/details.idc 200 

  12:07:56 10.22.1.81 GET /scripts/samples/details.idc 200 

  12:07:56 10.22.1.81 HEAD /scripts/samples/ctguestb.idc 200 

  12:07:56 10.22.1.81 GET /scripts/samples/ctguestb.idc 200 

  12:07:56 10.22.1.81 HEAD /scripts/tools/newdsn.exe 404 

  12:07:56 10.22.1.81 HEAD /msadc/msadcs.dll 200 

  12:07:56 10.22.1.81 GET /scripts/iisadmin/bdir.htr 200 

  12:07:56 10.22.1.81 HEAD /carbo.dll 404 

  12:07:56 10.22.1.81 HEAD /scripts/proxy/ 403 

  12:07:56 10.22.1.81 HEAD /scripts/proxy/w3proxy.dll 500 

  12:07:56 10.22.1.81 GET /scripts/proxy/w3proxy.dll 500 

  Apache 

  10.22.1.80-[08/Oct/2002:12:57:28 -0700] \"GET /cfcache.map HTTP/1.0\" 404 266 

  10.22.1.80-[08/Oct/2002:12:57:28 -0700] \"GET /cfide/Administrator/startstop.html HTTP/1.0\" 404 289 

  10.22.1.80-[08/Oct/2002:12:57:28 -0700] \"GET /cfappman/index.cfm HTTP/1.0\" 404 273 

  10.22.1.80-[08/Oct/2002:12:57:28 -0700] \"GET /cgi-bin/ HTTP/1.0\" 403 267 

  10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"GET /cgi-bin/dbmlparser.exe HTTP/1.0\" 404 277 

  10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /_vti_inf.html HTTP/1.0\" 404 0 

  10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /_vti_pvt/ HTTP/1.0\" 404 0 

  10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /cgi-bin/webdist.cgi HTTP/1.0\" 404 0 

  10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /cgi-bin/handler HTTP/1.0\" 404 0 

  10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /cgi-bin/wrap HTTP/1.0\" 404 0 

  10.22.1.80-[08/Oct/2002:12:57:29 -0700] \"HEAD /cgi-bin/pfdisplay.cgi HTTP/1.0\" 404 

  檢查這種攻擊的關鍵是看同一IP地址對cgi目錄(IIS是scripts,Apache是cgi-bin)文件請求出現多個404狀態。這時就要檢查相應cgi目錄裡的程序安全性。 
  5.遠程攻擊 

  下面我們以針對IIS的MDAC攻擊為例,來了解遠程攻擊在log裡的記錄情況。MDAC漏洞使得攻擊者可以在Web服務器端執行任何命令。 

  17:48:49 10.22.1.80 GET /msadc/msadcs.dll 200 

  17:48:51 10.22.1.80 POST /msadc/msadcs.dll 200 

  當攻擊發生後,在log會留下對msadcs.dll請求的記錄。 

  另一個有名的攻擊是asp源代碼洩漏的漏洞,當這種攻擊發生時,log文件會有如下記錄: 

  17:50:13 10.22.1.81 GET /default.asp+.htr 200 

  對於未授權訪問的攻擊記錄,Apache log會顯示: 

  [08/Oct/2002:18:58:29 -0700] \"GET /private/ HTTP/1.0\" 401 462 

  6.總結 

  管理一個安全站點要求系統管理人員具備安全的常識和警惕性,從不同的渠道了解安全的知識不僅能對付已發生的攻擊,還能對將會發生的攻擊做到較好的防范。而通過Log文件來了解、防范攻擊是很重要但又經常容易忽略的手段。 

  IDS(入侵檢測系統)能幫助你很多,但不能完全代替安全管理。仔細檢查Log,IDS所遺漏的東西,就可能在這裡發現。

Copyright © Windows教程網 All Rights Reserved