保護ASP系統(tǒng)的一個小方法分享
本文是關(guān)于作者的一個保護ASP系統(tǒng)的方法分享給大家參考,還望大家指正。
研究了漏洞,我就想解決的方法,我總結(jié)一下,里面有我想的一個不成熟的想法。
是給高手看的,看看是不是一種解決已知和未知SQL注入漏洞的好方法。
這個是我想的不成熟的方法,我認為能解決大部分以知和未知的SQL注入漏洞,讓入侵者弄不到密碼!
首先我先分析大多數(shù)的SQL注入,原理無非就是對管理員敏感的信息進行猜測,因此都需要知道管理員表名,用戶變量和密碼變量才能進行猜測如
http://ip/art/list.ASP?id=253 and 1=(select id from admin where len(password)=10)
,而免費的ASP系統(tǒng)最大的缺點是什么?數(shù)據(jù)庫的儲存敏感的信息的地方都是一樣的!!
試想對于上面的注入,我不知道儲存管理員的表為admin,我怎么可能進行攻擊呢?呵呵大家都想到了吧,我說的方法就是自己修改表名和ASP代碼,以達到保護的目的,讓入侵者猜到吐血,也找不出!
此方法我認為適合大多數(shù)的文章管理和下載系統(tǒng),等asp系統(tǒng)
還是實戰(zhàn)一下,對于動網(wǎng)文章系統(tǒng)3。4的修改,
第一步:修改數(shù)據(jù)庫
用Access打開數(shù)據(jù)庫,然后在表名admin上點右鍵選擇重命名,我命名為admin1234(呵呵,你可要命名個隨機難猜的啊)
第二步:修改ASP代碼
一般我門只要修改相關(guān)的SQL語句就可以了。
先找出需要修改的文件,恩,打開Windows的搜索,選擇搜索動網(wǎng)文章的文件夾,然后在搜索條件為包含文字"admin",一定要加引號,表示此字符串單獨存在,不包含在其他字符串中,這時就出來了13個文件,然后打開文件,我發(fā)現(xiàn)只有一出干擾就是
if session("admin")="" then 他也包含admin,其余的均為SQL語句查詢里,所以我看了一下確定了該改的文件有
chkadmin.asp saveuser.asp saveuer1.asp adminuser.asp
修改為,用記事本打開,并利用其搜索替換的功能,將所有from admin 替換為from admin1234,其實就是遇到sql="select * from admin where flag 或類似的SQL語句,就將admin修改為admin1234,然后保存,
好了,到此就修改完了,然后測試了一下,還行,沒有問題。這下即使有新漏洞我也不怕了,因為入侵者猜不到我的表名,呵呵。
這就是一次簡單實戰(zhàn),對于其他的ASP系統(tǒng)也是類似的。
到這里我不太滿意,因為我在用手工修改,誰能保證不出錯,而且對于論壇類的ASP是不可能的。
所以我的想法是用軟件批量的修改文件,這樣的功能的軟件應該有,可以自己找,或編,但是我還是認為不好,因為有好多干擾的因素,如上面的的if session("admin")="" then 就不能改 的,軟件是不好判斷的。所以我認為對于這個方法應該在業(yè)界行成編程的新規(guī)范。還是拿動網(wǎng)來做例子
對于動網(wǎng)的BBS,他可以在編寫的時候,對于儲存用戶和管理員的表名起一個與BBS代碼沒有重復的表名,然后隨論壇發(fā)布一個軟件,在用戶安裝后,批量修改數(shù)據(jù)庫和論壇文件代碼中儲存管理員的表名為用戶自己定義的表名。這樣就解決了修改時文件過多,和相同字符干擾的問題,而你自己定義的管理員的表名被猜出的幾率極底,入侵者猜不出來就沒法進行SQL注入攻擊了,即使是他發(fā)現(xiàn)了新的注入漏洞,如此安全性大大提高了。
我希望的是這個方法可以實現(xiàn),這樣在用戶得到文件后可以自己定義敏感數(shù)據(jù),以避免絕大多數(shù)已知和未知的SQL攻擊。
這是我找的一個好工具,非常不錯的批量文件字符替換程序。
自我點評一下,我對前兩篇文章不是很滿意的,即動網(wǎng)漏洞和浪客密碼,我只是在原有的知識上重復工作,沒什么用,而這篇文章我認為可以有效的改變安全問題,我看了一下,如果對于一個如上方法處理的BBSXP論壇,即使是沒有補丁對于BBSXP漏洞倒著看一、二、四、五都是天生免疫的,對于動網(wǎng),如果也用上面的方法處理過,那么,對于”絕對背后的微笑-再談DVBBS漏洞“,“免費版dvBBS的另一類漏洞“,”Sql Injection with Access“等漏洞也是天生免疫的,所以我對這個方法還是抱著很大希望的,如果能成為一種規(guī)范,應該對安全的貢獻是大的,雖然目前還不行,但我想將來可以行,而且現(xiàn)在對于小規(guī)模的ASP系統(tǒng)可以手工修改。