企業(yè)網(wǎng)站設(shè)計(jì)安全缺陷如何解決?
日期 : 2019-01-24 08:26:22
解決登錄驗(yàn)證安全缺陷
很多網(wǎng)站在進(jìn)行用戶登錄時(shí),多會(huì)使用人機(jī)交互界面完成登錄驗(yàn)證。而網(wǎng)站的設(shè)計(jì)者對(duì)驗(yàn)證程序沒有做到全面的考慮,這樣很容易產(chǎn)生登錄驗(yàn)證安全缺陷,造成 Script Language編寫程序在對(duì)用戶賬號(hào)密碼進(jìn)行驗(yàn)證工作時(shí)出現(xiàn)問題。
針對(duì)登錄驗(yàn)證安全缺陷這個(gè)問題,可以通過下面的方法解決:首先在注冊(cè)用戶名和密碼時(shí)添加注冊(cè)限制對(duì)于非法的用戶名和密碼不準(zhǔn)申請(qǐng);其次,在利用SQL語(yǔ)句進(jìn)行登錄查詢時(shí),我們可以先過濾用戶輸入的信息,在一定程度上防止非法賬號(hào)及密碼的應(yīng)用;接下來,在進(jìn)行用戶驗(yàn)證時(shí),不急于對(duì)用戶名和密碼同時(shí)進(jìn)行匹配,而是先對(duì)用戶名進(jìn)行驗(yàn)證,等用戶名匹配成功之后,再進(jìn)行密碼的驗(yàn)證工作。這樣可以減少查詢時(shí)間,提高查詢效率。
SQL注入漏洞的預(yù)防
SQL語(yǔ)言是網(wǎng)站設(shè)計(jì)中必不可少的后臺(tái)數(shù)據(jù)庫(kù)語(yǔ)言。在SQL語(yǔ)言中有一些特殊字符如“*”等,這些特殊字符是為了完成模糊匹配的??捎行┚W(wǎng)站設(shè)計(jì)人員在網(wǎng)站設(shè)計(jì)初始,沒有考慮到SQL語(yǔ)言的書寫規(guī)范和特殊字符的應(yīng)用,產(chǎn)生SL注入漏洞,導(dǎo)致攻擊者通過表單提交中的全局變量GET和POST把SQL語(yǔ)句提交并執(zhí)行。
針對(duì)于這一問題,具體的解決方法包括:可以打開配置文件中的 magc_ quotes_spe和 mage_ quotes_ runtime的設(shè)置;設(shè)置 resister globals為of;關(guān)閉全局變量注冊(cè);最后,在給數(shù)據(jù)庫(kù)和數(shù)據(jù)表字段進(jìn)行命名時(shí),特別是一些重要字段命名時(shí),不要取一些很容易被猜到的名字。例如“姓名”字段最好不要命名為name”字段。
文件上傳漏洞的解決方案
文件上傳漏洞產(chǎn)生的原因主要是攻擊者通過網(wǎng)站上提供的“上傳文件"功能,把一些惡意的可執(zhí)行文件上傳至服務(wù)器,并通過它獲得對(duì)服務(wù)器的控制權(quán)。可以通過下面幾個(gè)方面來解決文件上傳漏洞:首先把文件上傳的目錄設(shè)置為不可執(zhí)行,這樣一來,此目錄只能存放文件,不能做其它操作;其次,文件類型的判斷。要對(duì)上傳的文件進(jìn)行判斷,可執(zhí)行文件等特殊類型的文件不可以上傳保存;最后,使用隨機(jī)數(shù)改寫文件名和文件路徑;單獨(dú)設(shè)置文件服務(wù)器的域名。
Web安全加固
針對(duì)網(wǎng)頁(yè)改的攻擊方法多種多樣。如果想要網(wǎng)頁(yè)不被纂改,最直接的方法就是在設(shè)計(jì)網(wǎng)頁(yè)時(shí)采取一定的措施來避免被簒改的網(wǎng)頁(yè)從服務(wù)器中流出去。同時(shí),加固網(wǎng)頁(yè)使其不容易被修改。前者我們可以使用硬件的方式來實(shí)現(xiàn)。而后者,我們可以通過網(wǎng)頁(yè)設(shè)計(jì)和應(yīng)用程序來實(shí)現(xiàn)。到目前為止兩種防護(hù)功能的相互整合程度還不是很高。在現(xiàn)今不斷發(fā)展的信息技術(shù)時(shí)代,網(wǎng)絡(luò)無(wú)處不在,我們的很多信息都是通過網(wǎng)站獲得,所以網(wǎng)站技術(shù)就成了項(xiàng)很重要的內(nèi)容。網(wǎng)頁(yè)設(shè)計(jì)中經(jīng)常使用的服務(wù)器端設(shè)計(jì)程序主要包括 Active Server Page、 Hypertext reprocessor、 Java Server Pages等腳本語(yǔ)言,正是這些腳本語(yǔ)言為網(wǎng)站開發(fā)提供了平臺(tái)。利用ASP、PHP、JSP等腳本語(yǔ)言搭建的網(wǎng)站后臺(tái)程序,不論是程序開發(fā)階段,還是程序后期維護(hù)階段,對(duì)于設(shè)計(jì)開發(fā)人員來說都非常的高效、便捷,而且實(shí)現(xiàn)起來也是比較容易的。一個(gè)功能健全而使用安全的網(wǎng)站所涉及到的程序內(nèi)容有很多,又因網(wǎng)頁(yè)設(shè)計(jì)的特殊性,使得利用表單等功能實(shí)現(xiàn)的人機(jī)交互更為頻繁,用戶輸入什么信息內(nèi)容是網(wǎng)頁(yè)設(shè)計(jì)者無(wú)法預(yù)測(cè)的,此時(shí)網(wǎng)頁(yè)設(shè)計(jì)中安全隱患就會(huì)暴露出來,用戶的輸入內(nèi)容就有可能對(duì)網(wǎng)站造成不同程度的攻擊。在網(wǎng)站設(shè)計(jì)的過程中,除了上面介紹的幾種安全缺陷以外,還有很多其它的安全缺陷。因此,在建設(shè)網(wǎng)站時(shí)一定要多多注意網(wǎng)站的安全性,請(qǐng)?jiān)谕瓿删W(wǎng)站設(shè)計(jì)功能的基礎(chǔ)上,在一定程度上注意提高網(wǎng)站的安全性。
很多網(wǎng)站在進(jìn)行用戶登錄時(shí),多會(huì)使用人機(jī)交互界面完成登錄驗(yàn)證。而網(wǎng)站的設(shè)計(jì)者對(duì)驗(yàn)證程序沒有做到全面的考慮,這樣很容易產(chǎn)生登錄驗(yàn)證安全缺陷,造成 Script Language編寫程序在對(duì)用戶賬號(hào)密碼進(jìn)行驗(yàn)證工作時(shí)出現(xiàn)問題。
針對(duì)登錄驗(yàn)證安全缺陷這個(gè)問題,可以通過下面的方法解決:首先在注冊(cè)用戶名和密碼時(shí)添加注冊(cè)限制對(duì)于非法的用戶名和密碼不準(zhǔn)申請(qǐng);其次,在利用SQL語(yǔ)句進(jìn)行登錄查詢時(shí),我們可以先過濾用戶輸入的信息,在一定程度上防止非法賬號(hào)及密碼的應(yīng)用;接下來,在進(jìn)行用戶驗(yàn)證時(shí),不急于對(duì)用戶名和密碼同時(shí)進(jìn)行匹配,而是先對(duì)用戶名進(jìn)行驗(yàn)證,等用戶名匹配成功之后,再進(jìn)行密碼的驗(yàn)證工作。這樣可以減少查詢時(shí)間,提高查詢效率。
SQL注入漏洞的預(yù)防
SQL語(yǔ)言是網(wǎng)站設(shè)計(jì)中必不可少的后臺(tái)數(shù)據(jù)庫(kù)語(yǔ)言。在SQL語(yǔ)言中有一些特殊字符如“*”等,這些特殊字符是為了完成模糊匹配的??捎行┚W(wǎng)站設(shè)計(jì)人員在網(wǎng)站設(shè)計(jì)初始,沒有考慮到SQL語(yǔ)言的書寫規(guī)范和特殊字符的應(yīng)用,產(chǎn)生SL注入漏洞,導(dǎo)致攻擊者通過表單提交中的全局變量GET和POST把SQL語(yǔ)句提交并執(zhí)行。
針對(duì)于這一問題,具體的解決方法包括:可以打開配置文件中的 magc_ quotes_spe和 mage_ quotes_ runtime的設(shè)置;設(shè)置 resister globals為of;關(guān)閉全局變量注冊(cè);最后,在給數(shù)據(jù)庫(kù)和數(shù)據(jù)表字段進(jìn)行命名時(shí),特別是一些重要字段命名時(shí),不要取一些很容易被猜到的名字。例如“姓名”字段最好不要命名為name”字段。
文件上傳漏洞的解決方案
文件上傳漏洞產(chǎn)生的原因主要是攻擊者通過網(wǎng)站上提供的“上傳文件"功能,把一些惡意的可執(zhí)行文件上傳至服務(wù)器,并通過它獲得對(duì)服務(wù)器的控制權(quán)。可以通過下面幾個(gè)方面來解決文件上傳漏洞:首先把文件上傳的目錄設(shè)置為不可執(zhí)行,這樣一來,此目錄只能存放文件,不能做其它操作;其次,文件類型的判斷。要對(duì)上傳的文件進(jìn)行判斷,可執(zhí)行文件等特殊類型的文件不可以上傳保存;最后,使用隨機(jī)數(shù)改寫文件名和文件路徑;單獨(dú)設(shè)置文件服務(wù)器的域名。
Web安全加固
針對(duì)網(wǎng)頁(yè)改的攻擊方法多種多樣。如果想要網(wǎng)頁(yè)不被纂改,最直接的方法就是在設(shè)計(jì)網(wǎng)頁(yè)時(shí)采取一定的措施來避免被簒改的網(wǎng)頁(yè)從服務(wù)器中流出去。同時(shí),加固網(wǎng)頁(yè)使其不容易被修改。前者我們可以使用硬件的方式來實(shí)現(xiàn)。而后者,我們可以通過網(wǎng)頁(yè)設(shè)計(jì)和應(yīng)用程序來實(shí)現(xiàn)。到目前為止兩種防護(hù)功能的相互整合程度還不是很高。在現(xiàn)今不斷發(fā)展的信息技術(shù)時(shí)代,網(wǎng)絡(luò)無(wú)處不在,我們的很多信息都是通過網(wǎng)站獲得,所以網(wǎng)站技術(shù)就成了項(xiàng)很重要的內(nèi)容。網(wǎng)頁(yè)設(shè)計(jì)中經(jīng)常使用的服務(wù)器端設(shè)計(jì)程序主要包括 Active Server Page、 Hypertext reprocessor、 Java Server Pages等腳本語(yǔ)言,正是這些腳本語(yǔ)言為網(wǎng)站開發(fā)提供了平臺(tái)。利用ASP、PHP、JSP等腳本語(yǔ)言搭建的網(wǎng)站后臺(tái)程序,不論是程序開發(fā)階段,還是程序后期維護(hù)階段,對(duì)于設(shè)計(jì)開發(fā)人員來說都非常的高效、便捷,而且實(shí)現(xiàn)起來也是比較容易的。一個(gè)功能健全而使用安全的網(wǎng)站所涉及到的程序內(nèi)容有很多,又因網(wǎng)頁(yè)設(shè)計(jì)的特殊性,使得利用表單等功能實(shí)現(xiàn)的人機(jī)交互更為頻繁,用戶輸入什么信息內(nèi)容是網(wǎng)頁(yè)設(shè)計(jì)者無(wú)法預(yù)測(cè)的,此時(shí)網(wǎng)頁(yè)設(shè)計(jì)中安全隱患就會(huì)暴露出來,用戶的輸入內(nèi)容就有可能對(duì)網(wǎng)站造成不同程度的攻擊。在網(wǎng)站設(shè)計(jì)的過程中,除了上面介紹的幾種安全缺陷以外,還有很多其它的安全缺陷。因此,在建設(shè)網(wǎng)站時(shí)一定要多多注意網(wǎng)站的安全性,請(qǐng)?jiān)谕瓿删W(wǎng)站設(shè)計(jì)功能的基礎(chǔ)上,在一定程度上注意提高網(wǎng)站的安全性。