IIS服務(wù)器常見的攻擊及幾種常見防御方式,闡述了IIS服務(wù)器的攻擊原理,針對IIS服務(wù)器的缺陷闡述了IIS的常用防御方式,同時結(jié)合實例具體實現(xiàn)方式。
隨著Internet的不斷發(fā)展與普及,英特網(wǎng)上出現(xiàn)了越來越多的WEB服務(wù)器。人們通過WEB服務(wù)器共享資源、交流信息。目前,主流的 WEB服務(wù)主要有APACHE、IIS(Internet Information Server)等,其中APACHE一般運(yùn)行在Linux、Unix服務(wù)器上,而IIS則運(yùn)行在Microsoft的Windows上。由于IIS簡單、 易上手,WEB服務(wù)器中IIS占據(jù)了很大的一部分,然而IIS的暴露出的問題也是最多的,特別是加上ASP(IIS上普遍運(yùn)行的網(wǎng)頁腳本)本身的安全性極 為脆弱。作為有一年服務(wù)器管理經(jīng)驗的一個在校大學(xué)生,決定在此結(jié)合自己的經(jīng)驗來談?wù)処IS的攻擊與防御。
1.IIS目前存在的幾種攻擊方式
A.%5c暴庫,此法對于用ASP連接ACCESS數(shù)據(jù)庫且用相對路徑連接的有效,前提是網(wǎng)站目錄有二級目錄,目的是可以暴露出數(shù)據(jù)庫的路徑然后下載,如果數(shù)據(jù)庫里有管理員賬號則會給網(wǎng)站帶來極大的安全隱患。信息學(xué)院新改版的學(xué)院網(wǎng)站就明顯存在此漏洞,詳情地址:http://xxx.com/admin%5cshow.asp?articleid=184 ,由錯誤信息:
以下是引用片段:
Microsoft JET Database Engine 錯誤 ’80004005’
’d:/database/BuildByFishsoul.asp’不是一個有效的路徑。確定路徑名稱拼寫是否正確,以及是否連接到文件存放的服務(wù)器。
/admin/inc/conn.asp,行9
由錯誤信息很容易得到數(shù)據(jù)庫地址:/database/BuildByFishsoul.asp ,只是此數(shù)據(jù)庫做了防下載,無法下載。
B.SQL注入,此法對于對輸入字符串過濾不嚴(yán)的網(wǎng)站有效,我們學(xué)校的XXX講壇在這個方面做得極差,雖然好幾次找過人進(jìn)行安全加強(qiáng),但是都只是做了表面,對網(wǎng)站安全性沒有任何的提高!SQL注入的一個很的工具是Domain3.5,用他可以避免大量的手工注入。
由圖可以看出,管理員表、管理員賬號、密碼(已加密)都已經(jīng)猜出來了!
C.其他,IIS本身出現(xiàn)的漏洞,這些漏洞持續(xù)時間不長,安裝完補(bǔ)丁后可以解決。
2.上述漏洞利用的原理
A.通過將“/”改成“%5c”,把目錄向左提高了一級,導(dǎo)致相對路找不到對應(yīng)的文件,IIS報錯。
B.因為一些參數(shù)直接被放到SQL語句中執(zhí)行,導(dǎo)致訪客可以通過外部擔(dān)交惡意代碼來操作數(shù)據(jù)庫,進(jìn)而猜解出數(shù)據(jù)庫的重要信息(如帳號、密碼等)。
C.利用系統(tǒng)本身漏洞(如溢出漏洞)來攻擊IIS服務(wù)器,此漏洞嚴(yán)重性很大,主要是通過關(guān)注微軟發(fā)布的更新補(bǔ)丁來獲得漏洞的。
3.上述漏洞的預(yù)防
A.這個漏洞是通過IIS報錯來看到錯誤信息的,所以可以把錯誤信息關(guān)掉,方法:IIS上右擊網(wǎng)站->屬性 ->主目錄->配置->調(diào)試->選中向課戶端發(fā)送文本錯誤信息。另外,這是通過下載數(shù)據(jù)庫來實現(xiàn)的,所以可以在服務(wù)器端給. mdb文件一個解釋文件,從而禁止mdb數(shù)據(jù)庫的下載,方法:IIS上右擊網(wǎng)站->屬性->主目錄->映射->應(yīng)用程序設(shè)置,然 后添加一個mdb,隨便找個文件給它解釋。如果你是網(wǎng)站程序員則也有三個辦法:用絕對路徑、不用二級目錄、給數(shù)據(jù)庫做防下載處理。
B.同樣這是利用IIS報錯來實現(xiàn)注入的,可以將IIS報錯關(guān)了,就拿它沒辦法了,要最終防止,還是要注意程序?qū)?輸入字符的過濾,如可以對 “’”, “and”, “or”, “update”, “insert”, “select”, “delete”, “=”等危險字符串進(jìn)行過濾,甚至對于一些參數(shù)只使用數(shù)字而不能用字符串。
C.經(jīng)常檢測更新并升級系統(tǒng),關(guān)注關(guān)于IIS漏洞的最新報道,推薦使用端星漏洞掃描工具或者365safe打補(bǔ)丁。這個方面程序員不能直到任何的作用。
4.IIS其它方面的注意
以上只是IIS的一些最基本的安全設(shè)置,要配置好IIS還要掌握很多東西。如是否允許執(zhí)行腳本、ISAPI限制、目錄游覽、日志記錄、網(wǎng)站安全賬號權(quán)限控制、網(wǎng)站程序池、自定義錯誤、虛擬目錄建立等。這上面每一項都是一個學(xué)問。
5.結(jié)束語
網(wǎng)絡(luò)安全問題日益突出,有些虛擬主機(jī)管理員不知是為了方便還是不熟悉配置,干脆就將所有的網(wǎng)站都放在同一個目錄中,然后將上級目錄設(shè)置為站點根 目錄。有些呢,則將所有的站點的目錄都設(shè)置為可執(zhí)行、可寫入、可修改。有些則為了方便,在服務(wù)器上掛起了QQ,也裝上了BT。更有甚者,竟然把 Internet來賓帳號加入到Administrators組中!普通的用戶將自己的密碼設(shè)置為生日之類的6位純數(shù)字,這種情況還可以原諒,畢竟他們大 部分都不是專門搞網(wǎng)絡(luò)研究的,中國國民的安全意識提高還需要一段時間嘛,但如果是網(wǎng)絡(luò)管理員也這樣,那就怎么也有點讓人想不通了。IIS的安全是一個不斷 變化的問題,只有相對的安全,沒有絕對的安全。伴隨著漏洞的不斷出現(xiàn)和補(bǔ)丁的出現(xiàn),IIS也在經(jīng)受著考驗。作為一個服務(wù)器管理人員,應(yīng)該定期地觀察IIS 的運(yùn)行狀態(tài)和網(wǎng)站訪問日志,更要時刻關(guān)注安全網(wǎng)上的漏洞公告。作為網(wǎng)站維護(hù)人員,更要負(fù)責(zé)自己網(wǎng)站的代碼問題,及時給存在漏洞的系統(tǒng)打上補(bǔ)丁。只有服務(wù)器 和網(wǎng)站都做好了安全防范,才能保證服務(wù)器和網(wǎng)站的正常運(yùn)轉(zhuǎn)。另外:安全意識是一個服務(wù)器管理員和程序員最基本的素質(zhì),只有穩(wěn)定的環(huán)境和安全的代碼才能讓別 人放心。