原文作者:th1s
转载自:https://www.th1s.cn/index.php/2018/02/26/213.html
做题和实战的时候都遇到了盲注点过滤了小括号的情况,小括号被过滤意味着无法使用mysql内置的所有函数。摸索出了一些不同场景下bypass的方法,记录下。
easy demo
贴一个小demo。
[PHP] 纯文本查看 复制代码<?php
$user = $_REQUEST['user'];
if(preg_match("/\(|\)/", $user)){
printf('illegal user');
exit();
}
$conn = mysqli_connect('127.0.0.1', 'root', '', 'php3');
$sql = "select * from php3 where user = '$user'";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
echo "xxx";
} else {
echo "username error";
}
?>
代码逻辑如下:
获取 request 变量$user
很明显的注入点select * from php3 where user = '$user