这里我们先科普一个词——“拖库”。拖库是指一个网站出现了漏洞,攻击者利用漏洞获取网站数据库内保存的各类数据,这些数据可能包括在这个网站注册过的用户的账号、密码、电子邮箱、订单等敏感信息。
历史上以及正在发生的数据库泄露事件,这里不再一一列举,从 2011 年底开始,中国互联网爆出越来越多的大型网站被拖库事件,那么到底是什么原因引起这些知名网站发生数据库泄露事件呢?

首先,所谓的“网站数据库泄露”,这个事情有两个重要阶段:
第一、网站被黑,数据库内的数据被攻击者拖走
第二、数据分享,攻击者将非法获得的数据放在互联网上分享给所有人下载和查看

那么我们就来根据这两点做介绍。

一、网站被黑

其实想要获取一个网站数据库内的数据并不一定需要非常高深的技术以及成本,一个掌握一些基础黑客技术的人再加上一个功能强大效率较高的黑客工具,即可完成“拖库”任务。
通常可能引起“拖库”的漏洞和原因有下面几种

1-SQL注入漏洞
SQL注入简单的说,就是攻击者在网站本身与数据库交互的正常逻辑中插入恶意的SQL语句,改变了SQL语句本身的功能及逻辑,导致攻击者从数据库中查询出了本不应该展示给用户的数据。
一个超大型网站,或许只是因为一个SQL注入漏洞,就将导致整个网站数据库的泄露。

2-网站接口权限控制不严
很多网站为其他网站或业务开放了数据接口,而如果没有对这些接口做很好的权限控制,也同样将导致拖库事件。一旦攻击者找到了包含敏感数据的网站接口,那么攻击者只要不断请求这个数据接口,就可以将整个网站的敏感数据遍历出来。

3-撞库
撞库是指 A 网站的数据库遭到泄露,攻击者使用 A 网站的这些用户名和密码去尝试登录 B 网站,登录成功也就意味着撞库成功。
很多时候我们在网上的不同网站都会使用同一组用户名和密码,当一个网站被拖库,那么意味着,你在网上所有使用与网站A相同的账号密码的网站,都将陷入危险。

4-XSS漏洞
XSS漏洞是指攻击者更改了网站本身的javascript逻辑,插入恶意代码,通过保存在网站上的恶意代码,不断收集访问该网站的用户信息。换句话说,XSS漏洞攻击的不一定是网站本身,大部分情况下,XSS漏洞攻击都是攻击的网站的访客。
其实通过XSS漏洞造成的拖库,大部分情况下都并未与数据库真正做交互,只是单纯的收集每天登录网站的用户信息,这种方式可能无法像SQL注入一样获取到所有敏感信息。

5-网站本身已被黑
网站被黑的可能性有很多,或许是一些Web上的漏洞,也或许是服务器本身的漏洞,更或许根本就是一些管理员疏忽造成的弱口令攻击,比如服务器ssh、3389、FTP等服务的弱口令。
可想而知,如果网站本身甚至服务器权限已被攻击者得到,那么想要进一步获取服务器或数据库中的数据,就更简单了。

二、数据分享

攻击者把数据库放到网上与所有人分享无非三个原因:
1-分散风险,天塌大家死,法不责众;
2-纯粹为了提升安全行业待遇及受重视程度,刷安全行业存在感;
3-竞争对手没事爆你的点料,搞不死你恶心死你。
那么,针对上面提到的这些拖库问题,我们作为站长应该如何预防与应对呢?
1-如果你使用的是开源的Web程序,请每天关注该程序官网的最新补丁,及时修补程序的所有漏洞
2-服务器上定期升级最新补丁,包括内核和程序的升级补丁
3-网站数据接口做严格的权限及请求频率限制
4-网站登陆口处需增加验证码功能,防止撞库
5-使用安全CDN服务
6-使用阿里云主机,阿里云主机是全世界范围内为数不多的提供网站保护的云计算服务平台,购买主机的价格低廉、质量优秀、24小时客服MM工单响应,并且为您提供免费的网站安全保障,为何不考虑一下呢?