freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据库安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课
FreeBuf+小程序

FreeBuf+小程序

官方公众号企业安全新浪微博

国内领先的互联网安全新媒体,同时也是爱好者们交流与分享安全技术的社区

AuthTrans(原创工具)+BurpSuite的暴力美学-破解Http Basic认证
2013-02-26 09:30:28

写在前面的话: 笔者菜鸟一枚,比较喜欢折腾,在尝试用BurpSuite暴力破解http basic认证的时候,碰到了,如下问题:


Authorization的Basic值域是Base64加密的,该值为 username:password  (注意“:”号) 经过base64加密的结果,但笔者手头没有这样的字典,而且凭我对BurpSuite(以下简称BP)有限的了解,BP的decoder,不能完全解决这个问题。

A格式的字典,可以通过设置encode ,转换为base64。

B 格式是user字典与pass字典的合集。两者分别encode,这样拼接起来的效果是不是和A一样呢,经实验,我想多了。关于问题的解决,这里给出笔者的解决方案,一定还有更好的方法,这里算是抛砖引玉吧。期待和大家交流。

这里的着眼点是生成user:pass组合的字典,既然最后Basic的值域是base64加密后的结果,那不如直接生成base64_encode(user:pass)后的结果字典,这是AuthTrans(Ruby写成)实现的功能。
功能界面:(中国式英语,请见谅.....)


现在手头的字典,为密码字典(pass.txt),用户名字典(user.txt),以及用户:密码字典(user-pass.txt),通过AuthTrans都可以转换为user:pass字典。
各个选项意思如下:

A:加载user.txt和pass.txt,生成base64加密的user-pass字典,遍历实现。
B:加载user:pass字典,输出base64加密的user-pass字典。
C:输入一个用户名,并加载pass.txt。
D:输入一个密码,并加载user.txt

现演示环境目录结构如下:

选择C选项后的运行结果,output文件夹为自动创建的输出目录。

文件输出位置,命名规则很容易就能看出来。


生成的root用户名和pass.txt 遍历后的 root-pass 字典

现在回到BP,加载刚才生成的字典。一轮遍历下来,全是401。郁闷了,看下包

原来我们的值被BurpSuite 给URL编码了,找到问题,取消自动编码。


再跑一次。这里面有200,不过,人工寻找,太累了。

学会使用过滤器,能节省好多时间。


其实过滤器还可以写成,200,但是这是在我们知道正确结果的返回情况后,所得出的结论。一般实际应用中,你是不知道正确的返回页面是怎样的,但是可以知道错误页面的特征,所以我们使用反向选择,更具实用性。
勾选negative(反向选择),匹配项,填写错误页面的特征。
感觉过滤器的选择是个大学问,可以写一篇很长的文章。
欢迎讨论。
2013-02-21 19:46:30
plusman

本文作者:, 转载请注明来自FreeBuf.COM

# burpsuite # 暴力破解 # AuthTrans
被以下专栏收录,发现更多精彩内容
+ 收入我的专栏
评论 按时间排序

登录/注册后在FreeBuf发布内容哦

相关推荐
  • 0 文章数
  • 0 评论数
  • 0 关注者
登录 / 注册后在FreeBuf发布内容哦