1.宽字节注入
其余web文章参考:web学习目录
宽字节注入目的是绕过单双引号转义,以sqli-lab-32为例
2\'
325c27
服务器会将单双引号进行转义,由原来定义字符串的特殊字符转义为普通字符
代码分析
function check_addslashes($string)
{
$string = preg_replace('/'. preg_quote('\\') .'/', "\\\\\\", $string); //escape any backslash
$string = preg_replace('/\'/i', '\\\'', $string); //escape single quote with a backslash
$string = preg_replace('/\"/', "\\\"", $string); //escape double quote with a backslash
//这里单双引号被转义,没有其他过滤
return $string;
}
// take the variables
if(isset($_GET['id']))
{
$id=check_addslashes($_GET['id']);
//echo "The filtered request is :" .$id . "<br>";
//logging the connection parameters to a file for analysis.
$fp=fopen('result.txt','a');
fwrite($fp,'ID:'.$id."\n");
fclose($fp);
// connectivity
mysql_query("SET NAMES gbk"); //将与数据库交互的字符编码设置为了GBK
$sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1";
$result=mysql_query($sql);
GBK编码
GBK汉字编码方案,双字节编码,两个字节作为一个汉字。GBK编码范围【8140,FEFE】,可以通过
。注意到5C在GBK编码的低位范围之内【40,FE】。在5C之前添加一个字符【81,FE】之间,该字符就会和5C组成一个汉字
?id=2%cb' and 1=2 union select 1,database(),3 --+
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具