趙婉彤
(中共鞍山市委黨校,遼寧 鞍山 114000)
政府網(wǎng)站的安全隱患及常用攻擊手段分析
趙婉彤
(中共鞍山市委黨校,遼寧 鞍山 114000)
文章討論了在互聯(lián)網(wǎng)形勢下政府網(wǎng)站安全的重要性,并結(jié)合實際情況分析總結(jié)出我國政府網(wǎng)站在遭受攻擊后通常會出現(xiàn)的后果,即篡改頁面、信息泄漏和網(wǎng)站癱瘓。隨后文章還從技術(shù)方面剖析了WebShell,Cookies欺騙、緩沖區(qū)溢出、SQL注入、DDoS攻擊等網(wǎng)絡(luò)攻擊者常用攻擊方法的原理,并從操作和管理層面討論了防范措施并給出相關(guān)建議。
政府網(wǎng)站;攻擊手段;安全隱患;防御措施
隨著互聯(lián)網(wǎng)的發(fā)展和普及,為了政策宣傳更加快捷、民眾溝通更加順暢、政務(wù)工作更加透明,各地政府紛紛開設(shè)了官方網(wǎng)站。管理者對于網(wǎng)站入侵、攻防及相關(guān)知識的掌握水平、網(wǎng)絡(luò)安全防范意識、對信息的操作和管理的規(guī)范性有了更高的要求。政府網(wǎng)站安全這個問題十分復(fù)雜且重要。
2015 年發(fā)生了一系列網(wǎng)站信息安全事件,如知名連鎖酒店房客信息泄露事件、廣東人壽10萬保單泄露事件、內(nèi)蒙古19萬高考生信息泄露事件、全國超過30個省市衛(wèi)生和社保系統(tǒng)出現(xiàn)大量高危漏洞事件、網(wǎng)易上億郵箱信息泄露事件等,使信息安全問題被推上風(fēng)口浪尖。政府網(wǎng)站作為承載大量人員、數(shù)據(jù)、決策等重要信息的載體,其安全性更是關(guān)系到國家和人民安全的頭等大事。
對我國近幾年遭受過攻擊的政府網(wǎng)站進(jìn)行分析發(fā)現(xiàn),目前政府網(wǎng)站的安全隱患主要集中為以下3種:篡改頁面、數(shù)據(jù)信息泄漏和網(wǎng)站癱瘓。
2.1 篡改頁面
這是政府網(wǎng)站最常遭遇到的攻擊,特別在某些大型事件的時間點上,黑客們通過侵入政府網(wǎng)站,篡改網(wǎng)頁信息、添加黑鏈接、置入非法信息等來達(dá)到各自的目的。這種攻擊是通過利用網(wǎng)站漏洞,植入木馬,非法竊取管理員賬號和密碼獲得權(quán)限來實現(xiàn)的。
2.2 數(shù)據(jù)信息泄漏
數(shù)據(jù)是網(wǎng)站信息的重要部分,特別是對于政府網(wǎng)站而言,這是關(guān)系到國家和人民信息安全的頭等大事。攻擊者通過暴力突破可以盜取或修改信息,給政府帶來極大的安全隱患,更有甚者會為國家?guī)砭薮髶p失。
2.3 網(wǎng)站癱瘓
大量的攻擊手段可以造成網(wǎng)站癱瘓,特別是擁有公眾服務(wù)平臺的政府網(wǎng)站,網(wǎng)站癱瘓將對政府日常辦公,群眾的服務(wù)訴求造成極大的影響。
3.1 WebShell攻擊
所謂WebShell就是以ASP,PHP,JSP或者CGI等網(wǎng)頁文件形式存在的一種命令執(zhí)行環(huán)境,也可以將其稱作為一種網(wǎng)頁后門。黑客在入侵了一個網(wǎng)站后,通常會將ASP或PHP后門文件與網(wǎng)站服務(wù)器Web目錄下正常的網(wǎng)頁文件混在一起,使用瀏覽器來訪問ASP或者PHP后門,得到一個命令執(zhí)行環(huán)境,以達(dá)到控制網(wǎng)站服務(wù)器的目的[1]。
防止WebShell手段入侵,可以通過提升Web服務(wù)器安全設(shè)置、啟動防火墻并關(guān)閉不需要的端口和服務(wù)、對cmd. exe, net.exe, net1.exe, ping.exe, netstat.exe, ftp.exe, tftp.exe, telnet.exe等命令進(jìn)行權(quán)限控制、保護(hù)FTP文件上載安全、不使用超級用戶運(yùn)行Web服務(wù)等方式提升安全性,降低攻擊者利用WebShell的可能。
3.2 Cookies欺騙
Cookies是一個存儲于瀏覽器目錄中的文本文件,它的官方定義是:指某些網(wǎng)站為了辨別用戶身份、進(jìn)行 session 跟蹤而儲存在用戶本地終端上的數(shù)據(jù)(通常經(jīng)過加密)[2]。
在日常網(wǎng)絡(luò)行為中,Cookies就是被創(chuàng)建用于暫時存放于網(wǎng)絡(luò)服務(wù)器的網(wǎng)絡(luò)用戶計算機(jī)上的一些資料,包括IP、注冊口令、用戶名、瀏覽記錄等,且只能被創(chuàng)建它的站點讀回。當(dāng)攻擊者獲取對方的Cookies,就可以偽裝成該用戶獲得其權(quán)限進(jìn)行操作。
那么攻擊者是如何通過Cookies欺騙入侵網(wǎng)站的呢?假如獲取了某網(wǎng)站管理員的帳號和MD5(即加密后的16位密碼),攻擊者無法破解加密技術(shù)獲取密碼時,就會通過Cookies欺騙來獲取管理員權(quán)限,首先攻擊者將自己的用戶ID改寫成管理員的ID,MD5密碼也修改成管理員的,然后更改Cookies,再打開頁面的時候,攻擊者已經(jīng)獲得管理員身份了。但在一般ASP系統(tǒng)中,后臺登陸是由session實現(xiàn)的,當(dāng)管理員輸入帳號和密碼后,程序會提取它的用戶名和密碼去數(shù)據(jù)庫的管理員列表里比對,如果找到一致的就認(rèn)同管理員身份,并且分配一個表示身份的session值,進(jìn)入任何一個管理界面都需要驗證session值。攻擊者在完成Cookies欺騙之后可以通過木馬編輯器植入木馬的方式同樣欺騙session,就可以用管理員的身份登陸后臺。
在了解Cookies欺騙的原理后,不難看出若想有效地防止Cookies欺騙,首先要養(yǎng)成刪除Cookies記錄的習(xí)慣。其次可以采取Cookies+session混合存S儲并為Cookies文件增加驗證字段,這樣在得到Cookies數(shù)據(jù)之后,再判斷一下驗證字段就可以知道Cookies是否被篡改過。
3.3 緩沖區(qū)溢出
緩沖區(qū)是地理空間目標(biāo)的一種影響范圍或服務(wù)范圍,具體指在點、線、面實體的周圍,自動建立一定寬度的多邊。在計算機(jī)中,緩沖區(qū)(buffer)這個中文譯意源自當(dāng)計算機(jī)的高速部件與低速部件通訊時,必須將高速部件的輸出暫存到某處,以保證高速部件與低速部件相吻合。后來這個意思被擴(kuò)展了,成為“臨時存貯區(qū)”的意思。
所謂緩沖區(qū)溢出就是將一個超過緩沖區(qū)長度的字符串置入緩沖區(qū)。通常這種過長字符串的置入會造成以下兩種后果:一是超長字符串的溢出會使得相鄰存儲單元內(nèi)容被改寫,引發(fā)程序運(yùn)行出現(xiàn)問題,甚至系統(tǒng)崩潰;二是可以利用漏洞執(zhí)行任意指令,取得某種權(quán)限特別是系統(tǒng)權(quán)限以開展攻擊。
在這種攻擊方式下,攻擊者需要在程序中安插適當(dāng)?shù)闹噶?,并且通過適當(dāng)手段使程序跳轉(zhuǎn)到指令所在的地址執(zhí)行指令代碼。一般情況下,攻擊者會將包含指令的字符串寫入緩沖區(qū),利用緩沖區(qū)作為空間來存放代碼。在病毒程序安置完成后,攻擊者向程序輸入超長緩沖區(qū),擾亂程序正常執(zhí)行順序,通過溢出緩沖區(qū)改寫相,令程序空間控制程序轉(zhuǎn)移到攻擊代碼。通常情況下可以通過改寫函數(shù)返回地址、修改指針數(shù)據(jù)和利用長緩區(qū)沖跳轉(zhuǎn)如C語言中的“setjmp/longjmp”控制程序轉(zhuǎn)移。
使用嚴(yán)謹(jǐn)正確的代碼是防止緩沖區(qū)溢出攻擊的重要方式,此外在系統(tǒng)操作時禁止執(zhí)行堆棧數(shù)據(jù)段、檢查指針完整性和利用編譯器進(jìn)行程序邊界檢查也是有效且必要的手段,若想從根本上消除緩沖區(qū)溢出攻擊,需要對編程模式或CPU體系進(jìn)行基礎(chǔ)性修改才能真正解決問題[3]。
3.4 SQL注入攻擊
SQL注入攻擊是攻擊者對入侵?jǐn)?shù)據(jù)庫的常作手段之一,它是一種利用未過濾未審核用戶輸入的攻擊方法,讓應(yīng)用運(yùn)行本不應(yīng)該運(yùn)行的SQL代碼。在這種攻擊方式中,攻擊者會將一些惡意代碼插入到字符串中。然后會通過各種手段將該字符串傳遞到SQL Server數(shù)據(jù)庫的實例中進(jìn)行分析和執(zhí)行[4]。只要這個惡意代碼符合SQL語句的規(guī)則,則在代碼編譯與執(zhí)行的時候,就不會被系統(tǒng)所發(fā)現(xiàn)。
SQL注入式攻擊的主要形式有兩種。一是直接將代碼與SQL命令串聯(lián)在一起并使得其以執(zhí)行的用戶身份輸入變量。二是將惡意代碼注入要在表中存儲或者作為原數(shù)據(jù)存儲的字符串。在存儲的字符串中會連接到一個動態(tài)的SQL命令中,以執(zhí)行一些惡意的SQL代碼。
SQL注入攻擊的危害非常大,防范這種攻擊手法可以從以下幾個方面入手:一是用戶與管理員的權(quán)限要有嚴(yán)格區(qū)分,對于終端用戶限制或不予開放對數(shù)據(jù)庫對象的建立、刪除等權(quán)限;二是加強(qiáng)對用戶輸入的驗證,如果拒絕一些特殊符號,如分號分隔符,那么很多惡意代碼便無用武之地了,這是最常見也最行之有效的防范措施。三是利用SQL數(shù)據(jù)庫自帶的安全參數(shù),例如使用數(shù)據(jù)庫中提供的Parameters集合。這個集合提供了類型檢查和長度驗證的功能。如果采用了這個集合的話,則用戶輸入的內(nèi)容將被視為字符值而不是可執(zhí)行代碼。
沒有絕對安全不會受到攻擊的網(wǎng)站,提高網(wǎng)絡(luò)安全意識、養(yǎng)成良好的操作習(xí)慣、提高操作人員的技術(shù)水平、加強(qiáng)網(wǎng)絡(luò)安全的防范措施才是應(yīng)對網(wǎng)絡(luò)攻擊最好的辦法。
[1]鄧吉.網(wǎng)絡(luò)安全攻防實戰(zhàn)[M].北京:電子工業(yè)出版社,2008.
[2](美)凱文·米特尼克,西蒙.反入侵的藝術(shù)[M].袁月楊,謝衡,譯.北京:清華大學(xué)出版社,2007.
[3]許曉玲.黑客攻防大全[M].北京:藝術(shù)與科學(xué)電子出版社,2013.
[4]潘志翔,岺進(jìn)峰.黑客攻防編程解析[M].北京:機(jī)械工業(yè)出版社,2003.
Analysis on the security risks of the government Website and the common attack means
Zhao Wantong
(Party School of CPC Anshan Municipal Committee, Anshan 114000, China)
This paper discusses the importance of government Website Internet security, combined with the actual situation, the author summarizes the consequences of the government Websites in China after the attack, which refers to tampering page, information leakage and Website paralysis. Then the article analyzes the WebShell, Cookies spoofing, buffer overflow, SQL injection, DDoS attacks and other attacks on the principles of network attackers commonly used through the aspect of technology. And the preventive measures are discussed from the aspects of operation and management.
government Website; attack means; security risk; defense measure
趙婉彤(1982— ),女,遼寧營口,本科,教師,講師;研究方向:計算機(jī)應(yīng)用。