级别与解法
level | method |
–low – | –sql注入,爆破密码– |
—medium | 爆破密码 |
high | 爆破结合tocken |
impossible | 我不到啊 |
#0x01 low
部分代码如下
$user = $_GET[ 'username' ]; // Get password $pass = $_GET[ 'password' ]; $pass = md5( $pass ); // Check the database $query = "SELECT * FROM `users` WHERE user = '$user' AND password = '$pass';";
pass被md5处理,无法注入
user无过滤,可注入
admin' or 1='1
即可
and 优先级比 or 高,密码为空,and 运算结果为假,or运算结果为真,通过
0x02 medium
有mysqli_real_escape_string把注入用到的符号过滤,直接爆密码即可
0x03 high
加入了tocken,使用脚本爆,每次请求前在请求头中加入tocken
0x04 impossible
用户名或密码错误会锁定账户,爆破密码较复杂,但可使用拒绝服务攻击DOS