机器人的洪流:刷库、撞库那些事儿

原文链接

机器人的洪流:刷库、撞库那些事儿

目明@阿里安全



一、 那些信息泄露的事

面对社会上层出不穷的诈骗新闻,我们可以发现骗子们诈骗成功的一个关键是:骗子们知道你叫什么、住在哪里、买了什么东西、花了多少钱。这些信息骗子们是从哪里得来的呢? 
最近某票务网站就出现了这么一例case,因为骗子们知道其在该网站上的订单信息、电话和住址,因此认为骗子就是真实的该网站的客服人员,从而被引导到转款等流程中。

二、 他们怎么知道我们的个人信息 
 
 
大多数人看到这些短信的第一反应是:我的信息被平台商卖给了骗子!其实对于大部分大厂商来说,客户的信息都是最重要的资产,不会卖给其他任何第三方,更不可能卖给骗子。 
真实的情况是以下这几种: 
    · 这个平台存在漏洞,数据被黑客攻破,整个数据库被“拖”走了。(整个数据库都被别人掌握,然后贩卖出去) 
    · 平台内部出现人事问题,导致数据被人拿去售卖了。(内鬼作案) 
    · 平台的某些接口存在风控漏洞,导致黑客利用已有的数据库内容进行匹配,导致数据被人批量拿走。(所谓的刷库撞库) 
随着互联网安全的逐步发展,前两种情况已经比较少了,市面上常见的泄露都是由于第三种情况造成的,也即刷库、撞库这种手法。从之前的case中,我们也可以看到最终导致信息泄露的原因是刷库、撞库:

三、 数据库泄露严重吗 
 
简单列举下一些大家都知道的数据库泄露: 
    · 某SDN数据 
    · 某讯群数据 
    · 某酒店开房数据 
    · 某知名bbs论坛数据库 
    · 等等 
在明处的泄露数据库,已经数不胜数,而在暗处,只是流通在各个小圈子中的数据库会更加可怕。这也是为什么,有人说道,在互联网时代的所有人,都是在裸奔。这些数据库可能不会有你的全部信息,但是黑产通过数据关联、整理和分析,可以得到你的相关全部数据。对于普通人来说,注册一个网络账号,可能使用的账户名、密码等都具有极度的相似性(甚至完全一样)。在某些特别的应用中,如使用身份证、手机号注册的账号,这些用户名具有先天一致性。通过对这个社工库的不断完善,黑客可以得到越来越多关于你的信息。 
 
四、 黑客是如何通过已有数据库进行撞库的

以上是在攻击者视角的一个图,对于部分公司来说,存在一个误区,即风险只是存在于登录等场景中,但是实际上,任何与后端数据库存在交互的地方都有可能被攻击者用于撞库攻击。 
攻击第一步——洗库:

之所以要进行洗库,是为了加快最后撞库的速度,同时避免被发现。因为通常在登陆等入口的防御强度通常会更强。 
例如找密场景中:

通过这样一个接口,攻击者用于进行第一波洗库的工作。 
攻击第二步——撞库:

撞库的流程与洗库的逻辑基本一致,其采用的接口与洗库可以一样也可以不一样,完全看攻击者找到了哪个较弱的接口。暴力破解与撞库的差别也就是:密码库是已经准备好的,还是实时生成的而已。 
 
五、 现有的防御思路 
 
总结上面提到的撞库刷库等问题,我们面临了以下几种挑战:攻击面的确认,数据等级的确认。哪些地方可能存在利益点,哪些地方的数据危险性高,并且要不无遗漏的总结出来,才能达到一个较好的防御效果;如果漏掉了其中的一个,根据木桶原理,即代表整体失效。 
 
 
如何保护数据 
假设已经确认了需要保护的点,如何对其进行有效防护? 
 
 
普通验证码 
带文字信息的普通验证码,是考虑到防御时,第一个会出现在脑海里面的东西。但是,随着该模式的不断被研究,打码平台、字库、各种验证码识别算法不断出现,导致在实际的攻防效果上来说,普通验证码已经不具有阻拦恶意攻击的能力了。

手机验证码 
有部分厂商认为,手机卡和手机卡是一个可以做到对用户进行真实性访问确认的好工具。在刚开始的几年内,该方法的确是一个有效的方法,但是随着黑产开始大规模的应用猫池和特殊的零月租手机卡,这个方法的实用性也大打折扣。甚至催生出了一个新的产业:卡商。

一条短信对于黑产的成本也只是0.1元而已,并且随着产业的不断发展,这个价格只会越来越低。 
 
 
IP限制 
ip是从互联网之初就一直被使用的一个指标。简单来说就是,对单位时间内的单ip访问的次数进行强限制,如果超过某个数值后,就判定为存在攻击风险并进行拦截。然而,在互联网时代,ip是非常廉价甚至是免费的资源。只需要付出很小的代价,你就可以拥有世界各地的ip进行选择使用。

也有部分防御思路是,对ip进行反向探测等,抓出某些互联网上的免费或者提供服务的ip。但是针对这些思路,黑产攻击者也采用了如某些运营商宽带断线重连重新分配ip的机制来进行绕过。 
 
六、 阿里巴巴的防御体系 
 
 
基于上述的讨论,我们可以得出结论:现有的普通防御手段已经不足以抵御这些互联网上横行的机器程序。 
在这场攻防双方不断螺旋对抗的游戏中,需要新的对抗思路,这也是阿里巴巴数据风控团队长久以来一直在努力的方向:成为机器的墙。 
简单的叙述我们的一些关键技术点: 
    · 先进的设备指纹技术,让攻击程序无所遁形。 
    · 先进的风险ip监测技术,通过反向探测、实时计算等方法得到当前ip的风险值。 
    · 强大的前端加解密对抗技术,让攻击者在伪造请求的同时直面无法破解的盾牌。       
    · 周期性的自更新技术,攻击者一时的破解无法长时间适用,每次破解必须从头开始,大大增加攻击者的攻击成本。 
    · 基于大数据计算的实时风险引擎,基于设备、ip、行为等进行综合评分。 
这些相关技术都已经在阿里系相关的平台上经历了多年的考验,每天都在线上实时的为保护客户数据做着努力。 
 
 
七、 阿里云数据风控产品 
 
 
撞库、刷库作为一个现在,并且在可预见的将来也将一直是互联网的一个急需解决的问题。面对这些不断增加的自动化机器人、层出不穷的攻击者以及越来越低门槛的攻击技术,客户们需要的是充分平衡了体验和安全性的安全产品。 
阿里巴巴数据风控团队,基于多年的防控经验、大数据等前沿分析方法,推出了一系列的数据风控产品,可以有效解决垃圾注册、刷库撞库、活动作弊、论坛灌水等严重威胁互联网业务安全的风险,并在保障安全性的同时,兼顾正常用户的使用体验。 
更多产品信息,请移步阿里云官网:https://www.aliyun.com/product/antifraud 
 
 
作者:目明@阿里安全,更多安全类文章,请访问阿里聚安全博客

原文链接

时间: 2024-10-30 17:58:22

机器人的洪流:刷库、撞库那些事儿的相关文章

撞库攻击:一场需要用户参与的持久战

一,背景: 用户数据泄露一直是如今互联网世界的一个焦点,从最近的12306数据泄露事件,京东撞库抹黑事件,到之前的CSDN,如家用户数据的泄露,服务商和黑客之间在用户数据这个舞台上一直在进行着旷日持久的攻防战. 对于大多数用户而言,撞库可能是一个很专业的名词,但是理解起来却比较简单,撞库是黑客无聊的"恶作剧",黑客通过收集互联网已泄露的用户+密码信息,生成对应的字典表,尝试批量登陆其他网站后,得到一系列可以登陆的用户. 以京东之前的撞库举例,首先京东的数据库并没有泄漏.黑客只不过通过&

什么是撞库,如何预防撞库攻击?

什么是撞库攻击?撞库对用户可能有哪些危害?近期发生多起撞库事件,让越来越多的人关注撞库漏洞和撞库攻击.尤其对专注业务发展的公司来说,如何防止撞库威胁到信息安全问题不容小觑. 撞库攻击没有那么高深,举个例子来说,假设我有一个XX邮箱的账号,用户名是[email protected],密码是[email protected](很复杂,很安全).同时因为懒癌晚期的缘故,我还用这个账号注册了新浪微博.携程.淘宝.微信等等,都采用邮箱注册并且是同一个密码(这种情况很常见,因为懒得记不同的账号). 于是某天

Web安全开发之验证码设计不当引发的撞库问题

感谢某电商平台安全工程师feiyu跟我一起讨论这个漏洞的修复.以往在安全测试的过程中后台经常存在验证码不失效果造成的撞库问题,甚至在一些银行或者电商的登录与查存页面同样存在这个问题,一旦造成撞库无论对用户账号的安全性还是网站的负载都是巨大的挑战.其实造成问题的原因并不复杂,主要是研发在开发过程中缺少对安全的认知,造成的疏忽. 今天心血来潮自己写了个验证码来模拟下出现的问题,首先我们从前端页面开始分析: <!DOCTYPE html> <html> <head> <

什么是拖库,撞库?

什么是撞库? 撞库是一个看起来很专业,但实际理解起来却很简单的名词.它其实就是黑客无聊的"恶作剧".黑客首先会通过收集互联网已泄露的用户+密码信息,生成对应的字典表,然后再用字典中罗列的用户和密码,尝试批量登陆其他网站,这样,一旦用户为了省事,在多个网站设置了同样的用户名和密码的话,黑客很容易就会通过字典中已有的信息,登录到这些网站,从而获得用户的相关信息,如:手机号码.身份证号码.家庭住址,支付宝及网银信息等.这些信息泄露后,不仅会给用户和精神和经济带来巨大损失,同时也会给相关网站带

关于拖库和撞库的思考与对策

拖库是指黑客盗取了网站的数据库.撞库是指黑客用拖库获得的用户名和密码在其它网站批量尝试登陆,进而盗取更有价值的东西.由于一些用户在多个网站用相同的用户名和密码,所以撞库是有一定成功率的.现在稍微有点责任感的网站都不会将密码明文保存在数据库中,起码会做一次MD5.要想撞库,必须得知道密码的明文,也就是用户真正输入的密码.我们知道MD5算法是不可逆的,黑客是怎么弄到密码明文的呢?最常用的办法就是MD5字典. MD5字典是什么?其实就是提前将一些比较简单的密码(比如10位以内的纯数字)做MD5运算,将

htpwdScan — 一个简单的HTTP暴力破解、撞库攻击脚本

李姐姐之前跟我们分享了子域名枚举工具subDomainBrute<subDomainsBrute — 改进渗透测试时暴力枚举子域名的python脚本>,这回带给我们htpwdScan htpwdScan 是一个简单的HTTP暴力破解.撞库攻击脚本: 1. 支持批量校验并导入HTTP代理,低频撞库可以成功攻击大部分网站,绕过大部分防御策略和waf2. 支持直接导入互联网上泄露的社工库,发起撞库攻击3. 支持导入超大字典4. 其他细微功能:随机X-Forwarded-For.随机SessionID

黑客枚举攻击,撞库导出12306几十万用户密码,可是不一定是真相

现在很多网站都要注册,如果每个网站都有独立的用户名和密码,估计一般用户记不下来.我也经常去注册其他网站,用同样的用户名和密码.黑客就是利用这个相同用户名和密码原理,用其他网站的用户名和密码去12306,就是火车售票网,登录,成功了,就可以获得有效的用户名和密码.而不需要枚举获得用户名和密码.这个应该是社会工程学原理,获取大量用户名和密码.可能支付宝,QQ,新浪微博密码也是通过这个方式获得,这样,现在网络安全愈加严峻.因为用户不可能记住几十个用户名和密码. 我觉得统一用户和密码,实现单一登录可能是

浅谈撞库防御策略

2014年12306遭遇撞库攻击,13万数据泄露:2015年乌云网上爆出网易邮箱过亿用户数据由于撞库泄露:数据泄露愈演愈烈,撞库登录成为网站的一大安全威胁, 今天小编就和大家探讨一下如何才能够有效的防止撞库攻击.俗语知己知彼,百战不殆,小编在网上找了个撞库教程整理给大家看看,了解黑客是如何撞库的. 首先找到一个目标网站,随便输入一组用户名和密码,测试其验证码是否可以被绕过. 密码是明文的,提交了正确的验证码,repeater一下 回显是账号和密码错误,再repeater一下,还是显示账号和密码错

支持smtp/imap smtp/pop3的撞库python撞库脚本

# coding=gb2312 # 确保python支持中文注释 # 输入邮件地址, 口令和POP3服务器地址: import poplib import smtplib import sys def checksmtppassword(smtp_server,username,password): try: server = smtplib.SMTP(smtp_server, 25) # SMTP协议默认端口是25 这里解析不了域名就会抛出异常登录失败 #server.set_debuglev