網(wǎng)站設(shè)計(jì)安全性分析論文

時(shí)間:2022-01-18 04:08:00

導(dǎo)語:網(wǎng)站設(shè)計(jì)安全性分析論文一文來源于網(wǎng)友上傳,不代表本站觀點(diǎn),若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

網(wǎng)站設(shè)計(jì)安全性分析論文

1網(wǎng)絡(luò)安全總體狀況分析

2007年1月至6月期間,半年時(shí)間內(nèi),CNCERT/CC接收的網(wǎng)絡(luò)仿冒事件和網(wǎng)頁惡意代碼事件,已分別超出去年全年總數(shù)的14.6%和12.5%。

從CNCERT/CC掌握的半年情況來看,攻擊者的攻擊目標(biāo)明確,針對(duì)不同網(wǎng)站和用戶采用不同的攻擊手段,且攻擊行為趨利化特點(diǎn)表現(xiàn)明顯。對(duì)政府類和安全管理相關(guān)類網(wǎng)站主要采用篡改網(wǎng)頁的攻擊形式,也不排除放置惡意代碼的可能。對(duì)中小企業(yè),尤其是以網(wǎng)絡(luò)為核心業(yè)務(wù)的企業(yè),采用有組織的分布式拒絕服務(wù)攻擊(DDoS)等手段進(jìn)行勒索,影響企業(yè)正常業(yè)務(wù)的開展。對(duì)于個(gè)人用戶,攻擊者更多的是通過用戶身份竊取等手段,偷取該用戶游戲賬號(hào)、銀行賬號(hào)、密碼等,竊取用戶的私有財(cái)產(chǎn)。

2用IIS+ASP建網(wǎng)站的安全性分析

微軟推出的IIS+ASP的解決方案作為一種典型的服務(wù)器端網(wǎng)頁設(shè)計(jì)技術(shù),被廣泛應(yīng)用在網(wǎng)上銀行、電子商務(wù)、網(wǎng)上調(diào)查、網(wǎng)上查詢、BBS、搜索引擎等各種互聯(lián)網(wǎng)應(yīng)用中。但是,該解決方案在為我們帶來便捷的同時(shí),也帶來了嚴(yán)峻的安全問題。本文從ASP程序設(shè)計(jì)角度對(duì)WEB信息安全及防范進(jìn)行分析討論。

3SP安全漏洞和防范

3.1程序設(shè)計(jì)與腳本信息泄漏隱患

bak文件。攻擊原理:在有些編輯ASP程序的工具中,當(dāng)創(chuàng)建或者修改一個(gè)ASP文件時(shí),編輯器自動(dòng)創(chuàng)建一個(gè)備份文件,如果你沒有刪除這個(gè)bak文件,攻擊者可以直接下載,這樣源程序就會(huì)被下載。

防范技巧:上傳程序之前要仔細(xì)檢查,刪除不必要的文檔。對(duì)以BAK為后綴的文件要特別小心。

inc文件泄露問題。攻擊原理:當(dāng)存在ASP的主頁正在制作且沒有進(jìn)行最后調(diào)試完成以前,可以被某些搜索引擎機(jī)動(dòng)追加為搜索對(duì)象。如果這時(shí)候有人利用搜索引擎對(duì)這些網(wǎng)頁進(jìn)行查找,會(huì)得到有關(guān)文件的定位,并能在瀏覽器中查看到數(shù)據(jù)庫地點(diǎn)和結(jié)構(gòu)的細(xì)節(jié),并以此揭示完整的源代碼。

防范技巧:程序員應(yīng)該在網(wǎng)頁前對(duì)它進(jìn)行徹底的調(diào)試。首先對(duì).inc文件內(nèi)容進(jìn)行加密,其次也可以使用.asp文件代替.inc文件,使用戶無法從瀏覽器直接觀看文件的源代碼。

3.2對(duì)ASP頁面進(jìn)行加密。為有效地防止ASP源代碼泄露,可以對(duì)ASP頁面進(jìn)行加密。我們?cè)捎脙煞N方法對(duì)ASP頁面進(jìn)行加密。一是使用組件技術(shù)將編程邏輯封裝入DLL之中;二是使用微軟的ScriptEncoder對(duì)ASP頁面進(jìn)行加密。3.3程序設(shè)計(jì)與驗(yàn)證不全漏洞

驗(yàn)證碼。普遍的客戶端交互如留言本、會(huì)員注冊(cè)等僅是按照要求輸入內(nèi)容,但網(wǎng)上有很多攻擊軟件,如注冊(cè)機(jī),可以通過瀏覽WEB,掃描表單,然后在系統(tǒng)上頻繁注冊(cè),頻繁發(fā)送不良信息,造成不良的影響,或者通過軟件不斷的嘗試,盜取你的密碼。而我們使用通過使用驗(yàn)證碼技術(shù),使客戶端輸入的信息都必須經(jīng)過驗(yàn)證,從而可以解決這個(gè)問題。

登陸驗(yàn)證。對(duì)于很多網(wǎng)頁,特別是網(wǎng)站后臺(tái)管理部分,是要求有相應(yīng)權(quán)限的用戶才能進(jìn)入操作的。但是,如果這些頁面沒有對(duì)用戶身份進(jìn)行驗(yàn)證,黑客就可以直接在地址欄輸入收集到的相應(yīng)的URL路徑,避開用戶登錄驗(yàn)證頁面,從而獲得合法用戶的權(quán)限。所以,登陸驗(yàn)證是非常必要的。

SQL注入。SQL注入是從正常的WWW端口訪問,而且表面看起來跟一般的Web頁面訪問沒什么區(qū)別,所以目前市面的防火墻都不會(huì)對(duì)SQL注入發(fā)出警報(bào),如果管理員沒查看IIS日志的習(xí)慣,可能被入侵很長(zhǎng)時(shí)間都不會(huì)發(fā)覺。

SQL注入攻擊是最為常見的程序漏洞攻擊方式,引起攻擊的根本原因就是盲目信任用戶,將用戶輸入用來直接構(gòu)造SQL語句或存儲(chǔ)過程的參數(shù)。以下列出三種攻擊的形式:

A.用戶登錄:假設(shè)登錄頁面有兩個(gè)文本框,分別用來供用戶輸入帳號(hào)和密碼,利用執(zhí)行SQL語句來判斷用戶是否為合法用戶。試想,如果黑客在密碼文本框中輸入''''OR0=0,即不管前面輸入的用戶帳號(hào)和密碼是什么,OR后面的0=0總是成立的,最后結(jié)果就是該黑客成為了合法的用戶。

B.用戶輸入:假設(shè)網(wǎng)頁中有個(gè)搜索功能,只要用戶輸入搜索關(guān)鍵字,系統(tǒng)就列出符合條件的所有記錄,可是,如果黑客在關(guān)鍵字文本框中輸入''''GODROPTABLE用戶表,后果是用戶表被徹底刪除。

C.參數(shù)傳遞:假設(shè)我們有個(gè)網(wǎng)頁鏈接地址是HTTP://……asp?id=22,然后ASP在頁面中利用Request.QueryString[''''id'''']取得該id值,構(gòu)成某SQL語句,這種情況很常見。可是,如果黑客將地址變?yōu)镠TTP://……asp?id=22anduser=0,結(jié)果會(huì)怎樣?如果程序員有沒有對(duì)系統(tǒng)的出錯(cuò)提示進(jìn)行屏蔽處理的話,黑客就獲得了數(shù)據(jù)庫的用戶名,這為他們的進(jìn)一步攻擊提供了很好的條件。

解決方法:以上幾個(gè)例子只是為了起到拋磚引玉的作用,其實(shí),黑客利用“猜測(cè)+精通的sql語言+反復(fù)嘗試”的方式,可以構(gòu)造出各種各樣的sql入侵。作為程序員,如何來防御或者降低受攻擊的幾率呢?作者在實(shí)際中是按以下方法做的:

第一:在用戶輸入頁面加以友好備注,告知用戶只能輸入哪些字符;

第二:在客戶端利用ASP自帶的校驗(yàn)控件和正則表達(dá)式對(duì)用戶輸入進(jìn)行校驗(yàn),發(fā)現(xiàn)非法字符,提示用戶且終止程序進(jìn)行;

第三:為了防止黑客避開客戶端校驗(yàn)直接進(jìn)入后臺(tái),在后臺(tái)程序中利用一個(gè)公用函數(shù)再次對(duì)用戶輸入進(jìn)行檢查,一旦發(fā)現(xiàn)可疑輸入,立即終止程序,但不進(jìn)行提示,同時(shí),將黑客IP、動(dòng)作、日期等信息保存到日志數(shù)據(jù)表中以備核查。

第四:對(duì)于參數(shù)的情況,頁面利用QueryString或者Quest取得參數(shù)后,要對(duì)每個(gè)參數(shù)進(jìn)行判斷處理,發(fā)現(xiàn)異常字符,要利用replace函數(shù)將異常字符過濾掉,然后再做下一步操作。

第五:只給出一種錯(cuò)誤提示信息,服務(wù)器都只提示HTTP500錯(cuò)誤。

第六:在IIS中為每個(gè)網(wǎng)站設(shè)置好執(zhí)行權(quán)限。千萬別給靜態(tài)網(wǎng)站以“腳本和可執(zhí)行”權(quán)限。一般情況下給個(gè)“純腳本”權(quán)限就夠了,對(duì)于那些通過網(wǎng)站后臺(tái)管理中心上傳的文件存放的目錄,就更吝嗇一點(diǎn)吧,執(zhí)行權(quán)限設(shè)為“無”好了。

第七:數(shù)據(jù)庫用戶的權(quán)限配置。對(duì)于MS_SQL,如果PUBLIC權(quán)限足夠使用的絕不給再高的權(quán)限,千萬不要SA級(jí)別的權(quán)限隨隨便便地給。

3.4傳漏洞

諸如論壇,同學(xué)錄等網(wǎng)站系統(tǒng)都提供了文件上傳功能,但在網(wǎng)頁設(shè)計(jì)時(shí)如果缺少對(duì)用戶提交參數(shù)的過濾,將使得攻擊者可以上傳網(wǎng)頁木馬等惡意文件,導(dǎo)致攻擊事件的發(fā)生。

防文件上傳漏洞

在文件上傳之前,加入文件類型判斷模塊,進(jìn)行過濾,防止ASP、ASA、CER等類型的文件上傳。

暴庫。暴庫,就是通過一些技術(shù)手段或者程序漏洞得到數(shù)據(jù)庫的地址,并將數(shù)據(jù)非法下載到本地。

數(shù)據(jù)庫可能被下載。在IIS+ASP網(wǎng)站中,如果有人通過各種方法獲得或者猜到數(shù)據(jù)庫的存儲(chǔ)路徑和文件名,則該數(shù)據(jù)庫就可以被下載到本地。

數(shù)據(jù)庫可能被解密

由于Access數(shù)據(jù)庫的加密機(jī)制比較簡(jiǎn)單,即使設(shè)置了密碼,解密也很容易。因此,只要數(shù)據(jù)庫被下載,其信息就沒有任何安全性可言了。

防止數(shù)據(jù)庫被下載。由于Access數(shù)據(jù)庫加密機(jī)制過于簡(jiǎn)單,有效地防止數(shù)據(jù)庫被下載,就成了提高ASP+Access解決方案安全性的重中之重。以下兩種方法簡(jiǎn)單、有效。

非常規(guī)命名法。為Access數(shù)據(jù)庫文件起一個(gè)復(fù)雜的非常規(guī)名字,并把它放在幾個(gè)目錄下。

使用ODBC數(shù)據(jù)源。在ASP程序設(shè)計(jì)中,如果有條件,應(yīng)盡量使用ODBC數(shù)據(jù)源,不要把數(shù)據(jù)庫名寫在程序中,否則,數(shù)據(jù)庫名將隨ASP源代碼的失密而一同失密。

使用密碼加密。經(jīng)過MD5加密,再結(jié)合生成圖片驗(yàn)證碼技術(shù),暴力破解的難度會(huì)大大增強(qiáng)。

使用數(shù)據(jù)備份。當(dāng)網(wǎng)站被黑客攻擊或者其它原因丟失了數(shù)據(jù),可以將備份的數(shù)據(jù)恢復(fù)到原始的數(shù)據(jù),保證了網(wǎng)站在一些人為的、自然的不可避免的條件下的相對(duì)安全性。

3.5SP木馬

由于ASP它本身是服務(wù)器提供的一項(xiàng)服務(wù)功能,所以這種ASP腳本的木馬后門,不會(huì)被殺毒軟件查殺。被黑客們稱為“永遠(yuǎn)不會(huì)被查殺的后門”。我在這里講講如何有效的發(fā)現(xiàn)web空間中的asp木馬并清除。

技巧1:殺毒軟件查殺

一些非常有名的asp木馬已經(jīng)被殺毒軟件列入了黑名單,所以利用殺毒軟件對(duì)web空間中的文件進(jìn)行掃描,可以有效的發(fā)現(xiàn)并清除這些有名的asp木馬。

技巧2:FTP客戶端對(duì)比

asp木馬若進(jìn)行偽裝,加密,躲藏殺毒軟件,怎么辦?

我們可以利用一些FTP客戶端軟件(例如cuteftp,F(xiàn)lashFXP)提供的文件對(duì)比功能,通過對(duì)比FTP的中的web文件和本地的備份文件,發(fā)現(xiàn)是否多出可疑文件。

技巧3:用BeyondCompare2進(jìn)行對(duì)比

滲透性asp木馬,可以將代碼插入到指定web文件中,平常情況下不會(huì)顯示,只有使用觸發(fā)語句才能打開asp木馬,其隱蔽性非常高。BeyondCompare2這時(shí)候就會(huì)作用比較明顯了。

技巧4:利用組件性能找asp木馬

如:思易asp木馬追捕。

大家在查找web空間的asp木馬時(shí),最好幾種方法結(jié)合起來,這樣就能有效的查殺被隱藏起來的asp木馬。

結(jié)束語

總結(jié)了ASP木馬防范的十大原則供大家參考:

建議用戶通過FTP來上傳、維護(hù)網(wǎng)頁,盡量不安裝asp的上傳程序。

對(duì)asp上傳程序的調(diào)用一定要進(jìn)行身份認(rèn)證,并只允許信任的人使用上傳程序。

asp程序管理員的用戶名和密碼要有一定復(fù)雜性,不能過于簡(jiǎn)單,還要注意定期更換。

到正規(guī)網(wǎng)站下載asp程序,下載后要對(duì)其數(shù)據(jù)庫名稱和存放路徑進(jìn)行修改,數(shù)據(jù)庫文件名稱也要有一定復(fù)雜性。

要盡量保持程序是最新版本。

不要在網(wǎng)頁上加注后臺(tái)管理程序登陸頁面的鏈接。

為防止程序有未知漏洞,可以在維護(hù)后刪除后臺(tái)管理程序的登陸頁面,下次維護(hù)時(shí)再通過上傳即可。

要時(shí)常備份數(shù)據(jù)庫等重要文件。

日常要多維護(hù),并注意空間中是否有來歷不明的asp文件。

一旦發(fā)現(xiàn)被人侵,除非自己能識(shí)別出所有木馬文件,否則要?jiǎng)h除所有文件。重新上傳文件前,所有asp程序用戶名和密碼都要重置,并要重新修改程序數(shù)據(jù)庫名稱和存放路徑以及后臺(tái)管理程序的路徑。

做好以上防范措施,您的網(wǎng)站只能說是相對(duì)安全了,決不能因此疏忽大意,因?yàn)槿肭峙c反入侵是一場(chǎng)永恒的戰(zhàn)爭(zhēng)!網(wǎng)站安全是一個(gè)較為復(fù)雜的問題,嚴(yán)格的說,沒有絕對(duì)安全的網(wǎng)絡(luò)系統(tǒng),我們只有通過不斷的改進(jìn)程序,將各種可能出現(xiàn)的問題考慮周全,對(duì)潛在的異常情況進(jìn)行處理,才能減少被黑客入侵的機(jī)會(huì)。

參考文獻(xiàn)

[1]袁志芳田曉芳李桂寶《ASP程序設(shè)計(jì)與WEB信息安全》中國(guó)教育信息化2007年21期.

[2]陳明奇《2007年上半年網(wǎng)絡(luò)安全狀況分析》信息網(wǎng)絡(luò)安全2007年第10期

[3]《防范ASP木馬的十大基本原則》計(jì)算機(jī)與網(wǎng)絡(luò),2006年第1期論文關(guān)鍵詞:ASP;黑客攻擊;SQL注入;安全漏洞;木馬后門

論文摘要:網(wǎng)絡(luò)上的動(dòng)態(tài)網(wǎng)站以ASP為多數(shù),我們學(xué)校的網(wǎng)站也是ASP的。筆者作為學(xué)校網(wǎng)站的制作和維護(hù)人員,與ASP攻擊的各種現(xiàn)象斗爭(zhēng)了多次,也對(duì)網(wǎng)站進(jìn)行了一次次的修補(bǔ),根據(jù)工作經(jīng)驗(yàn),就ASP網(wǎng)站設(shè)計(jì)常見安全漏洞及其防范進(jìn)行一些探討。本文結(jié)合ASP動(dòng)態(tài)網(wǎng)站開發(fā)經(jīng)驗(yàn),對(duì)ASP程序設(shè)計(jì)存在的信息安全隱患進(jìn)行分析,討論了ASP程序常見的安全漏洞,從程序設(shè)計(jì)角度對(duì)WEB信息安全及防范提供了參考。