氣血虧 網站被黑查原因 |
發(fā)布時間: 2012/9/3 17:35:10 |
說到Web業(yè)務系統(tǒng),很多人會下意識的認為Web業(yè)務系統(tǒng) = 網站,但實際上,我們通常所說的Web業(yè)務系統(tǒng)指的是利用各種動靜態(tài)Web技術開發(fā)的基于B/S(瀏覽器服務器)模式的事務處理系統(tǒng)。這些Web業(yè)務系統(tǒng),都會遭受Web威脅的影響。而會威脅到Web業(yè)務安全的因素又包括哪些方面呢?在日常工作中,我們會遇到哪些Web安全隱患呢? 在中醫(yī)領域,經常會聽到氣血兩虧”這個詞,這是指氣虛與血虛同時存在的癥候,當人體的氣”和血”都存在虧虛的時候,身體就容易生病。Web系統(tǒng)就如人體,也會有類似氣血兩虧的情況,導致被攻擊: Z先生是某市信息中心主任,這個職位可不像外人想像的那么輕松,這不,一大早Z先生就被電話吵醒了:Z主任,咱們網站被人黑了”。待到Z先生打開網站時赫然發(fā)現首頁已經被換成了小飛俠到此一游”的滾動文字....... 經專業(yè)安全公司專家確認,這是由于網站存在漏洞,駭客利用漏洞進行的攻擊。在用網站備份恢復了頁面后,Z先生馬上找到了當初網站的開發(fā)人員,要求迅速進行漏洞的修補,在漏洞修補期間,Z先生緊急購買了一臺入侵防御系統(tǒng),上線保護網站系統(tǒng),而后經過近一個月的代碼修改、測試和試運行,網站全新上線。 讓我們來回顧一下這個小故事,如果是我們遇到了這個問題,該如何處理呢? 網站頁面被篡改意味著攻擊者拿到了Web發(fā)布系統(tǒng)的和后臺數據庫的權限(如果有后臺數據庫)。 網站頁面系統(tǒng)分為兩種,一種是靜態(tài)頁面系統(tǒng)(全是html類型的文件,目前已非常少見),駭客可能獲得了操作系統(tǒng)或是發(fā)布系統(tǒng)的權限,這就需要仔細檢查相關日志信息(操作系統(tǒng)日志和發(fā)布系統(tǒng)日志),如果駭客未修改和刪除這些日志,是可以從日志中分析判斷攻擊者利用了哪些漏洞進行攻擊。對靜態(tài)頁面站點的安全防護,相對來說比較簡單,操作系統(tǒng)及時升級,正確配置和使用最新版本的Web發(fā)布系統(tǒng),同時部署網頁防篡改系統(tǒng)※。 ※詳解:網頁防篡改系統(tǒng) 網頁防篡改系統(tǒng)的工作原理較為簡單,事先備份了所有靜態(tài)頁面內容,并啟動守護進程實時監(jiān)視網站頁面文件,一旦發(fā)現與原有備份文件不一致,馬上進行恢復。 ◆優(yōu)點:網頁防篡改系統(tǒng)并不是針對某種具體的攻擊類型,不論駭客使用何種攻擊方式,當企圖對網站頁面進行修改時,都會觸發(fā)恢復機制。 ◆缺點:網頁防篡改系統(tǒng)只適用于靜態(tài)頁面的環(huán)境,如果網站采用了動網架構,并提供了用戶交互功能(如查詢和留言等),是無法使用網頁防篡改系統(tǒng)的。同時,網頁防篡改系統(tǒng)一般都是軟件形式,安裝在Web服務器上,可能由于遭致駭客攻擊而失效。 另外一種情況就是90%以上的網站都采用的動態(tài)頁面架構,在政府機關,這個比例也達到70%以上。所以,我們的Z先生,有70%的幾率無法簡單的通過部署網頁防篡改系統(tǒng)進行防御。 常見的政務網站功能不外乎信息發(fā)布和網上辦事兩個大塊功能,而網上辦事將會涉及到與使用者的信息交互。如果網站的開發(fā)人員沒有對這些信息交互做過濾和限制,就有可能造成安全隱患。Web應用威脅中最著名的SQL注入※,就是由此而產生的。據OWASP(開放式Web應用程序安全項目組織)的統(tǒng)計,SQL注入作為最嚴重的Web威脅行為之一,幾乎60%以上的Web安全事件與之有關。 ※詳解:SQL注入 SQL注入就是指利用頁面代碼編寫不完備,將惡意的SQL命令注入到后臺數據庫引擎執(zhí)行的能力。SQL注入利用的是正常的HTTP服務端口,表面上看來和正常的Web訪問沒有區(qū)別,隱蔽性極強,不易被發(fā)現。 SQL注入的危害 ◆未經授權狀況下操作數據庫中的數據 ◆惡意篡改網頁內容 ◆私自添加系統(tǒng)帳號或者是數據庫使用者帳號 ◆網頁掛木馬 那么怎么來判斷自己到底是否遭受了SQL注入的威脅呢?由于SQL注入攻擊門檻很低,網絡上有大量的免費SQL注入攻擊軟件,利用這些軟件的駭客很有可能并不知道該如何清理自己留下的系統(tǒng)日志,從對日志的分析※中可以很容易的看到是否有SQL注入行為發(fā)生。 ※詳解:日志的分析 可以在日志中檢索 and ”(空格and空格),或者是‘”(半角單引號)等關鍵字符,如果發(fā)現有類似[id=21 and 1=1] 的字符串,則基本可以判斷遭受SQL注入的掃描或攻擊。當然,這需要分析者具備一定的技術能力。 另外,還可以借助購買專業(yè)安全公司的安全服務來實現。 SQL注入攻擊發(fā)生后,該如何應對呢?前面我們已經提到,SQL注入的發(fā)生原因是由于頁面文件編寫的不完備,所以最直接的方法就是代碼級的頁面文件修改※。 ※詳解:代碼級頁面文件修改 首先要知道在哪些地方代碼過濾不嚴謹,一般來說未受過安全培訓的網站開發(fā)人員,很難徹底發(fā)現這些存在的漏洞,建議此項工作最好聘請專業(yè)安全從業(yè)人員進行。 雖然代碼級頁面修改是最直接的方法,但即使是專業(yè)安全人員,也無法保證能100%徹底清除頁面存在的所有漏洞,而且在網站新增頁面時,還需要再次聘請安全服務人員進行檢查,所以這種方法在實際應用中較少采用。通常情況下,采用較多的是通過增加安全產品進行防護。 考慮到SQL注入是應用層威脅,所以需要挑選勝任應用層威脅防護的產品※,在實際應用中,使用較多的就是入侵防御產品。 ※詳解:挑選勝任應用層威脅防護的產品 目前應對應用層攻擊的方法主要有基于正常行為模型、基于簽名技術,基于特征字符串、基于異常檢測技術、基于行為模式檢測手法五大類技術,其中前兩種是學術界研究成果,需要修改網站源代碼,且無成型產品。后三種是產業(yè)界技術,已有成熟產品,從實際使用情況來看,基于行為模式檢測手法的產品表現效果較好。 網站如果在編碼層面存在考慮不足導致的虧虛”,就也會陷入到氣血虧”的地步,解決之道就是外敷內服”(入侵防御等安全設備+代碼漏洞評估服務+代碼修補)。 背景知識:
操作系統(tǒng)與后臺數據庫: 操作系統(tǒng)和后臺數據庫可能會存在漏洞或配置不當,如弱口令等等,導致駭客、病毒可以利用這些缺陷進行攻擊。 Web發(fā)布系統(tǒng): Web業(yè)務常用的發(fā)布系統(tǒng),如IIS、Apache等,這些系統(tǒng)存在的安全漏洞,給入侵者可乘之機。 Web應用程序: 主要指Web應用程序的編寫人員,在編程的過程中沒有考慮到安全的問題,使得駭客能夠利用這些漏洞發(fā)起攻擊,比如SQL注入、跨站腳本攻擊等等。 Web后臺管理系統(tǒng): 主要是指Web內容編輯系統(tǒng),通常也由一定數量的Web頁面組成,用以作為Web數據和頁面的發(fā)布管理,同樣會存在安全漏洞和管理口令比較弱,使得駭客可以攻擊網站。由于與Web應用程序的性質類似,下文描述中所提及的Web應用程序將泛指Web應用程序以及Web后臺管理系統(tǒng)的總和。 網絡狀況:
Web應用系統(tǒng)服務器所處的網絡安全狀況也影響著Web應用系統(tǒng)的安全,比如網絡中存在的DoS攻擊等,也會影響到這些Web應用系統(tǒng)的正常運營。 上面五個方面基本概括了Web業(yè)務系統(tǒng)的威脅來源,而其中又以Web應用程序的漏洞最為突出:操作系統(tǒng)、網絡協(xié)議、發(fā)布系統(tǒng)等標準化程度高,有大家耳熟能詳的解決辦法(如操作系統(tǒng),會定期發(fā)布更新補丁以修補漏洞),而對Web系統(tǒng)來說,其Web應用程序都是獨一無二的,缺少大規(guī)模代碼檢驗過程,難以完全避免漏洞,且攻擊極難防御。在考慮完整Web安全解決方案的時候,必須要全盤考慮這幾個方面。 本文出自:億恩科技【mszdt.com】 |