当前位置: 首页 > news >正文

广东建的电商网站叫啥wordpress 菜单没了

广东建的电商网站叫啥,wordpress 菜单没了,网页翻译软件哪个好用,马鞍山网站建设公司排名sql注入实战——thinkPHP sql注入实战——thinkPHPthinkPHP前期环境搭建创建数据库开始寻找漏洞点输入SQL注入语句漏洞分析 实验错误 sql注入实战——thinkPHP thinkPHP前期环境搭建 下载thinkPHP文件 解压,将framework关键文件放到think-5.0.15中,改…

sql注入实战——thinkPHP

  • sql注入实战——thinkPHP
    • thinkPHP前期环境搭建
    • 创建数据库
    • 开始寻找漏洞点
      • 输入SQL注入语句
      • 漏洞分析
    • 实验错误

sql注入实战——thinkPHP

thinkPHP前期环境搭建

下载thinkPHP文件
在这里插入图片描述
解压,将framework关键文件放到think-5.0.15中,改名为thinkphp
在这里插入图片描述
再将think-5.0.15放到WWW文件夹中

输入localhost/WWW/think-5.0.15/public/index.php,访问应用入口文件
在这里插入图片描述
在这里插入图片描述
搭建完成

创建数据库

登入mysql
在这里插入图片描述
创建数据库
在这里插入图片描述

修改数据库连接文件 \phpstudy_pro\WWW\think-5.0.15\application\database.php
在这里插入图片描述
编写控制器——编写一个get传参,传参uesrname,默认值为a
在这里插入图片描述
将上面get传参获得的username插入到数据库users里面

db('users')->insert(['username' => $username]);

在这里插入图片描述

开始寻找漏洞点

输入SQL注入语句

http://localhost/think-5.0.15/public/index.php?username[0]=inc&username[1]=updatexml(1,concat(0x7e,user(),0x7e),1)&username[2]=1  

在这里插入图片描述
注入成功

漏洞分析

官方发布的5.0.16版本更新说明中,发现其中提到了该版本修复了一个漏洞
在这里插入图片描述
查阅commit记录,发现其修改的Builder.php文件代码比较可疑 从官网的更新日记中可以看到(绿色为新添加补丁)漏洞大概率出于此处
在这里插入图片描述接着我们直接跟着上面的攻击payload看看漏洞原理。首先payload数据经过thinkphp内置方法的过滤后直接进入了$thik->builder的insert方法,所以从insert函数开始
在这里插入图片描述
在这里插入图片描述

断点下到insert语句,可以看到username传参1个数组,分别是我们输入的三个变量

  • username[0]=inc
  • username[1]=updatexml(1,concat(0x7e,user(),0x7e),1)
  • username[2]=1

之后走到db类中的insert方法
在这里插入图片描述
这是数据库的连接,跳出,来到insert函数
在这里插入图片描述

此处的$data中一个数组,三个变量即

  • username[0]=inc
  • username[1]=updatexml(1,concat(0x7e,user(),0x7e),1)
  • username[2]=1
    在这里插入图片描述

来到sql语句,传递data,options,replace三个传参
data:一个数组三个变量,同上
options:表名table=“users”

进入builder的insert方法中
在这里插入图片描述
而 Mysql类继承于 Buider 类,即上面的this->builder->insert()最终调用的是 Builder 类的 insert方法。在 insert 方法中,我们看到其调用 parseData方法来分析并处理数据,而 parseData方法直接将来自用户的数据val[1]进行了拼接返回。我们的恶意数据存储在val[1]中,虽经过了 parseKey 方法处理,当丝毫不受影响,因为该方法只是用来解析处理数据的,并不是清洗数据。

进入parseData
在这里插入图片描述

data = [username=array(3)]
key = “username”
val = array(3)=

  • array(0)=“inc”
  • array(1)=“updatexml(1,concat(0x7e,user(),0x7e),1)”
  • array(2)=“1”

往下滑,找到补丁处
在这里插入图片描述
在这里插入图片描述
从上面可以看到直接将用户数据进行拼接,然后再回到Builder类的insert方法,直接通过替换字符串的方式,将data填充到sql语句中,造成sql注入漏洞

break跳出,得到result
在这里插入图片描述

退出insert函数
在这里插入图片描述

keys和values的处理
在这里插入图片描述
在这里插入图片描述

最后进行sql的拼接,其中values等于我们的报错注入语句,所以漏洞出现,完成sql注入
在这里插入图片描述
在这里插入图片描述

实验错误

找不到用户
在这里插入图片描述
原因:新建的数据库内没有创建表和用户

创建表users,里面有两列username和password
在这里插入图片描述

查看表格和内部结构
在这里插入图片描述

向表内插入用户
在这里插入图片描述

查看表内用户数据
在这里插入图片描述

创建用户成功
在这里插入图片描述
成功报错

http://www.yayakq.cn/news/515137/

相关文章:

  • 怎么建设游戏试玩平台网站如何使用框架来建设网站
  • 做玻璃的网站群辉 wordpress套件
  • 网站导航栏自适应显示c语言 网站开发
  • 济南赢动网站建设一个刚有官网的公司怎么做网站运营
  • 网站链轮内有死链福州网页定制
  • 仪征网站建设公司免费建筑图纸下载网站
  • 找人做app网站吗做推广需要多少钱
  • 建筑网站的功能模块外包公司网站开发
  • 著名的wordpress网站松岗做网站
  • 建设网站美海房地产教育局网站群建设方案
  • 移动端网站开发环境dede音乐网站源码
  • 安徽省同济建设集团网站深圳注册公司流程图
  • 永久网站空间手机网页开发工具
  • 网站的橱窗怎么做微信公众号定位开发
  • 个人博客网站建设方案html自动播放视频
  • ae有么有做gif的网站江苏大都建设工程有限公司网站
  • 做网站什么一级导航二级导航制作宣传片拍摄公司
  • 安装网站时出现dir娱乐网站开发
  • 辽宁省建设安装集团网站推广神器
  • 云南旅游网站设计安徽二建标准
  • 云建站规划图软件项目实施计划方案
  • 网站建设金修改网站照片需要怎么做
  • 免费源码交易网站源码辽宁省网站备案
  • 群团组织网站建设小程序设计网站
  • 常德建设网站制作招聘网站做两份简历
  • 网站设计作品百度平台
  • 苏州网站开发公司鹅鹅鹅杭州网站设计
  • 网站建设属于现代服务吗郑州网站建设zhuotop
  • 建站大师排名表2021根目录下两个网站怎么做域名解析
  • 在网站服务器上建立数据库wordpress合并