黑客偽裝自己
發(fā)表時(shí)間:2023-05-27 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]黑客的聰明并不只是在于他們知道如何去入侵服務(wù)器, 還在于他們知道如何去偽裝自己的攻擊。 惡意的攻擊者會(huì)使用多種逃避的手段來(lái)讓自己不會(huì)被檢測(cè)到, 所以作為系統(tǒng)管理員, 也應(yīng)當(dāng)了解這些手段以應(yīng)付可能發(fā)...
黑客的聰明并不只是在于他們知道如何去入侵服務(wù)器, 還在于他們知道如何去偽裝自己的攻擊。 惡意的攻擊者會(huì)使用多種逃避的手段來(lái)讓自己不會(huì)被檢測(cè)到, 所以作為系統(tǒng)管理員, 也應(yīng)當(dāng)了解這些手段以應(yīng)付可能發(fā)生的攻擊。
這篇文章的主要目的不是揭示黑客新的攻擊手法, 而是對(duì)那些黑客所用到的逃避檢測(cè)的手法以及他們可能留下的證據(jù)做描述。 這些手段的欺騙性很大, 所以想檢測(cè)到它們也更加的困難。
網(wǎng)絡(luò)服務(wù)器
我們的實(shí)驗(yàn)環(huán)境使用兩種最常用的網(wǎng)絡(luò)服務(wù)器, Apache和微軟的InternetInformationServer(IIS)。 我們?cè)赗edHatLinux上運(yùn)行Apache1.3.9,在WindowsNT4.0上運(yùn)行IIS4.0。 并且兩種都采用普通和允許SSL的版本, 所以我們可以對(duì)加密和未加密的服務(wù)器的攻擊做測(cè)試。
16進(jìn)制編碼
一種最簡(jiǎn)單的將攻擊偽裝的手段就是修改URL請(qǐng)求。 作為管理員,我們一般會(huì)在日志文件中查找某些字符串, 或是一些普通文本的字符集。 例如我們?cè)谡?qǐng)求中查找匹配已知漏洞的字符串。 例如, 我們?cè)谖覀兊腎IS服務(wù)器中發(fā)現(xiàn)了如下的字符串, 我們就知道有人正在查找是否有IIS中可以遠(yuǎn)程利用的MDAC漏洞:www.arpun.com
06:45:2510.0.2.79GET/msadc/302
要知道攻擊者是如何躲過(guò)這種匹配檢測(cè)的, 請(qǐng)參考以下作為惡意攻擊者策略一部分的請(qǐng)求。 要確定msadc目錄是否存在, 攻擊者可能鍵入以下內(nèi)容:
[root@localhost/root]#nc-n10.0.2.5580
GET/msadcHTTP/1.0
這就會(huì)產(chǎn)生我們以上所見(jiàn)的日志文件。 攻擊者可以將請(qǐng)求進(jìn)行十六進(jìn)制的ASCII字符編碼。 在以上的例子中, 字符串msadc在十六進(jìn)制編碼以后就會(huì)變?yōu)?D73616463。 你可以使用WindowsCharmap程序來(lái)快速的進(jìn)行字符的ASCII到十六進(jìn)制的轉(zhuǎn)換。 以上的HTTP請(qǐng)求, 將字符串msadc用十六進(jìn)制編碼以后, 就變成了:
[root@localhost]#nc-n10.0.2.5580
GET/%6D%73%61%64%63HTTP/1.0
IIS的日志文件顯示:
07:10:3910.0.2.31GET/msadc/302
應(yīng)當(dāng)注意的是, 雖然采用了十六進(jìn)制編碼的手段, 但是所產(chǎn)生的日志和沒(méi)有使用十六進(jìn)制編碼的URL產(chǎn)生的是一樣的。 所以在這個(gè)例子里, 編碼并沒(méi)有幫助攻擊者逃避檢測(cè)。 但是, 如果我們看看看Apache的日志情況, 那么就是另外一個(gè)情形了。 以下列出了攻擊者使用來(lái)搜索某個(gè)CGI腳本的命令, 后面跟著的是使用十六進(jìn)制編碼以后的同樣命令:
[root@localhost]#nc-n10.0.0.280
HEAD/cgi-bin/test-cgiHTTP/1.0
[root@localhost]#nc-n10.0.0.280
HEAD/%63%67%69-bin/test-%63%67%69HTTP/1.0
現(xiàn)在我們來(lái)查看一下access_log文件:
10.10.10.10--[18/Oct/2000:08:22:47-0700]"HEAD/cgi-bin/test-cgiHTTP/1.0"2000
10.10.10.10--[18/Oct/2000:08:23:47-0700]"HEAD/%63%67%69-bin/test-%63%67%69HTTP/1.0"2000
首先應(yīng)注意到的是在這兩個(gè)例子中都是200代碼說(shuō)明命令完成成功。 但是在第二中情況中, 日志中出現(xiàn)的是十六進(jìn)制的值而不是明文的。 如果我們是依賴于形式來(lái)對(duì)這種攻擊進(jìn)行檢測(cè)的話, 那么我們是不可能檢測(cè)到所發(fā)生的攻擊的。 許多的入侵檢測(cè)系統(tǒng)使用的格式匹配技術(shù)智能化都不高, 并且有些產(chǎn)品不會(huì)將十六進(jìn)制的URL轉(zhuǎn)換過(guò)后進(jìn)行匹配。 但是不論所使用的入侵檢測(cè)軟件是否能夠?qū)κM(jìn)制的代碼進(jìn)行轉(zhuǎn)換, 所有的網(wǎng)絡(luò)管理員都應(yīng)當(dāng)對(duì)這種伎倆有所了解。
代理服務(wù)器
因?yàn)閷?duì)攻擊者而言完全隱藏攻擊行為是很難做到的, 所以掩蓋攻擊的真實(shí)來(lái)源也就成為相當(dāng)重要的課題了。 如果黑客可以隱藏他的源IP地址的話, 那么他就可以在不用擔(dān)心被抓住的情況下進(jìn)行攻擊。 而黑客用來(lái)隱藏他們的源IP地址的一種手段就是使用代理服務(wù)器。
代理服務(wù)器是被合法的用來(lái)從一個(gè)單一的訪問(wèn)點(diǎn)轉(zhuǎn)發(fā)多種協(xié)議的。 一般來(lái)說(shuō), 內(nèi)部用戶必須通過(guò)代理服務(wù)器才能訪問(wèn)Internet, 因此管理員就可以在代理服務(wù)器指定外部訪問(wèn)以及內(nèi)部訪問(wèn)的限制策略。 用戶首先是和代理服務(wù)器建立連接, 然后代理服務(wù)器就將連接請(qǐng)求轉(zhuǎn)發(fā)到真正的目的地址。 目的地址會(huì)記錄下代理服務(wù)器的IP地址以作為請(qǐng)求的源地址, 而不是最初發(fā)出請(qǐng)求的系統(tǒng)的IP地址。
但是不幸的是代理服務(wù)器在Internet上的放置太隨意了。 (可以查看Proxys-4-All來(lái)獲得這些錯(cuò)誤配置機(jī)器的列表。 )這些服務(wù)器經(jīng)常會(huì)存在配置錯(cuò)誤使得Internet用戶可以連接到這些代理服務(wù)器上。 一旦某個(gè)Internet用戶通過(guò)代理服務(wù)器連接到某個(gè)服務(wù)器上, 該服務(wù)器就會(huì)將代理服務(wù)器的IP地址作為發(fā)出請(qǐng)求的源地址記錄在日志中。 而在被攻擊服務(wù)器的日志中對(duì)攻擊者的記錄其IP地址是屬于一個(gè)沒(méi)有任何攻擊行為的“無(wú)辜”主機(jī)的, 而不是攻擊者的真正地址。 我們來(lái)看以下的例子。
下面的例子顯示了黑客的攻擊和攻擊在日志中產(chǎn)生的相關(guān)信息。
攻擊者
[root@10.1.1.1/]#nc-v10.8.8.880
HEAD/HTTP/1.0
日志文件
10.1.1.1--[18/Oct/2000:03:31:58-0700]"HEAD/HTTP/1.0"2000
在下面這種情況中, 我們看到攻擊者達(dá)到了同樣的目的, 但是這次他使用了代理服務(wù)器。
攻擊者
[root@10.1.1.1/]#nc-v216.234.161.8380
HEAD
上面是電腦上網(wǎng)安全的一些基礎(chǔ)常識(shí),學(xué)習(xí)了安全知識(shí),幾乎可以讓你免費(fèi)電腦中毒的煩擾。