#coding=utf-8 import requests import re import sys import time #获取config_safe.php中的 key def getKey(url,headers,local_url): try: url_key = url + "/config/config_safe.php" rsp = requests.get(url_key,headers) p = re.compile(r'<\?php\/\*(.*)\*\/\…
0x01 此漏洞是由于未将decode解码后的数据过滤,而直接带入SQL语句中,从而导致SQL盲注漏洞. 0x02 漏洞分析:此处复现为metinfo6.1.3版本,漏洞最初产生为:/app/system/user/web/register.class.php 94~107行: 可以看到此函数将 GET,POST,COOKIE,过来的数据经过decode解码后直接赋值给$username变量,然后将此变量带入get_user_valid()函数,跟进: 可以看到有将此可控变量引入get_user…
关于web安全测试,目前主要有以下几种攻击方法: 1.XSS 2.SQL注入 3.跨目录访问 4.缓冲区溢出 5.cookies修改 6.Htth方法篡改(包括隐藏字段修改和参数修改) 7.CSRF 8.CRLF 9.命令行注入 今天主要讲下SQL盲注. 一.SQL 盲注.发现数据库错误模式.跨站点脚本编制 严重性: 高 类型: 应用程序级别测试 WASC威胁分类: 命令执行类型:SQL 注入 CVE 引用: 不适用 安全风险: 1.      可能会查看.修改或删除数据库条目和表   ---S…
本次实验还是使用sqli-labs环境.在开始SQL盲注之前首先学习一下盲注需要用到的基础语法. 1.left()函数:left(str,lenth)它返回具有指定长度的字符串的左边部分. left(a,b) 从左边截取a的b位 我们在命令行使用sqli-labs数据库实验一下,首先使用security数据库,然后对数据库名第一个字符进行查询,找到了第一个字母s 判断数据库第一位是否为s,加入判断语句=‘s’,看到结果返回1,说明当去数据库第一个字母为s *没有使用数据库时结果返回为空 2.re…
SQL盲注 [SQL注入介绍] SQL盲注:不显示数据库内建的报错信息[内建的报错信息帮助开发人员发现和修复问题],但由于报错信息中提供了关于系统的大量有用信息.当程序员隐藏了数据库内建报错信息,替换为通用的错误提示,SQL注入将无法依据报错信息判断注入语句的执行结果,即为盲注. 思路:既然无法基于报错信息判断结果,基于逻辑真假的不同结果来判断 a.  1' and 1=1--+ b.  1' and 1=2--+    [输入前真后假,无返回,页面没被执行] ###a与b比较,表明存在SQL注…
前言 好长时间没有写过东西了,不是不想写,仅仅只是是一直静不下心来写点东西.当然,拖了这么长的时间,也总该写点什么的.近期刚刚上手安全方面的东西,作为一个菜鸟,也本着学习的目的,就谈谈近期接触到的安全方面的问题吧. 背景 既然提到了背景,那我们就简单的带一下,近期互联网上爆出了各种惊人的事件.各种门.各种照的,归根结底,都是网络安全出的问题,有的是网络被别人监控了,广大群众的生活工作都处在人家的眼皮底下,一举一动都逃不出人家的"法眼":还有的是一些商家的server被黑,usernam…
前面的文章都是基于目标会返回错误信息的情况进行判断是否存在SQL注入 我们可以轻易根据数据库报错信息来猜测SQL语句和注入方式 如果程序员做得比较好,不显示错误信息,这种情况下得SQL注入称为SQL盲注 猜测是否存在SQL注入: 1' and 1=1 -- 如果正确返回ID为1的信息,那么可以猜测存在SQL注入漏洞 再输入: 1' and 1=2 -- 如果什么都不返回,到这里就可以确定存在SQL注入了 猜测查询的字段数: 1' order by 5 -- 发现什么都没有返回,说明该查询的字段少…
[转载]sql 盲注之正则表达式攻击 -----------------------------------------MYSQL 5+----------------------------------------- 我们都已经知道,在MYSQL 5+中 information_schema库中存储了所有的 库名,表明以及字段名信息.故攻击方式如下: 判断第一个表名的第一个字符是否是a-z中的字符,其中blind_sqli是假设已知的库名. 注:正则表达式中 ^[a-z] 表示字符串中开始字符…
一.SQL盲注: 看不到回显的,无法从返回直接读取到数据库内容的对数据的猜解,属于盲注. 二.第一种--基于布尔类型的盲注: 这种很简单,最典型的例子,就是挖SQL注入的时候常用的: ''' http://www.localhost.com/sqlinjection?id=1'%20and%20'1'='1 http://www.localhost.com/sqlinjection?id=1'%20and%20'1'='2 ''' 实战时.前面一个判断是永真的时候,拼接一个判断,例如[subst…