本文作者: Ano_Tom@阿里巴巴云誉反欺诈
简介
互联网业务的飞速发展,日渐渗透人类的生活,对经济、文化、社会产生巨大的影响,同时互联网业务安全也日趋重要。如同网络通信的基础安全设施防火墙,互联网业务安全也有其基础安全设施--图片验证码和短信验证码。
在互联网业务中,广泛使用图形验证码用于区分人类和机器,使用短信验证码过滤低价值用户及提供二次校验功能。
作为互联网业务的基础安全设施,图片验证码和短信验证也面临众多的挑战,下文将带你走近互联网业务眼前的威胁——图片打码平台和短信打码平台。我们以如下两个场景简单说明下普通打码平台以及手机打码平台:
场景一,批量登陆12306网站,并进行购买行为,但验证码不能自动识别。
12306的验证码比较复杂,程序较难识别。这时候就出现了普通验证码的打码平台,程序将验证码传给打码平台的识别接口,打码平台将验证码发给后端的“佣工”进行识别,并获取识别结果。这样基于此类的人工打码平台,即可实现程序的自动化。
场景二,注册某购物平台,但其需要填写手机号和收到的验证码才可注册,如何进行批量机器注册?
这时候就出现了手机打码平台,该平台提供大量的手机号,并能够发送和接收短信。这样只需调用手机打码平台相关接口,获取手机号并获取短信内容即可进行批量注册。
最后我们将会简单的阐述面对这些威胁新的解决之道。
一、普通打码平台
一)介绍
现在很多简单的字符验证码已经不能够有效阻挡机器行为,使用简单的OCR识别工具即可进行识别,稍微复杂的可以结合机器学习等进行高准确率的识别。乌云知识库里已经有多篇介绍验证码识别的文章,感兴趣的可自行搜索。
普通的字符验证码很容易被识别,因而又产生了一些较复杂的验证码,比如如下一些较难通过机器进行识别的。
所以若想进行恶意注册或批量的机器行为则需要绕过此类的高难度验证码。针对这种需求,人工打码平台就产生了,其通过组织真实的人来进行识别,并提交验证结果。
二)运行流程图
说明:比如现在羊毛党要去某网站刷活动优惠券,但该网站有较复杂的图像验证码。通常羊毛党会在打码平台注册账号并充值,并通过打码平台提供的api接口,提交验证码识别。打码平台将验证码分发到各个佣工的客户端里,获取佣工的识别结果,并最终反馈给羊毛党。
1.网赚平台:
很多打码平台需要跟网赚平台进行合作,因为网赚平台的用户量比较大。这种每天输入一些验证码就能赚钱的平台是很多小白用户比较喜欢的。我们查看一叫做“有赚网”的网赚平台,其发布各种任务供用户参与,并通过金币的形式给用户发放,金币累积一定数量后可进行提现。网赚平台会设有专门的打码模块,里面列举了合作的打码平台。如图
点击其中一个“知码打码”的打码平台项目,如图
点击获取工号和密码后,然后下载提供的软件,登陆后简单测试通过后,即可收到打码平台推送过来的验证码,如图
佣工可以勾选想要接收的验证码复杂度,有选择题、填空题、鼠标点击类型等等。同时通过软件可以查看该平台积压的验证码的数量,如图为45个,用户输入结果后会很快刷新到下一个验证码。每种验证码的积分不同,验证码难度较高的积分较大些,同时网赚平台夜间工作给的积分也会多,所以我们可以看到打码平台的夜间服务费用也会高一些。我们粗略计算下这种网赚的收益,按官方说明10000个金币可兑换1元的标准,我们按一个验证码平均可可以获得100个金币计算,则打100个验证码即可获得1元,每天打10000个验证码才能获得100元。
2.普通打码平台
打码平台提供多种类型的验证码,有正常的普通字符验证码、有选择题、算术题、以及其他的特殊类型的。每种验证码的计费类型不同,我们查看某打码平台的价格类目表,
其中每种验证码的价格不同,该平台冲10元可获得25000快豆。其中最普通的验证码需要10个快豆,也就是说10元可以识别2500个普通验证码,我们查看下12306的图形验证码识别价格为60快豆,即10元可以识别400多个验证码。同时打码平台会以api的形式供用户使用,其只需传入账号密码以及验证码所属类型、验证码文件即可进行识别,如图
3.开发者
每个打码平台都会有很多开发者,开发者通过打码平台提供的sdk,进行开发软件。比如针对12306编写一个抢票软件,并内接该打码平台,那么羊毛党在使用该软件时只需填入打码平台的账号密码即可使用。同时开发者可以拿到提成,提成一般较高。
4.羊毛党
什么是羊毛党?
有选择地参与活动,从而以相对较低成本甚至零成本换取物质上的实惠。这一行为被称为“薅羊毛”,而关注与热衷于“薅羊毛”的群体就被称作“羊毛党”。
早前,“羊毛党”们主要活跃在O2O平台或电商平台。另外随着2015年互联网金融的发展,一些网贷平台为吸引投资者常推出一些收益丰厚的活动,如注册认证奖励、充值返现、投标返利等,催生了以此寄生的投资群体,他们也被称为P2P“羊毛党”。
当然,使用打码平台的不一定就是羊毛党,还有可能是一些抢票的“黄牛党”或者黑色产业的欺诈者。
三)利益链
说明:佣工通过自身劳动,通过网赚平台变现,获得利益;网赚平台与打码平台进行合作,并有利益分成。打码平台将服务进行封装,提供给羊毛党。打码平台的开发者通过开发软件供羊毛党使用。同时羊毛党通过批量的注册、活动优惠等方式从网站进行获利。
二、手机打码平台
一)介绍
短信验证码在互联网业务中用于过滤低价值的用户,从而将服务推送给目标用户。这是基于手机号基本实现实名认证,每个人拥有的手机号也是有限制的前提。似乎通过手机短信验证就能够防止垃圾注册,筛选出真正有价值的客户。然而黑产针对基于手机号注册的场景,推出手机打码平台。手机打码平台囤积大量的手机卡提供短信收发的服务。实际调查中发现大型手机打码平台有几百万手机卡,小型也有几万的手机卡。
二)运行流程图
手机打码平台的流程图如下,主要有两个角色,一个是平台的普通用户通常为羊毛党、一个是平台的卡商。
说明:
手机打码平台会提供各种项目的接口,比如xxx账号注册、xxx绑定手机等。羊毛党只需要调用接口,获取某个项目可用的手机号,并将该手机号填入目标网站,然后调用接口获得短信内容即可。
1.手机打码平台
手机打码平台提供各种项目,我们查看下某一手机打码平台的项目列表,如图
每个项目的价格不同,像p2p金融类的可能价格较高,其他的普通的比如115网盘手机绑定价格较便宜,一个手机号只需1毛。接收短信流程很简单,查看下该平台的官方API接口说明,如图
我们只需要调用接口,获取某个项目的手机号,填入网站,并调用接口获取短信内容即可。同时打码平台通常还会提供发送短信的接口、接收语音验证码等功能,如下为某一手机打码平台发送短信的接口
2.卡商
卡商是指拥有大量手机卡的用户,其通过猫池并通过打码平台提供的软件,提供相关项目的短信收发服务。卡商的手机号被使用一次,则可获得相应的收入,如下为一打码平台的卡商客户端,卡商将插有大量手机卡的猫池接入电脑,并选择需要做的项目即可。
其中猫池可以理解为有通信模块,可以收发短信,可以插很多手机卡的设备。一般有8口、16口的,多的有128口的,即可以同时插128张手机卡。猫池有多种类型,现在有很多猫池是支持3G、4G的,如下为插有手机卡的猫池图
卡商通常会有大量的卡,用来做手机打码只是其中的一个业务,还有很多是用来刷钻、刷会员、刷流量等。市场价格一般在10元左右一张,且这些卡有很多也是经过实名认证的,且有很多属于0月租、0余额的特殊卡。当然可以发送短信的则是有一定余额的。我们查看下一售卖手机卡的卡商发的广告,如图
关于这种大量的卡的来源,其中一手机打码平台的卡商透露了如下信息
同时这些卡商会有其他的业务比如超级会员、黄钻、绿钻等,查看一打码平台卡商发的信息,如图
3.羊毛党
我们查看一薅羊毛的群,里面每天会更新一些活动信息
当然发出来的都是一些小利润的,一些较大利润的羊毛党们都不会轻易透露,当然其中也有很多属于灰色或黑色产业。在一些薅羊毛的群里,通常会伴有身份信息的售卖,在某一群里查看到售卖正反身份证图片加手持身份证的信息,只需2毛一份,如图
三)利益链
说明:
羊毛党通过手机打码平台提供的手机号去网站批量注册,获得小号,再利用这些小号批量获取优惠。比如uber的推荐用户注册送优惠券,还有一些网站的新用户推荐注册送话费等等来获利。打码平台从提供手机打码服务里进行收费,并与对接的卡商进行利益分成,平台自己也会有一些手机卡。同时卡商也是有多种业务,一种是专门做打码平台的业务,其他的还有通过售卖卡给羊毛党,用来做刷超级会员、刷钻等业务进行获利。
三、如何防控
针对普通打码平台以及手机打码平台如何进行防控。采用新型的验证码技术是一种方式,构建手机打码平台黑名单库也是一种方式。但基于构建的用户手机号信誉体系以及用户设备信誉体系,结合众多数据构建自己的安全风控系统才更为重要。
一)新型验证码
替换传统验证码,采用新型的验证码。传统的验证码已经很难去防止机器行为,因而出现了一些基于用户行为的新型验证码。新型验证码最大的特点是不再基于知识进行人机判断,而是基于人类固有的生物特征以及操作的环境信息综合决策,来判断是人类还是机器。
比如Google的reCaptcha
以及阿里巴巴的NoCaptcha
当然这也并不代表此类验证码不能被绕过,今年的Asia Blackhat上公布了一种破解Google reCaptcha的思路,具体可以参考[相关paper]
二)手机信誉库
针对短信打码平台,可以回归短信验证码的本质需求,即过滤互联网中低价值的用户。而由于手机号并非完全实名制,事实上获取一个手机号的成本并不高,所以基于手机号并不能有效筛选出真正的高价值客户。尽管手机号本身获取成本不高,但是对于大多数普通互联网用户并不频繁更换手机号,所以可以基于手机号对应的行为来建立基于手机的征信库,从而基于手机号的信誉实现筛选出高价值客户功能,而非单一的依赖用户是否拥有一个手机号。
三)风控体系
对于普通的网站而言,建立自己的用户信誉体系尤为重要。基于用户的设备信誉、用户行为等信息进行防控。
其中对于p2p金融类的网站而言,构建自己的安全风控系统尤为重要。金融类的较为敏感,对于用户的身份应当做强的安全校验,比如进行银行卡绑定的身份校验等。
四)其他
现在的手机已经需要进行实名认证,对于大量手机卡滥用会有一定的效果。但是在调查中发现其中还是有大量的特殊卡,且都经过实名认证或者是进行了企业认证的卡。另外对于手机打码平台,国家已经出台了相关政策,认定手机打码平台属于违法行为,因而这些手机打码平台也都转为地下。
*本文作者:Ano_Tom@阿里巴巴云誉反欺诈,转载须注明来自FreeBuf黑客与极客(FreeBuf.COM)
-
baozi据我了解,一般用户都是一次就滑过,有一点可疑的出点击验证码,出输入型的验证码,得是多么不可信的用户
-
小秦阿里的那个拖动验证的, 跟个屎一样, 拖完之后, 照样还是要输入验证码, 而且页面会刷新, 密码还得再重新输入一遍.
这样的设计真是脑残. -
小秦@ baozi 不是多么不可信, 是不安装阿里的那套安全控件, 就会出来那个.
而安装了安全控件的, 你应该是知道 会有N个进程, 以及不可描述的行为...
http://www.zhihu.com/question/26386680?rf=24690993
http://blog.superliufa.com/2014/07/Alipaybsm-RawSocket.html -
大秦帝国@ 小秦 无脑黑。。。
-
fuckbaidu阿里的nocaptcha是不是这个?
https://open.taobao.com/doc2/apiDetail.htm?apiId=24871

不容错过
- 虽然SHA-1遭遇碰撞攻击,但“天还没塌”Sphinx2017-02-27
- Pwn2Own战报:腾讯、360各显神通,分别秒杀IE、Flash、PDF项目hujias2015-03-19
- 4月9日FreeTalk·北京站全程揭秘FB独家2016-04-11
- 【已结束】2016阿里安全峰会视频&图文直播(LIVE)FB独家2016-07-14
0day
已有 25 条评论
阿里的那个拖动验证的, 跟个屎一样, 拖完之后, 照样还是要输入验证码, 而且页面会刷新, 密码还得再重新输入一遍.
这样的设计真是脑残.
@ 小秦 无脑黑。。。
@ 大秦帝国 你说这话才是无脑黑吧.
你用过 alipay.com 上面的登陆吗?你用过那个 让人拖动之后,还要再次输入验证码的垃圾玩意吗? 而且页面会刷新, 密码我还得重新输入一次.
要多垃圾有多垃圾, 还不如直接出个验证码,让我输入呢, 至少我密码不用输入两次.
@ 小秦 第一次乱输入提交,第二次才是真的。哈哈。人家的网站人家做主。
阿里真是辣鸡风控,验证码还要二次在验证,这叫滑动吗?呵呵
据我了解,一般用户都是一次就滑过,有一点可疑的出点击验证码,出输入型的验证码,得是多么不可信的用户
@ baozi 不是多么不可信, 是不安装阿里的那套安全控件, 就会出来那个.
而安装了安全控件的, 你应该是知道 会有N个进程, 以及不可描述的行为…
http://www.zhihu.com/question/26386680?rf=24690993
http://blog.superliufa.com/2014/07/Alipaybsm-RawSocket.html
最后的如何防控 讲的都是屁话
阿里的nocaptcha是不是这个?
https://open.taobao.com/doc2/apiDetail.htm?apiId=24871
说起新型验证码的话,我见过一个叫“极验验证”的验证码,它是拖动滑块完成拼图,即可完成验证。并且速度很快,不需要二次验证。
@ 极客小蜗牛
不限定终点的滑动,类似于手机上的滑块解锁,会培养用户惯性直接一拖通过,交互上不会有打断用户的过程。
如果需要通过大脑进行图像识别,通过拼图确认终点位置,明确拖动目标,这样在交互上已经构成对用户的一次打扰。
安全就是要做到无打扰、无感知。
@ 阿里云誉反欺诈 还 无打扰, 无感知, 拖动那个条之后, 提交刷新页面, 得再输入一次密码,一次验证码, 这有多打扰用户,你知道吗?
@ 小秦
让绝大多数的正常用户做到“无打扰,无感知”的一次滑动通过是我们的产品的核心价值,但风险识别没有百分百,可能有部分正常用户会进行二次验证判断风险,我们也在不断的优化后端风控引擎降低对正常用户的打扰。
你可以私信跟我们联系,我们针对你的case具体帮助你确认你被判断要进行二次验证的原因。
@ 阿里云誉反欺诈
现在在支付宝的登陆界面上已经看不到 那个拖动 的东东了. 而是改为 出验证码(偶尔会出现), 以及往绑定的手机上下发短信了.
相比以前的 拖动, 新版(目前的这种逻辑)确实改进了不少, 鼓个掌
@ 极客小蜗牛 那个东西,破解更容易,不用打码平台直接过
另外, 刚在alipay.com上面登陆, 发现那个 拖动的 验证模块已经没有了, 验证码也没有了.
输入账号和密码之后, 要输入 绑定手机 接收到的验证码了,
这说明什么, 说明您们已经认识到之前的拖动验证的那个玩意有多垃圾了.
@ 小秦 你四不四傻,风控本身就是安全环境没啥感知异常环境会弹各种策略。年轻人多学点姿势少出来丢点脸。
@ 周鸿祎 你好像跑偏话题了, 我这里吐槽的是,在不能确定环境安全的情况下, 出拖动验证, 无可厚非, 但问题是,我都拖动了, 而且也提交登陆了,
结果不让我登陆, 还得再让我输入一次密码, 然后还再输入一个验证码 的这种 恶心人的行为.
你说登陆页面都上HTTPS了, 出来的拖动控件,我也拖了, 你还是识别不了我是人是机器? 还得再靠一次验证码, 来确认? 再确认一次也没问题,
问题是为毛要让我再输入一次密码?
@ 周鸿祎 用人脸识别,活体检测
手机那个是接码平台吧。。。
淘宝的这个拖动验证码是非常坑爹!
我宁愿手工输入验证码,也不喜欢这种拖动的。
@ 马化疼
每个人都有自己独特的体验以及特殊的选择,但作为通用产品,让一个用户连续输入100次验证码和连续拖动100次滑块,拖动滑块的体验是更佳的。
“无打扰,无感知”拖动都不要才叫无打扰无感知好嘛。难道说我拖动淘宝的验证码是用的膝跳反射吗?????吓死本宝宝,就喜欢你们这样一本正经的胡说八道,哈哈哈。而且拖完还要输入验证码,说得不好听一点,有一句俗语叫做“脱了裤子放屁——多此一举”。
马云,来办公室一趟,看看你们小弟做的这些垃圾创新,还想不想在大中华区卖假货!
前一段时间不是因为实名制这些短信验证码接码平台都倒了吗,现在怎么又冒出来了,咋绕过实名制的?总不能每个卡商都是运营商员工吧。