API正在成为一种新的资产,驱动商业创新与数字化转型的同时,其商业价值也使其成为黑客的又一攻击目标。
根据分析机构Gartner 预测:到 2022 年,API滥用将成为最常见的攻击媒介,导致企业 Web 应用程序出现数据泄露。在白山云安全团队看来,大规模分布式恶意爬虫或许是其中最典型并难以防范的手段之一。
黑灰产的手段不断进化,攻击者通过伪造HTTP请求,并利用自动化程序控制爬取频率,绕过传统安全基于规则和阈值等防护手段,实现“完美犯罪”;数据资产被窃取的同时,也给被攻击服务器带来并发压力,甚至导致服务中断等问题,企业的数字资产正面临严峻的安全挑战。
“世上没有真正完美的犯罪。其实真相一直就在我们眼前,只不过还没有被发现。” 访问的流量以及请求留下的日志信息,就是破解爬虫攻击的“蛛丝马迹”。
-
“蛛丝”:基于资源的行为分析
爬虫攻击时,首当其冲的是API接口,当请求数达到接口吞吐量上限时,请求时间、状态码等将出现异常。
-
“马迹”:基于用户的行为分析
正常的用户访问,搜索、点击、浏览等行为具有随意性;而爬虫由于利用自动化程序完成攻击,其访问路径、点击顺序、浏览时间等特征数据归因分析后,具有明显的规律性。
某商业资讯平台百万IP爬虫攻击防御实录
01异常告警
前不久一个惬意的下午15:09,ATD平台突然告警:通过实时流量和日志分析,某商业资讯平台核心搜索接口访问行为偏离基线区间,访问网站的IP存在行为异常。将用户行为特征泛化、个群对比后,可以明显发现:
-
大量IP访问网站后直接请求核心搜索接口;
-
部分IP一段时间内只请求核心搜索接口;
同时,该客户网站访问也出现异常:
-
访问量从每分钟30-50条激增到每分钟900条,接口吞吐量接近上限;
-
接口请求时间从200ms提高至5s,访问出现500状态码,正常用户访问受到影响。
很明显,接口受到了恶意爬虫攻击!但由于客户事先关闭了拦截模块,攻击持续进行。
每分钟的请求访问次数开始变化
02 封IP!
15:14,与客户取得联系后,我们双方的第一反应:封IP!
最简单的封IP方案无非2种:
-
根据IP请求行为做判断:如果某IP一段时间内行为与正常用户行为存在严重偏离,例如:直接请求该核心搜索接口,或者只访问该接口没有其他页面请求,那这个IP很大可能存在问题;
-
使用威胁情报数据:如果来源IP被标记为HTTP代理,就可以判定是黑产的IP地址。
以上两种方式简单直接,同时客户不用做任何修改,但有极小概率会误伤正常用户。
第3种方式,则是和业务联动,精准找到黑产IP代理池,但需要客户配合修改核心搜索接口地址,那么继续请求老搜索接口的IP就是黑产的IP了。客户评估后最终选择了第3种方式。
黑产IP被识别后,直接交给拦截器,在请求到达业务之前实现拦截。不影响链路的响应速度,并且利用四层丢包技术,在拦截抵御攻击的同时,也增加黑产攻击成本。而根据客户之前的经验,攻击不会持续太久,50万IP容量的拦截器绰绰有余。
15:24,客户修改接口地址,方案部署完成,拦截器上线。
15:27,网站访问恢复正常,请求响应状态恢复正常,请求响应时间恢复正常。
03 爬虫又起
第二日凌晨1:36,拦截器再次报警。
普通代理爬虫控制的IP池一般在3000-5000左右,而此时,攻击者每分钟消耗的IP资源竟达900个!
经过10小时的持续攻击,拦截的黑名单量竟超过默认上限值50万,导致拦截器报警。我方将拦截器容量上限修改为100万,完成了弹性扩容。
04 尘埃落定
中午12:18,在即将进行第二次弹性扩容前,代理IP资源终于耗尽,接口请求数最终恢复正常。
担心攻击再次反扑,一直监测到第三天中午12:00,网站服务运行正常,流量稳定,无攻击事件。终于尘埃落定!
每分钟请求访问的IP数
每分钟请求访问的次数
05 结语
据ATD平台分析,此次攻击消耗的IP资源竟达95万。
黑灰产业规模日益庞大,攻击手段和攻击成本不断提升,传统的防护手段在大量超低频的分布式爬虫攻击面前将逐渐失效。
对于API安全,我们还需特别加强防护意识和安全能力建设。API面临复杂多样的环境,利用AI算法和UEBA技术或许可以更好的做到API防护智能化。
ATD安全(Advanced Threat Detection,深度威胁识别),是基于AI和实时流式计算的大数据安全分析平台,利用UEBA(用户及实体行为分析)技术,准确发现和处置企业内外网安全威胁,提升安全运营效率。
作者简介:
汪海,人称“海爷”,白山ATD研发攻城狮。
9年系统开发经验,擅长使用流式大数据技术发现业务/系统正在发生的安全问题。曾任职于新浪,参与SAE项目服务研发,为数十万用户提供稳定的云端服务。2016年加入白山,全身心投入安全大数据行业。爱好篮球,白山第一中锋,球风稳重彪悍,是球场上最灵活的胖子。