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 小时 ...
随机推荐
- scikit-learn(project中用的相对较多的模型介绍):1.14. Semi-Supervised
參考:http://scikit-learn.org/stable/modules/label_propagation.html The semi-supervised estimators insk ...
- VMware下所有的系统网卡启动不起来
昨天新装了一台Linux,装好之后网络起不来,搞了半天也没弄好,总是报错: Failed to start LSB: Bring up/down networking.... 我以为是我的设置出了问题 ...
- pyspark
http://www.aboutyun.com/thread-18150-1-1.html
- Data Structure Stack: Reverse a stack using recursion
http://www.geeksforgeeks.org/reverse-a-stack-using-recursion/ #include <iostream> #include < ...
- 【leetcode刷题笔记】Max Points on a Line
Given n points on a 2D plane, find the maximum number of points that lie on the same straight line. ...
- Apache 的 httpd.conf 注释
ServerRoot “/usr/local“ ServerRoot用于指定守护进程httpd的运行目录,httpd在启动之后将自动将进程的当前目录改变为这个目录,因此如果设置文件中指定的文件或目录是 ...
- <Perl算法小菜>排序加速--Schwatzian变换及Guttman-Rosler变换
原创博客,转载请联系博主! perl里的数据都是以双精度为单元存储的,也就是相当于C/Cpp中的double型,而正则的解析是由perl内置的正则引擎完成的,那么除了重写一个属于自己的排序方法之外,我 ...
- 织梦dedecms 扩展channel栏目标签 获取交叉栏目名称和链接
channel栏目标签默认有调用顶级栏目(top).子栏目(son).同级栏目(self),那想获取交叉栏目的名称和链接怎么获取呢? 其实在原来的代码上改一下就可以了.下面是具体代码.打开文件chan ...
- (转)edm注意事项
格式编码 1.页面宽度请设定在600到800px以内,长度1024px以内. 2.HTML编码请使用utf-8. 3.HTML代码在15KB以内.(各个邮箱的收件标准不一样,如果超出15KB您的邮件很 ...
- php设计模式课程---4、观察者模式的好处是什么
php设计模式课程---4.观察者模式的好处是什么 一.总结 一句话总结: 方便选择之后去控制监听的板块数:比如选择男士之后,我可以决定监听广告里面的第二和第三板块. 1.为什么有观察者模式? 错误理 ...