![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SQL注入
文章平均质量分 73
Buffedon
目标为导向,问题为驱动。
展开
-
sql回显注入--python脚本
sql回显注入--python脚本1. python基础1.1 数据数据类型数据转换1.2 系统模块2. python web网络请求2.1 请求中的参数3. bool盲注--python编写过程3.1 测试是否能正常请求页面3.2 获取数据--用正则表达式3.3 判断行数3.4 判断回显位置--构造联合查询4. 源代码联合查询注入python脚本功能:页面能否正常请求判断列数判断回显位置1. python基础1.1 数据数据类型整数浮点数字符串c’ “abc”原创 2021-07-15 13:58:34 · 485 阅读 · 0 评论 -
sqlserver命令注入和getshell
sqlserver命令注入和getshell1. mssql权限判断当前数据库权限2. mssql 默认数据库3. 数据库常用语句查询当前数据库中所有表的大小4. SA权限开启xp_cmdshell 获取主机权限5. SA权限使用sp_oacreate 执行系统命令6. SA权限使用CLR 执行系统命令6. DB_owner权限 LOG备份Getshell7. DB_owner权限 差异备份Getshell补充CLR导入程序集1. mssql权限sa权限:数据库操作,文件管理,命令执行,注册表读取等s原创 2021-07-03 10:13:51 · 3800 阅读 · 0 评论 -
MYSQL与MSSQL比较、MSSQL报错注入
MYSQL与MSSQL比较、MSSQL报错注入1. sql server和mysql数据库的区别函数的区别后端语言2.mssql数据库2.1 mssql的内置函数2.2 mssql内置表查询库名两种方式查询表名两种方式3.orcale数据库3.1 特殊表3.2 内置函数3.3 字符串拼接mysql1.弱类型语言mssql强类型语言orcale强类型语言access1. sql server和mysql数据库的区别函数的区别db_name() 和 databa原创 2021-06-26 12:47:02 · 400 阅读 · 0 评论 -
Orcale注入
Orcale 注入1. 联合查询注入报错流程2. 报错注入3. 盲注ascii编码方式1. 联合查询注入在MySQL中查询语句可以直接是:select 1,2,但是在Oracle中就必须跟一个表名,如下:select * from dual。以下是orcale数据库查询的基本用法: select table_name from all_tables 查询出所有的表 select table_name from user_tables 查询出当前用户的表 select column_name原创 2021-06-26 11:54:51 · 118 阅读 · 0 评论 -
SQL注入总结大纲
SQL注入总结SQL注入原理SQL注入分类SQL注入基本流程SQL注入危害SQL注入防护数据库的比较本文为SQL注入总结简略版,仅仅提供一个思路。详细版后续更新……SQL注入原理用户输入不可控,恶意SQL语句被拼接到原因SQL语句中并能够执行,导致SQL注入漏洞SQL注入分类数值型、字符型、搜索型回显注入: union select…报错注入: extractvalue() 和 updatexml()堆叠注入:show table、handler table read first时间盲注、原创 2021-06-05 23:56:19 · 216 阅读 · 0 评论 -
SQL注入上传一句话木马
利用sql注入上传一句话木马导读1. sql注入的危害2. 文件写入2.1 webshell和一句话木马webshell(大马)一句话木马木马文件的危害2.2 文件写入的前提条件2.3 写入函数2.4 怎么找网站根目录(绝对路径)2.5 只能与回显注入结合2.6 日志写文件2.7 文件读取前提条件读取函数2.8 针对文件写入的防护导读本文主要介绍了利用sql漏洞上传文件的一些知识。在利用sql注入漏洞上传文件的时候我们需要知道被上传的网页 在web服务器的路径上传文件要获取哪些权限,也就是有哪些前原创 2021-05-31 17:11:23 · 9136 阅读 · 2 评论 -
mssql报错注入原理及流程实例
mssql报错注入原理及流程实例mssql 报错注入1. 原理2. mssql 测试实例2.1 找注入点2.2 判断类型2.3 获取信息获取数据库的数量获取数据库名获取表名获取列名获取列中的值mssql 报错注入1. 原理在MSSQL中,数据类型不一样(例如1=‘1’)会报错,并且报错信息会在日志信息中显示出来;日志文件直接在网页上显示利用此原理,进行构造 1=‘mssql语句’,返回报错信息2. mssql 测试实例2.1 找注入点sql注入漏洞一般都在输入框,搜索框,域名地址原创 2021-05-19 21:34:34 · 991 阅读 · 0 评论 -
mssql 盲注流程
mssql 盲注mssql 盲注1.mssql盲注和mysql盲注的不同点2.布尔盲注流程2.1判断数据库的数量2.2 判断数据库长度2.3 获取数据库名2.4 获取数据库中表的数量2.5 获取数据库中表名的长度2.6 获取表名2.7 获取表中列的数量2.8 获取指定列的长度信息2.9 获取列名3.时间盲注mssql 盲注1.mssql盲注和mysql盲注的不同点mysql有聚合函数group_concat();mssql无聚合函数,要用到top 1 结合 not in top 用来获取第n行**的原创 2021-05-18 23:28:40 · 1067 阅读 · 0 评论 -
SQL注入--联合查询注入
SQL注入--获取数据库的信息欢迎使用Markdown编辑器获取表的列数获取表中某个列的值获取所有数据库的库名欢迎使用Markdown编辑器获取表的列数获取表中某个列的值获取所有数据库的库名SELECT * from user WHERE name=002 UNION SELECT 11,2,(SELECT GROUP_CONCAT(schema_name) FROM information_schema.schemata LIMIT 0,1)...原创 2021-05-03 12:49:47 · 399 阅读 · 0 评论 -
SQL报错注入
报错注入原理数据库的原始报错信息被直接打印在屏幕中。报错注入函数1. extractvalue()id=1 and (extractvalue(1,concat(0x7e,(select user()),0x7e)))2. updatexml()id=1 and (updatexml(1,concat(0x7e,(select user()),0x7e),1))3. exp()id=1 and exp(~(select * from(select user())a))流程lim原创 2021-05-16 23:37:11 · 234 阅读 · 0 评论 -
mssql注入实例--联合查询注入
mssql注入实例--联合查询注入1. 判断注入点2. 判断注入类型3. 判断此表列数4. 判断每个字段的类型5. 查库名5.1 查看此表所在库5.2 返回所有库名6. 查表名7. 查字段名8. 获取单元格内数据9. 使用 burpsuite9.1 抓包9.2 修改sql语句,获取数据1. 判断注入点能与数据库交互的地方2. 判断注入类型-- 判断是否是数值型11 and 1=1 -- 返回数据是空1 and 1=2 -- 返回数据是空-- 判断是否是字符型1' --+1' and原创 2021-05-17 16:36:38 · 446 阅读 · 0 评论 -
SQL盲注获取数据库信息、绕过WAF
SQL盲注利用流程及绕过WAF盲注1. 分类实现方式分类按照注入方式2. 原理3. 作用3.1 绕过WAF(规范化方法)3.2 sql盲注绕过WEB4. 利用技巧+特殊函数(盲注核心)截断函数编码函数regexp + 正则表达式模糊查询5. 流程5.1 获取当前数据库5.2 获取当前数据库中的表5.2.1 逐个读取-----limit 0,15.2.2 全部读取5.3 获取当前数据库中敏感表的列5.4 读取数据库具体单元格的值6. 利用burpsuite获取数据操作过程7. 编写python脚本7.1 布尔原创 2021-05-16 23:00:44 · 1551 阅读 · 0 评论 -
SQL堆叠注入--测试思路实例
1. 首先判断注入类型a. 输入 inject=1’ 报错;输入inject=1 不报错;根据报错的提示内容,可知是一个字符型注入2. 然后判断此表的列数 inject=1'order by 2 不报错 inject=1' order by 3 报错c. 说明此表只有两列3. 然后再查询database,table等信息inject=1' and select 1 ,(select database());b. 以下报错信息说明,set,select,delete等关键字被过滤了原创 2021-05-14 13:43:03 · 205 阅读 · 3 评论