葉良艷 江國(guó)粹
摘要:該文研究SQL注入等常見網(wǎng)站攻擊原理,并結(jié)合基于云計(jì)算模式下高校教學(xué)資源共享平臺(tái)特點(diǎn),從安全管理、安全檢查和技術(shù)手段研究平臺(tái)多方位安全防御策略。
關(guān)鍵詞:云計(jì)算;多方位;防御系統(tǒng)
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)28-0059-02
在《教育信息化十年發(fā)展規(guī)劃 ( 2011- 2020)》第九章對(duì)要“建立國(guó)家教育云服務(wù)模式”:“充分整合現(xiàn)有資源,采用云計(jì)算技術(shù),形成資源配置與服務(wù)的集約化發(fā)展途徑,構(gòu)建穩(wěn)定可靠、低成本的國(guó)家教育云服務(wù)模式?!保疚恼轮饕芯炕谠朴?jì)算模式下高校教學(xué)資源共享平臺(tái)建設(shè)過(guò)程中需要注意哪些安全。
1 常見的WEB網(wǎng)站攻擊及原理
1.1 WEB網(wǎng)站攻擊現(xiàn)狀
2013年OWASP[1]發(fā)布前十大攻擊,依次為注入、時(shí)效的省份認(rèn)證和會(huì)話管理、跨站腳本、不安全的直接對(duì)象應(yīng)用、安全配置錯(cuò)誤、敏感信息泄漏、功能級(jí)訪問控制缺失、跨站請(qǐng)求偽造、使用還有已知漏洞的組件和未驗(yàn)證的重定向和轉(zhuǎn)發(fā),其中網(wǎng)站注入居高位。
2014年發(fā)生全球十一大攻擊事件,如Regin惡意軟件、索尼攻擊事件、iCloud攻擊事件、摩根大通(JPMorgan)信用卡入侵、家得寶(Home Depot)、韓國(guó)信用卡黑客事件、易趣網(wǎng)(eBay)泄密事件、尼曼(Neiman Marcus)攻擊事件、破殼漏洞(Shellshock)、心臟滴血漏洞和12306用戶數(shù)據(jù)泄露含身份證及密碼信息,其中12306用戶數(shù)據(jù)泄露含身份證及密碼信息為撞庫(kù)攻擊,這種攻擊方式將成為未來(lái)趨勢(shì)。
1.2 WEB網(wǎng)站常見攻擊——SQL注入攻擊
SQL注入一直是WEB中最廣泛最危險(xiǎn)的攻擊,它的攻擊原理是黑客借助用戶交互時(shí),故意插入一些特殊的SQL語(yǔ)句,該語(yǔ)句一旦插人到實(shí)際SQL語(yǔ)句中并執(zhí)行它,就可以竊取系統(tǒng)機(jī)密信息,甚至控制主機(jī)或其權(quán)限 [2]。下面是php程序的一個(gè)簡(jiǎn)單SQL注入實(shí)例:
假設(shè)的登錄查詢SELECT * FROM users WHERE username =admin and password=password‘
假設(shè)的php 代碼$myquery="Select * from users where username='". $username ."' and password='".$pwd."'";
輸人字符username =or 1=1
實(shí)際的查詢代碼SELECT * FROM users WHERE username=or 1=1 and password='anything‘。在條件語(yǔ)句中,無(wú)論用戶名稱是否正確,由于1=1永遠(yuǎn)是為真,導(dǎo)致users表中的所有數(shù)據(jù)都被竊取。
2 研究平臺(tái)的特點(diǎn)
基于云計(jì)算模式下高校教學(xué)資源共享平臺(tái)服務(wù)器由第三方云服務(wù)器商提供,網(wǎng)站系統(tǒng)是WAMP(Windows+Apache+MySQL+PHP)框架式。平臺(tái)分為四個(gè)部分:用戶層、網(wǎng)絡(luò)層、云層和網(wǎng)站系統(tǒng)層。如下圖1平臺(tái)安全層次圖。
用戶層:即應(yīng)用層,用戶與服務(wù)器交互,該層主要被黑客惡意攻擊的地方。網(wǎng)絡(luò)層:信息篡改常常來(lái)自網(wǎng)絡(luò)層,常用預(yù)防措施有:SSL協(xié)議和S-HTTP。云層:該層是核心層,一旦被控制后果非常嚴(yán)重。網(wǎng)站系統(tǒng)層:網(wǎng)站系統(tǒng)的安全系數(shù)與網(wǎng)站被攻擊成正比。
3 平臺(tái)多方位防御系統(tǒng)設(shè)計(jì)
一個(gè)好的防御系統(tǒng)需要有自我防御、檢測(cè)、監(jiān)督、修復(fù)等性能,同時(shí)配對(duì)一套合理的安全管理,且能嚴(yán)格定期執(zhí)行,具體設(shè)計(jì)如下。
3.1 平臺(tái)設(shè)計(jì)
一個(gè)擁有自我防御、檢測(cè)、監(jiān)督、修復(fù)等性能平臺(tái),可網(wǎng)站編碼、功能和借助外部軟件等方法實(shí)現(xiàn)。
1) 編碼規(guī)范。編碼不規(guī)范容易給黑客留下后門,如明確指定輸出的編碼方式:不要允許攻擊者為你的用戶選擇編碼方式(如ISO 8859-1或 UTF 8)。網(wǎng)站開發(fā)規(guī)范可以參照《OWASP安全編碼規(guī)范快速參考指南》。
2) 全面防御功能設(shè)計(jì)。用戶層常用預(yù)防措施有:①對(duì)用戶身份進(jìn)行驗(yàn)證,對(duì)用戶訪問權(quán)限控制,分級(jí)管理用戶;②對(duì)用戶的輸入特殊字符屏蔽和過(guò)濾;③對(duì)重要和敏感的數(shù)據(jù)進(jìn)行加密。云端常用措施是建立監(jiān)督機(jī)制,預(yù)防被利用的可能。網(wǎng)絡(luò)層采用防護(hù)措施有:①用 SSL 實(shí)現(xiàn)安全通信,防止攻擊,②過(guò)濾所有外部數(shù)據(jù)、使用現(xiàn)有函數(shù)、自己定義函數(shù)進(jìn)行校驗(yàn)、使用白名單。網(wǎng)站系統(tǒng)層常用預(yù)防措施提①編寫通用的安全模塊。如判斷是否驗(yàn)證、授權(quán)等安全模塊代碼。②對(duì)重要的數(shù)據(jù)加密,以確保信息的安全性,如用戶登錄密碼,銀行帳號(hào)。③提供安全存儲(chǔ),對(duì)HTML 或 PHP 文件、與腳本相關(guān)的數(shù)據(jù)和 MySQL數(shù)據(jù)采取不同存儲(chǔ)方式,如腳本只能讀但不能寫。④增強(qiáng)Web服務(wù)器安全,利用WebShell檢測(cè)技術(shù)。
3) 借助外部軟件。①應(yīng)用網(wǎng)站安全評(píng)估產(chǎn)品。目前防御系統(tǒng)有:360、騰訊和SCANV等,其中SCANV(http://www.scanv.com/)是一家專注網(wǎng)站安全監(jiān)測(cè)。②Web應(yīng)用防火墻。
3.2 安全管理設(shè)計(jì)
定期對(duì)網(wǎng)站應(yīng)用狀況的安全檢測(cè),并給出Web應(yīng)用安全性評(píng)估等。常用方法是定期對(duì)WEB日志判斷來(lái)檢測(cè)Web網(wǎng)站是否受到攻擊[3]:
1)檢查web日志:查看是否有特殊記錄,如SQL語(yǔ)句select,drop,insert等關(guān)鍵字參數(shù);或則如“‘;--”等特殊的表達(dá)式的請(qǐng)求記錄;2)檢查web防御系統(tǒng)日志:查看被攻擊的IP或源頁(yè)面等;3)查看防火墻等網(wǎng)絡(luò)設(shè)備日志:如Web端口連接IP分布、服務(wù)器對(duì)外發(fā)起的連接狀況;4)查看數(shù)據(jù)庫(kù)日志:檢查數(shù)據(jù)庫(kù)建立新表的記錄、新庫(kù)、存儲(chǔ)過(guò)程執(zhí)行記錄或者數(shù)據(jù)導(dǎo)入導(dǎo)出記錄等;5)檢查Web目錄:如上傳文件或文件夾及他們修改與最后訪問時(shí)間等。
4 結(jié)束語(yǔ)
綜上所述,本文主要介紹WEB常見的網(wǎng)站攻擊類型及基原理,另外根據(jù)云平臺(tái)網(wǎng)站的安全特點(diǎn)提出防御系統(tǒng)的設(shè)計(jì)建議,望能給平臺(tái)開發(fā)者提供參考。
參考文獻(xiàn):
[1] OWASP.Top10-2013.The Ten Most Critical Web Application Security Risks.[EB/OL ].http://www.owasp.org.
[2] 肖遙.網(wǎng)站入侵與腳本攻防修煉[M].北京:電子工業(yè)出版社,2008.
[3] 俞優(yōu),顧健,李毅.web應(yīng)用安全現(xiàn)狀分析及防護(hù)建議[J].技術(shù)研究,2010,7(76).