宽字节SQL注入

本文介绍了SQL注入的概念,重点关注了宽字节注入在PHP环境下的实现,包括利用gbk编码绕过过滤的原理,以及如何通过updatexml函数获取敏感信息。同时,提出了两种修复代码漏洞的方法,包括改变数据库编码和自定义数据过滤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、 SQL注入介绍

  SQL注入介绍:SQL注入介绍
  注入产生原因:web应用程序对用户输入数据的合法性没有判断或过滤不严,导致恶意payload直接带入SQL语句执行,从而执行payload中非法操作!

2、 宽字节注入PHP代码

  新建PHP文件,将下面代码复制到PHP文件中,在浏览器中访问即可

<?php
$host   = '127.0.0.1';
$dbuser = 'root';
$dbpass = 'root';
$dbname = 'test';

$con = new mysqli($host, $dbuser, $dbpass, $dbname);
if ($con->connect_error) {
   
    die("Connect Failed: " . $con->connect_error);
}

$con->query("set names gbk");

if (isset($_POST['title']) && !empty($_POST['title'])) {
   
    $title = get_magic_quotes_gpc() ? $_POST['title'] : addslashes($_POST['title']);
} else {
   
    die("Missing title parameter!");
}

$sql = "select id,title,content from t_feedback where title='$title' order by sendtime asc limit 0,1";

echo "Your SQL syntax: " . $sql . "<br>" . 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值