Web 攻防之业务安全:账号安全案例总结
业务安全是指保护业务系统免受安全威胁的措施或手段。广义的业务安全应包括业务运行的软硬件平台(操作系统、数据库,中间件等)、业务系统自身(软件或设备)、业务所提供的服务安全;狭义的业务安全指业务系统自有的软件与服务的安全。
目录:
账号安全案例总结:
账号安全归纳:
账号和密码直接暴露在互联网上:
无限制登录任意账号:
电子邮件账号泄露事件:
中间人攻击:
撞库攻击:
防范账号泄露的相关手段:
免责声明:
严禁利用本文章中所提到的技术进行非法攻击,否则后果自负,上传者不承担任何责任。
账号安全案例总结:
账号安全归纳:
随着网络的快速发展,出现了种类繁多的网络应用,包括即聊天工具(QQ,MSN),网络商店,BBS论坛,网络游戏等。各类应用均需要身份识别,因为身份认证是网络信息安全的基本保证。网络服务器通过身份验证或访问控制的方式对合法注册用户进行授权,用户首先通过注册账号与密码成为网络服务器的合法用户,只有通过身份认证的用户才能访问资源,账号与密码成为各类网站应用必不可少的一部分,与此同时,账号和密码所面临的安全问题越来越多。
互联网上关于账号的安全问题日益突出,总结的关于账号安全的相关漏洞包括密码泄露,暴力破解,弱口令,密码重置,登录账号绕过,重放攻击,网络钓鱼,信息泄露,中间人攻击等。
账号和密码直接暴露在互联网上:
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
(5)敏感文件查询:site:Github.com password
无限制登录任意账号:
由于各类应用的安全防护手段参差不齐,导致攻击者可以利用漏洞绕过登陆限制,或者利用已经认证的用户,通过修改身份ID登录页面账号(登录时抓包修改为别人账号 ID 可登录别人账号).
SQL注入漏洞可绕过登录限制
因网站登录处过滤不严格,导致存在注入漏洞,利用万能密码,可以绕过登录的限制成功登陆.
(1)在账号输入:(1)admin' or 1=1; (2)1' or 1=1#
(2)密码:随便输入或者是为空
电子邮件账号泄露事件:
电子邮箱业务基于计算机和通信网的信息传递业务,利用电信号传递和存储信息,为用户传达电子信函,文件,数字,传真图像和数字化语言等各类行信息,电子邮件最大的特点是,人们可以在任何地方,任何时间收/发短信解决了时空的限制,大大提高了工作效率,为办公自动化商业活动提供了很大的便利,但电子邮件账号泄露,也将引发大量的信息泄露。
通过搜索引擎搜索互联网的文件:filetype:xls
中间人攻击:
中间人攻击,就是攻击者插入到人本直接通信的。双方中间让攻击者以为还在直接跟对方通信,但实际上双方的通信对象以变成攻击者,同时信息已经被攻击者获取或篡改,而中间人攻击不仅可以捕获 HTTP 未加密的传输数据,更可以捕获 HTTPS 协议加密的数据。
HTTPS 中间人攻击一般分为 SSL 连接建立前的攻击,以及 HTTPS 传输过程中的攻击。常见的 HTTPS 中间人攻击,会首先先结合 ARP,DNS 欺骗,伪造 CA 证书等技术,来对会话进行拦截。
ARP欺骗实战:https://tianyuk.blog.csdn.net/article/details/123854709
SSL证书欺骗攻击
SSL 证书欺骗攻击是通过 DNS 劫持和局域网 ARP 欺骗甚至网关劫持等技术,将用户的访问重定向攻击者的设备上让用户机器以攻击者机器建立连接,使用伪造 CA 的证书,而攻击者机器再跟 Web 服务端连接,这样攻击者的机器分别与用户和真正的服务器建立 SSL 连接。通过这两个连接之间转发数据,就能得到被攻击者和服务器之间相互的数据内容,但用户的浏览器会提示证书不可信,只要用户不点击继续就能避免被劫持。所以这是最简单的攻击方式,也是最容易被识破的攻击方式。
SSL劫持
将页面中的 HTTPS 超链接全部替换成 HTTP 版本,让用户始终以明文的形式进行通信,在现实生活中,用户在浏览器上输入域名,大概采取的是直接输入网址方式,从而会忽略该网站采取的采用的协议类型。HTTP 是以明文传输数据的,因此如果利用 SSL 劫持攻击,使 HTTPS 协议的网站降级到 HTTP,就能获取敏感数据。
有部分网站并非全部 HTTPS 采用协议,只是在需要进行敏感信息传输时才使用 HTTPS 协议,如登录认证,传输敏感身份数据等时候。中间人攻击者在劫持了用户与服务端的会话后,将 HTTP 页面里的所有 HTTPS 超链接都换成 HTTP, 用户单击相应的链接时,使用 HTTP 协议来进行访问,这样即使服务器对相应的 URL 只支持 HTTPS 链接时,但中间人攻击者一样可以和服务建立 HTTPS 连接之后,将数据使用 HTTP 协议转发给客户端,实现会话劫持.(可以使用SSLStrip工具进行劫持)
撞库攻击:
撞库是黑客通过收集互联网已泄露的用户和密码信息,生成对应的字典表,尝试批量登陆其他网站后,得到一系列可以登录的用户名和密码结合,由于很多用户在不同的网站使用的是相同的账号和密码,因此黑客可以通过获取用户在 A网站 的账号从而尝试登录 B网站,这就可以理解为撞库攻击。
某知名公司子网站存在撞库风险
第一步:某知名公司官方网站,用户登录有验证码校验机制,但有个子网站没有限制登录次数,因此可利用该子网站进行撞库攻击,在该子网站验证成功后再返回主网站进行登录。
第二步:利用 Burp Suite 抓捕到的数据包通过 intruder 模块进行撞库攻击.(暴力破解)
第三步:利用该子网撞库攻击的效果,返回主网站尝试登录.
防范账号泄露的相关手段:
(1)核查数据库中的账号和密码存储方式,自行加密用户敏感数据,严格限制数据库的访问条件,禁止外部连接数据库.
(2)采用 HTTPS 协议对账户认证过程实现加密封存,确保身份认证过程中无法被窃取.
(3)加强网络信息安全意识,网络管理人员对内部员工进行安全意识培训,禁止使用弱口令,禁止公开个人账号密码,定期修改密码.
(4)使用数字证书认证,数字证书是通过运用对称或非对称密码体系等密码技术建立起一个严格的身份认证系统,从而保证信息除发送方和接收方外不被其他人窃取.
(5)了解互联网账号泄露事件,存在账号泄露事件第一时间通知客户修改个人账号和密码,避免撞库攻击。
(6)加强对网站的安全保护能力,定期进行安全评估和升级更新,避免攻击者利用漏洞确获取账户信息.
学习的书籍:Web 攻防之业务安全实战指南.