常见sql注入原理详解!
来源:互联网 发布:中船重工研究所知乎 编辑:程序博客网 时间:2024/05/20 00:38
1、首先我们创建一个mysqli的链接
/**数据库配置*/
$config = ['hostname'=>"localhost", 'port'=>"3306", 'username'=>"root",'password'=>'','db'=>'sql'];
/**接收参数*/
$id = $_GET['id']?$_GET['id']:"";
if(empty($id)){
echo "article is not def"
}
/**链接数据库*/
$mysqli = new mysqli($config['hostname'],$config['username'],$config['password'],$config['db']);
/**设置编码*/
$mysqli->set_charset("utf8");
url数字注入结果测试
我们访问url:http://localhost/mysql/index.php?id=1
我有几张阿里云幸运券分享给你,用券购买或者升级阿里云相应产品会有特惠惊喜哦!把想要买的产品的幸运券都领走吧!快下手,马上就要抢光了。
结果展示:
array (size=2) 'article_id' => string '1' (length=1) 'title' => string '思梦php编写:PHP操作Redis详解案例' (length=44)
(1)/当我们在在url上稍作修改时:
http://localhost/mysql/index.php?id=1‘ //加一个单引号
这样你的sql语句就会报错
(2)我们再次修改url的时候
http://localhost/mysql/index.php?id=-1 or 1=1 //后面参数修改成这样
结果展示了所有的文章列表
D:wampwwwmysqlindex.php:11:array (size=2) 'article_id' => string '1' (length=1) 'title' =>string '思梦php编写:PHP操作Redis详解案例' (length=44)
D:wampwwwmysqlindex.php:11:array (size=2) 'article_id' => string '2' (length=1) 'title' =>string 'Mysql存储过程从0开始(上)' (length=36)
D:wampwwwmysqlindex.php:11:array (size=2) 'article_id' => string '3' (length=1) 'title' =>string '思梦php编写:PHP排序的几种方法' (length=42).............
2、表单注入,主要利用sql语句的注释
$username = $_POST['username']?$_POST['username']:"";
$password = $_POST['password']?$_POST['password']:"";
$sql = "select * from tb_member where account='$username'AND password='$pass'";
$res = $mysqli->query($sql);
$row = $res->fetch_assoc();
if($row){
echo "登录成功!";
}else{
echo "账号密码错误!";
}
正常输入
打印:登录成功!
我们简单修改一下
打印:登录成功!
原理:首先使用单引号结束sql语句,然后加#注释后面的sql语句
同理另一种方式为
打印:登录成功!
原理:首先使用单引号结束sql语句,然后加(-- )注释后面的sql语句
阅读原文http://click.aliyun.com/m/35210/
- 常见sql注入原理详解!
- 详解SQL注入原理
- sql注入原理详解(一)
- sql注入攻击详解(一)sql注入原理详解
- sql注入攻击详解(一)sql注入原理详解
- sql注入攻击详解(一)sql注入原理详解
- sql注入攻击详解(原理理解)
- 常见SQL注入语句
- 常见sql注入方式
- 常见SQL注入函数
- 常见sql注入方式
- SQL注入攻击实现原理与攻击过程详解
- SQL注入攻击实现原理与攻击过程详解
- sql注入漏洞原理
- SQL注入原理,值得一看!
- SQL注入原理
- SQL 注入原理
- SQL注入原理,值得一看!
- android 高级开发工程师面试题
- 使用list和tuple
- 1.MQ的几种消息传递方式
- html 背景
- 基础练习 报时助手
- 常见sql注入原理详解!
- 深度学习最全优化方法总结比较(SGD,Adagrad,Adadelta,Adam,Adamax,Nadam)
- caffe python接口:mnist
- 织梦手机端文章页图片被拉长解决方式
- MySQL触发器
- 系统间通信方式之(Kafka的集群方案介绍结束3)(二十二)
- Fiori2.0学习笔记-controller
- win10下安装使用pytorch以及cuda9、cudnn7.0
- 插入排序