14.2 账号安全相关案例
14.1.1 账号密码直接暴露在互联网上
GitHub 是一个分布式的版本控制系统,开发者可以通过 GitHub 上传项目源代码。不过
由于开发者的安全意识不足,可能会上传部分敏感信息,包括邮件的账号密码、数据库的
配置信息、管理员的密码、备份文件、重要源代码等。
通过搜索引擎可灵活查找各类敏感信息,搜索语法如下。
(1)邮件配置信息查询:site:Github.com smtp password;
(2)数据库信息泄露:site:Github.com sa password;
(3)svn 信息泄露:site:Github.com svn;
(4)数据库备份文件:site:Github.com inurl:sql。
14.2.1.1 某企业数据库配置信息泄露
步骤一:利用各类搜索引擎搜索敏感文件,搜索的语法为“site:github.com password”,就可以直接在 GitHub 网站上找到配置信息。如图 14-1 所示,可以获得某企业
数据库配置信息。
图 14-1 数据库配置信息
步骤二:利用数据库配置信息成功登录数据库,可获得大量企业用户信息,如图 14-2
所示。
图 14-2 成功登录数据库
14.2.1.2 某著名厂商数千名员工信息泄漏
步骤一:通过 GitHub 查找到某厂商的一个开源项目,如图 14-3 所示,发现其中一份文
件包含一个加密信息。
图 14-3 网站配置信息
步骤二:通过 base64 解密,发现是一个 HTTP 请求包,并且包含 Cookies 值。将请求包
的内容复制到浏览器即可登录内部系统,如图 14-4 所示。
图 14-4 利用数据包登录后台
步骤三:如图 14-5 所示,在该系统可以获得该企业数千名员工信息。
图 14-5 内部通讯录
14.1.2 无限制登录任意账号
由于各类应用的安全防护手段参差不齐,导致攻击者可以利用漏洞绕过登录限制,或
者利用已经认证的用户,通过修改身份 ID 登录任意账号。
14.2.2.1 某大学网站 SQL 注入漏洞可绕过登录限制
步骤一:某学校网站后台为 http://www.xxx.edu.cn/login.asp,登录界面如图 14-6 所
示。
图 14-6 绕过登录测试
步骤二:因网站登录处过滤不严格导致存在 SQL 注入漏洞,利用万能密码,可以绕过
登录的限制成功登录后台,如图 14-7 所示。
图 14-7 成功登录
14.2.2.2 某 APP 客户端可以劫持任意账号
步骤一:在某 App 的官网上查看已经注册的用户,如图 14-8 所示。
图 14-8 查看注册用户 ID
步骤二:通过浏览器审查元素,如图 14-9 所示,可以得到该用户的 ID 值。
图 14-9 查看用户 ID
步骤三:下载该客户端,单击微博授权登录,如图 14-10 所示。
图 14-10 授权登录
步骤四:在登录过程中截取数据包,如图 14-11 所示,修改 uid 里面的数据,即可登录
其他人的账号。
图 14-11 替换用户 ID
步骤五:如图 14-12 所示,成功利用微博劫持他人账号并登录成功。
图 14-12 成功登录他人账号
14.1.3 电子邮件账号泄露事件
电子邮箱业务基于计算机和通信网的信息传递业务,利用电信号传递和存储信息,为
用户传送电子信函、文件数字传真、图像和数字化语音等各类型的信息。电子邮件最大的
特点是,人们可以在任何地方、任何时间收、发信件,解决了时空的限制,大大提高了工
作效率,为办公自动化、商业活动提供了很大便利。但电子邮件账号泄露,也将引发大量
的信息泄露。
14.2.3.1 邮件账号引发的信息泄漏
步骤一:如图 14-13 所示,通过搜索引擎查找某公司公开于互联网的文件。
图 14-13 敏感文件查找
步骤二:下载该 XLS 文件,从文件中获得某企业员工的邮件账号密码,如图 14-14 所
示,成功登录邮件系统。
图 14-14 登录邮件系统
步骤三:在一份邮件中发现该公司部分信息,包括 VPN 登录地址、OA 系统及内网各
个系统的登录方式,利用该邮件的账号密码均能登录各类内网系统,从而获得大量敏感数
据。如图 14-15 所示,成功拨入 VPN,任意访问内网系统。
步骤四:如图 14-16 所示,成功登录 OA 系统,可以获取职工个人信息,包括手机号
码、身份证、工作内容等。
图 14-15 登入 VPN
图 14-16 登录 OA 系统
步骤五:如图 14-17 所示,成功登录内部订单系统,查看大量订单数据。
图 14-17 登录内部数据平台
14.1.4 中间人攻击
中间人攻击,即所谓的 Main-in-the-middle(MITM)攻击,顾名思义,就是攻击者插
入到原本直接通信的双方中间,让双方以为还在直接跟对方通信,但实际上双方的通信对
象已变成了攻击者,同时信息已经被中间人获取或篡改。而中间人攻击不仅可以捕获
HTTP 未加密的传输数据,更可以捕获 HTTPS 协议加密的数据。
HTTPS 中间人攻击一般分为 SSL 连接建立前的攻击,以及 HTTPS 传输过程中的攻击。
常见的 HTTPS 中间人攻击,会首先需结合 ARP、DNS 欺骗、伪造 CA 证书等技术,来对会
话进行拦截。
14.2.4.1 SSL 证书欺骗攻击
SSL 证书欺骗攻击较为简单,首先通过 DNS 劫持和局域网 ARP 欺骗甚至网关劫持等技
术,将用户的访问重定向到攻击者的设备上,让用户机器与攻击者机器建立 HTTPS 连接
(使用伪造的 CA 证书),而攻击者机器再跟 Web 服务端连接。这样攻击者的机器分别与
用户和真正的服务器建立 SSL 连接,通过这两个连接之间转发数据,就能得到被攻击者
和服务器之间交互的数据内容。但用户的浏览器会提示证书不可信,只要用户不单击继续
就能避免被劫持。所以这是最简单的攻击方式,也是最容易识别的攻击方式。如图 14-18
所示,为 SSL 证书欺骗攻击流程。
图 14-18 证书欺骗过程
14.2.4.2 SSL 劫持
SSL 劫持,是指将页面中的 HTTPS 超链接全都替换成 HTTP 版本,让用户始终以明文
的形式进行通信。在现实生活中,用户在浏览器上输入域名,大部分采用直接输入网址的
方式,从而会忽略该网站采用的协议类型。例如打开百度,一般会直接输入
www.baidu.com,用户向百度发送一个 HTTP 请求,而不是 HTTPS。HTTP 是以明文传输
数据的,因此如果利用 SSL 劫持攻击,使 HTTPS 协议的网站降级到 HTTP,就能获取敏
感数据。
有部分网站并非全部采用 HTTPS 协议,只是在需要进行敏感数据传输时才使用
HTTPS 协议,如登录认证、传输敏感身份数据等时候。中间人攻击者在劫持了用户与服
务端的会话后,将 HTTP 页面里所有的 HTTPS 超链接都换成 HTTP,用户在单击相应的链
接时,使用 HTTP 协议来进行访问。这样即使服务器对相应的 URL 只支持 HTTPS 链接,但
中间人攻击者一样可以和服务建立 HTTPS 连接之后,将数据使用 HTTP 协议转发给客户
端,实现会话劫持。
SSL 劫持攻击手段更让人防不胜防,因为用户无法提前知道网站是否使用 HTTPS
或
者 HTTP,而在用户的浏览器上更不会弹框告警或者网页错误显示。如图 11-19 所示为 SSL
劫持攻击流程。
图 14-19 SSLStrip 攻击示例
如图 14-20 所示,可利用 SSLStrip 工具成功劫持 Gmail 账号。
图 14-20 劫持 Gmail 账号
14.1.5 撞库攻击
撞库是黑客通过收集互联网已泄露的用户和密码信息,生成对应的字典表,尝试批量
登录其他网站后,得到一系列可以登录的用户名和密码组合。由于很多用户在不同网站使
用的是相同的账号和密码,因此黑客可以通过获取用户在 A 网站的账户从而尝试登录 B 网
站,这就可以理解为撞库攻击。
14.2.5.1 某知名公司子站存在撞库风险
步骤一:某知名公司官方网站用户登录有验证码校验机制,但有个子站没有限制登录
次数,因此可利用该子站进行撞库攻击,在该子站验证成功后再返回主站进行登录,如图
14-21 和图 14-22 所示。
图 14-21 子站登录界面
图 14-22 登录数据包
步骤二:如图 14-23 所示,利用捕获到的数据包通过 Burp Suite 的 intruder 模块进行撞库
攻击。
图 14-23 Burp Suite 暴力破解
步骤三:利用该子站撞库攻击的结果,返回主站登录尝试,如图 14-24 所示,成功登
录主站。
图 14-24 利用撞库成功登录
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论