現(xiàn)已是21世際信息時(shí)代、網(wǎng)絡(luò)時(shí)代,在這信息時(shí)代里給我們帶來了很多方便快捷的通信。同時(shí)也給我?guī)砗芏喟踩系碾[患,為了保證應(yīng)用程序的安全,我們應(yīng)當(dāng)從編寫第一行代碼的時(shí)候開始做起,原因很簡單,隨著應(yīng)用規(guī)模的發(fā)展,修補(bǔ)安全漏洞所需的代價(jià)也隨之快速增長。根據(jù)IBM的系統(tǒng)科學(xué)協(xié)會(huì)(Systems Sciences Institute)的研究,如果等到軟件部署之后再來修補(bǔ)缺陷,其代價(jià)相當(dāng)于開發(fā)期間檢測和消除缺陷的15倍。
為了用最小的代價(jià)保障應(yīng)用程序的安全,在代碼本身的安全性、抗御攻擊的能力等方面,開發(fā)者應(yīng)當(dāng)擔(dān)負(fù)更多的責(zé)任。然而,要從開發(fā)的最初階段保障程序的安全性,必須具有相應(yīng)的技能和工具,而真正掌握這些技能和工具的開發(fā)者并不是很多。雖然學(xué)寫安全的代碼是一個(gè)復(fù)雜的過程,**在大學(xué)、內(nèi)部培訓(xùn)會(huì)、行業(yè)會(huì)議上完成,但只要掌握了下面五種常見的ASP.NET應(yīng)用安全缺陷以及推薦的修正方案,就能夠領(lǐng)先一步,將不可或缺的安全因素融入到應(yīng)用的出生之時(shí)。
一、不能盲目相信用戶輸入
在Web應(yīng)用開發(fā)中,開發(fā)者**的失誤往往是無條件地信任用戶輸入,假定用戶(即使是惡意用戶)總是受到瀏覽器的限制,總是通過瀏覽器和服務(wù)器交互,從而打開了攻擊Web應(yīng)用的大門。實(shí)際上,黑客們攻擊和操作Web網(wǎng)站的工具很多,根本不必局限于瀏覽器,從**級(jí)的字符模式的原始界面(例如telnet),到CGI腳本掃描器、Web代理、Web應(yīng)用掃描器,惡意用戶可能采用的攻擊模式和手段很多。
因此,只有嚴(yán)密地驗(yàn)證用戶輸入的合法性,才能有效地抵抗黑客的攻擊。
二、幾種常見的ASP.NET安全缺陷
三、使用自動(dòng)安全測試工具
由于客戶需求不斷變化,一些單位平均每三個(gè)月就要部署新的應(yīng)用,同時(shí)由于人員流動(dòng),所以對開發(fā)者快速開發(fā)健壯的、高質(zhì)量的代碼寄予很高的期望。雖然對所有開發(fā)者進(jìn)行代碼安全技術(shù)的培訓(xùn)是十分必要的,但不可否認(rèn),自動(dòng)檢測代碼安全漏洞的工具也有助于快速開發(fā)安全的應(yīng)用程序。
到目前為止,開發(fā)者常用的工具只能涵蓋功能測試的特定方面,例如性能測試,BUG/故障點(diǎn)偵查。人工檢查代碼有著許多與生俱來的局限,而且要求開發(fā)者具有豐富的代碼安全經(jīng)驗(yàn),所以對于編寫高質(zhì)量的應(yīng)用來說,面向應(yīng)用程序安全及其在惡意環(huán)境下行為的工具也是十分關(guān)鍵的。
要迅速提高應(yīng)用的質(zhì)量和安全性,最有效的辦法是給開發(fā)者提供一個(gè)自動(dòng)測試應(yīng)用的工具。
結(jié)束語:Web服務(wù)應(yīng)用正在爆炸式增長,越來越多的應(yīng)用被推出到防火墻之外,安全性脆弱的Web應(yīng)用面臨的風(fēng)險(xiǎn)也只會(huì)有增無減。同時(shí),為了在緊迫的時(shí)限之前快速完成應(yīng)用開發(fā),開發(fā)者面臨的壓力也越來越大。注重編寫代碼時(shí)的安全問題,同時(shí)投入必要的資源,這樣才能為未來的Web服務(wù)應(yīng)用做好準(zhǔn)備,同時(shí)確保當(dāng)前應(yīng)用的高質(zhì)量。只有從應(yīng)用的出生之日開始就采取正確的措施來確保其安全性,才能構(gòu)造出高質(zhì)量、安全的應(yīng)用。
聲明:本站所有文章資源內(nèi)容,如無特殊說明或標(biāo)注,均為采集網(wǎng)絡(luò)資源。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系本站刪除。