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

[BT]小迪安全2023学习笔记(第29天:Web攻防-SQL注入)

第29天

盲注

基于布尔

?id=1 and length(database())=7

通过AND,当数据库名字长度等于7时返回正常页面,否则返回其他(或错误)页面
其他函数:
left(databse(),a):截取数据库名的左侧前a位字符
substr(a,b,c):从位置b开始,截取c个长度的字符串a
mid(a,b,c):从位置b开始,接触字符串a的第c位

基于延时

?id=1 and if(1=1,sleep(5),0)

ifif(条件,5,0) 条件成立返回 5 ,否则返回 0

可以通过BP抓包放包后通过查看右下角的时间参数确定是否有延迟

延时是注入里比较好用的

基于报错

?id=1 and updatexml(1,concat(0x7e,(SELECT @@version),0x7e),1)

and updatexml(1,concat(0x7e,(SELECT @@version),0x7e),1) 是注入的部分,updatexml()尝试对第一个参数(这里是数字1,通常应该是一个XML路径表达式)进行操作,第二个参数是concat()函数,它连接了波浪线(0x7e,即~字符)和数据库版本号。
@@version 是一个系统变量,用于返回数据库服务器的版本信息。

相关文章:

  • 第一章:操作系统概述
  • CSDN 自动评论互动脚本
  • sudo apt install make;make build ;make start
  • 手撕算法|斯坦福大学教授用60页PPT搞定了八大神经网络
  • mybatis plus 配置多数据源(数据源进行切换)
  • ssm139选课排课系统的设计与开发+vue
  • Pytorch: 解决因pytorch版本不同 导致训练ckpt加载失败
  • FPGA 纯逻辑arinc818 ip core
  • 力扣-2904最短且字典序最小的美丽子序列
  • 【机器学习300问】95、什么是KNN算法?它和K-means什么关系?
  • 网络协议——有状态协议和无状态协议
  • linux下删除nginx进程
  • 自主创新助力科技强军,麒麟信安闪耀第九届军博会
  • 轻松拿捏C语言——【字符串函数】的使用及模拟实现
  • python02 循环与容器
  • 【comparator, comparable】小总结
  • 【前端学习】-粗谈选择器
  • 2017前端实习生面试总结
  • CentOS7简单部署NFS
  • E-HPC支持多队列管理和自动伸缩
  • golang中接口赋值与方法集
  • php中curl和soap方式请求服务超时问题
  • zookeeper系列(七)实战分布式命名服务
  • 构造函数(constructor)与原型链(prototype)关系
  • 汉诺塔算法
  • 技术胖1-4季视频复习— (看视频笔记)
  • 如何选择开源的机器学习框架?
  • 入口文件开始,分析Vue源码实现
  • 设计模式走一遍---观察者模式
  • 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!
  • 无服务器化是企业 IT 架构的未来吗?
  • 一天一个设计模式之JS实现——适配器模式
  • 硬币翻转问题,区间操作
  • Salesforce和SAP Netweaver里数据库表的元数据设计
  • 蚂蚁金服CTO程立:真正的技术革命才刚刚开始
  • 曜石科技宣布获得千万级天使轮投资,全方面布局电竞产业链 ...
  • ​2021半年盘点,不想你错过的重磅新书
  • ​Base64转换成图片,android studio build乱码,找不到okio.ByteString接腾讯人脸识别
  • ​草莓熊python turtle绘图代码(玫瑰花版)附源代码
  • ​软考-高级-信息系统项目管理师教程 第四版【第23章-组织通用管理-思维导图】​
  • #微信小程序(布局、渲染层基础知识)
  • %check_box% in rails :coditions={:has_many , :through}
  • (1) caustics\
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (javascript)再说document.body.scrollTop的使用问题
  • (Redis使用系列) Springboot 使用redis实现接口幂等性拦截 十一
  • (编译到47%失败)to be deleted
  • (二)linux使用docker容器运行mysql
  • (一)为什么要选择C++
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • (转)创业的注意事项
  • (转载)Linux网络编程入门
  • .equals()到底是什么意思?
  • .NET 2.0中新增的一些TryGet,TryParse等方法
  • .NET 4.0中使用内存映射文件实现进程通讯