久久久精品2019免费观看_亚洲国产精品成人久久久_69国产成人综合久久精品91_国产精品久久精品视

asp的sql注入攻擊的方法

  核心提示:找了一些sql注入攻擊的方法,測試了我們的網(wǎng)站,攻擊不成功。ASP可運行的服務器端平臺包括:WinNT、Win2k、WinXP和Win2003,在Win98系統(tǒng)里裝上PWS4.0也可運行。現(xiàn)在很流行的注入攻擊,就是利用提交特殊地址將ASP中引用的正常SQL語句和入侵者所需要的SQL語句一并執(zhí)行,使入…

找了一些sql注入攻擊的方法,測試了我們的網(wǎng)站,攻擊不成功。

ASP可運行的服務器端平臺包括:WinNT、Win2k、WinXP和Win2003,在Win98系統(tǒng)里裝上PWS4.0也可運行。

現(xiàn)在很流行的注入攻擊,就是利用提交特殊地址將ASP中引用的正常SQL語句和入侵者所需要的SQL語句一并執(zhí)行,使入侵者達到入侵的目的。隨著有一些腳本注入工具發(fā)布,使菜鳥也可以輕松完成對ASP的注入攻擊。那么我們來了解一下這些工具是怎樣注入的。

首先,入侵者會對一個網(wǎng)站確定可不可以進行注入,假設一篇新聞(文章)的地址為:http://www.xxxx.com/news.asp?id=1 一般會以提交兩個地址來測試,如:

http://www.xxxx.com/news.asp?id=1 and 1=1

http://www.xxxx.com/news.asp?id=1 and 1=2

第一個地址后面加了and 1=1,構(gòu)成的SQL語句也就變?yōu)榱耍篠elect * from 表單名 where id=1 and 1=1這句話要成立必須and前后語句都成立。那么前面的文章地址是可以訪問的,后面的1=1也是客觀成立的,那么第一個地址就可以正常顯示;相反1=2是顯然不成立的,關(guān)鍵就看這步了,如果提交and 1=2頁面還是正常顯示說明他并沒有將and 1=2寫入SQL語句,此站也就不存在注入漏洞;但如果提交and 1=2之后返回了錯誤頁面則說明此站點將后面的語句帶入了SQL語句并執(zhí)行了,也就說明他可以進行SQL注入。(注:如果地址后面跟的是news.asp?id='1'就得變?yōu)閚ews.asp?id=1' and '1'='1來補全引號了)

現(xiàn)在知道了可以注入后,入侵者可以做什么呢?如果提交這樣的地址:

http://www.xxxx.com/news.asp?id=1 and exists (select * from 表名 where 列名=數(shù)據(jù))根據(jù)返回的正確或錯誤頁面來判斷猜的表名和列名是否正確,具體實現(xiàn)時是先猜表名再猜列名。當猜出表名和列名之后還可以用ASC和MID函數(shù)來猜出各列的數(shù)據(jù)。MID函數(shù)的格式為:mid(變量名,第幾個字符開始讀取,讀取幾個字符),比如:mid(pwd,1,2)就可以從變量pwd中的第一位開始讀取兩位的字符。ASC函數(shù)的格式為:ASC("字符串"),如:asc("a")就可以讀出字母a的ASCII碼了。那么實際應用的時候就可以寫為:asc(mid(pwd,1,1))這樣讀取的就是pwd列的第一個字符的ASCII碼,提交: asc(mid(pwd,1,1))>97以返回的頁面是否為正確頁面來判斷pwd列的第一個字符的ASCII碼是否大于97(a的ASCII碼),如果正確就再試是否小于122(z的ASCII碼)……這樣慢慢縮小字符的ASCII碼的范圍,直到猜到真實的ASCII碼。這樣一位一位的猜就可以得到數(shù)據(jù)庫中的用戶名和密碼。還有一種ASP驗證缺陷——就是用戶名和密碼都輸'or '1'='1,構(gòu)造SQL語句Select * form 表單名 where username='' or '1'='1' and pwd='' or '1'='1'就可以達到繞過密碼驗證的目的。

未經(jīng)允許不得轉(zhuǎn)載:445IT之家 » asp的sql注入攻擊的方法

贊 (0) 打賞

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

微信掃一掃打賞