听我拿P2P小额贷款来说说业务安全那些事儿

安全
看了很多乙方同学们写的业务安全,总结下来,其出发点主要是在技术层面风险问题。另外捎带一些业务风险。今天我要谈的是甲方眼里的业务安全问题,甲方和乙方在业务安全的视野上会有一些区别和一些重合。

看了很多乙方同学们写的业务安全,总结下来,其出发点主要是在技术层面风险问题。另外捎带一些业务风险。今天我要谈的是甲方眼里的业务安全问题,甲方和乙方在业务安全的视野上会有一些区别和一些重合。在同一个问题上,解决的思路也有很大区别。我们拿P2P小额贷款来说业务安全。

大体上P2P小额贷款的流程是帐户注册、提交借款资料审核、提现使用,还款。还款阶段主要是催收的问题,不在本文讨论范围之内。所对应的业务风险见下图。

解析P2P金融的业务安全

一、账户安全

账户这一层的风险本质上是其他行业也会存在的风险,只不过相对来说金融帐户的安全性要求更高。

1.1 虚假注册

在搜索引擎里搜索批量注册、注册机,能够得到很多搜索结果。在某电商搜索账号之类的关键字,也能得到很多卖各种帐户的商家。在QQ群搜索小号之类,同样存在很多贩卖账号的群。那么这些批量注册的账号有什么用?无非是羊毛党、发广告、水军、骚扰用户、贩卖等,目标自然是为了钱。业务方的KPI一般都会有用户量,为了扩大用户量做各种营销活动,所以业务方是绝对绝对不会允许安全在注册这个环节进行拦截,但作为安全人员,可以不拦截,但一定要知道哪些是虚假小号,这些虚假小号带着标签往业务流程后端传递,一旦小号来真的,安全就来真的。

虚假注册如何识别?这里涉及多种技术与对抗:

1.1.1 IP

首先,最直接的就是通过IP来看。一个IP注册多个帐户,就可能是虚假注册,但这仅仅是可能,如果是一个公司的互联网出口IP,这种单凭IP注册账户数来看的机制就会造成误伤,所以要综合来看。

规则1:代理IP判定。为了对抗IP的注册限制,很多注册机会通过读取代理注册,不停的变换IP。解决代理的问题,一是知道哪些是代理,二是协议判断,两者综合起来。知道哪些是代理,可以通过爬取互联网上的代理IP来进行,很多代理网站会不定时更新代理,通过爬虫把这些代理爬下来做成黑名单,命中即为代理,规则简单有效、准确度高、系统消耗低。

但问题是爬虫技术终归有限,不可能完全覆盖所有代理IP。这时候就要通过协议判断来进行,协议判断我们会看几种情况。

一是反向探测对端端口开放情况,代理常用端口是80和8080,如果对端IP开启了这些端口,显然是不正常的,一个家用IP地址是不大会开放这些端口的。

二是看HTTP头的X-Forwarded-For,这个字段只有在通过了HTTP 代理时才会添加,

如果带有XFF,那就是代理了。

三是看源端口,根据我们的经验,大于10000的源端口有两种情况,不是代理就是大型机构,所以会有误伤,建议判断权重在50%。

四是看Keep-alive,带有Proxy-Connection: Keep-Alive的报文,毫无疑问是代理。

以上,通过代理IP库和协议识别,根据准确性赋予权重,对代理的识别应该就比较精准了。还没有把握的,可以把注册放过去往后看,看帐户活跃度和行为,反过来再来调整规则权重。

但是代理一定是坏人吗?不一定,但从金融领域来看,用代理作恶的可能性更大。一个良民,是不大会用代理的。用了代理,我就要怀疑你的动机。还是那句话,安全的纵深防御,往后面的业务去看。

规则2:恶意IP。所谓恶意IP,大体上有三种数据来源。

第一种是来自于业务产生的,如果某IP上次曾经作恶,那我有理由认为下次他仍然可能作恶,这种IP要带标签观察。

第二种是高危区域,所谓高危区域,从历史和行业情况来看,安溪、 龙岩、莆田、泉州、电白、宾阳、儋州,这些地方的IP先打上标签,别问我为什么知道。

第三种是威胁情报来源,这方面国内已有公司提供关于IP的数据,能够知道IP近期是否有木马病毒,是否有黑客攻击行为。这部分恶意IP的问题是,数据要新鲜,因为恶化速度非常快,不能说上个月这个IP有过攻击行为,这个月还给打标签。

规则3:IDC IP。一个to c的业务,跑来注册的IP是云服务器的IP,这正常吗?显然不正常。事实上很多就是被黑的服务器,或干脆就是自己租的服务器来跑批量注册。这里就要去做一些收集,各大云服务商、各大IDC服务器段,还有一个是僵尸机器,也从原来的广告欺诈转移过来了,这些数据都有情报厂商提供。这块主要注意的是要长期维护数据源。

1.1.2 图形验证码

关于图形验证码,事实上我们已经基本上放弃这种技术。验证码的出现本意是为了抬高恶意注册、撞号的门槛,但事实上这种门槛随着打码平台的出现已经没什么意义了,验证码阻碍的反倒是那些好的用户。所以我们不在这部分做继续探讨。

1.1.3 手机验证码

手机验证码的出现,也是为了阻止恶意注册、盗号之类的行为。相应的,黑产对抗手段也升级到了收码平台。黑产通过在收码平台上开项目,可以使用大批量的不同号码来注册。(题外话:收码平台也存在恶意注册、盗号撞库、黑客攻击的问题,黑吃黑的节奏)。对于收码平台的对抗,也有几种可以使用的手段:

规则1:收码手机号码库。仍然是通过爬虫爬取各大收码平台的手机号码,然后形成号码黑名单库。凡是命中的,一律加标签。但这种的问题是爬不全,这种平台太多,而且会定期更换号码。另外还涉及到爬与反爬的对抗,所以能爬就爬,不能爬的跳过,通过其他方法来防御。

规则2:授权验证。你来我这里申请贷款,我要求你授权爬取你的运营商网上营业厅信息,用户输入帐号密码,我们去爬取姓名,号码入网时间,通话记录。姓名是用来核实身份真实情况。入网时长与是否欺诈贷款有密切的相关,一个刚入网的手机号来贷款,本身就十分可疑,进一步的再看是否有通话记录,一个从未有过通话的手机也十分可疑。这种做法比较重,会涉及一些问题。比如各省运营商网厅独立运营,架构不一致,就需要对应不同的运营商和省份拉数据,一旦网厅变化,拉数据的方式也要变化,比较笨重。再一个会比较慢,网络速度会严重干扰。还有隐私问题,让用户输入账号密码去爬数据,本身就面临合规风险。同时还会涉及到对抗,当运营商发现之后会采取措施对抗爬虫。最后还会涉及用户感受,增加了业务流程。所以是否要采用这么重的技术,取决于资产价值和风险态势。

另外值得一提的是,有些公司推出了手机小号服务,本意是为了保护用户隐私,避免被电话骚扰,但实际上也被黑产用来注册、贷款等行为。

规则3:合作数据验证。要说手机号码,最权威的当然还是运营商这边的数据,但各大运营商情况比较复杂。在某运营商,如果想拿到号码与人的对应关系数据接口,需要一个省一个省的谈。这里的合作数据验证,一是与运营商合作,但这里的难度可想而之。另外一个,业内也有一些提供骚扰、欺诈电话库的公司,可以与他们合作查询号码的信用。有条件的,还可以根据银行预留手机来发送验证码。这种合作数据验证,最大的问题就是不好谈,小型金融机构根本谈不来。另外就是费用问题。

规则4:电话通告等其他验证方式。当用户注册时候,推送验证码不是通过短信下发,而是电话通告8位验证码。这样就在一定程度上避免了这个环节上的校验码泄露,挡住了收码平台。只不过这种方式成本较高,大规模的语音通告形成了费用。还有通话成功率有限,目前用户的接受程度不高,用户在某些环境下不愿意接听电话。但不失为一种新的探索方式。

综上,各种方式都有利弊,没有最完美的解决方案,只有最适合自己的方案。也可以对每种办法都做轻量级、分层次的使用,综合平衡。

1.1.4 人机识别

大多数情况下的恶意注册都是通过工具、接口来进行的。如果能及时准确的识别工具行为,就能很大程度上防范虚假注册。但如果去研究每一个工具的特征,显然是一个浩大的工作。这里可以使用设备指纹技术来进行判断,所谓设备指纹技术,是指抓取用户设备的信息来判断。

规则1:手机模拟器。有很多安卓平台下的手机模拟器,一个通过模拟器来注册帐户的人,显然有较高的风险。对普遍流行的模拟器,加入一些特征判断,比如海马玩模拟器,能够读到的设备信息就是droid4x。对其他的模拟器,做一些数据规则来实现。设备指纹技术抓取设备的MAC、型号、号码等信息,通过算法形成一个设备特征符,如果该设备多次注册,就可以进行判定。

规则2:虚拟机。同理,通过虚拟机注册的也有较高风险。虚拟机可以通过一些环境特征判断,几个常见的特征,虚拟机网卡一般000569、000c29、005056开头。虚拟机的USB和声卡特征,时钟异常,内存,进程,服务,注册表都具备特征可以判断。

规则3:行为判断。所谓行为判断,可以看键盘敲击频率、鼠标移动速度和轨迹、HTTP Referer,甚至屏幕触摸的压力、重力、点击位置。如果填写资料速度非常快,就可能是工具行为,如果鼠标移动非常快,且每次都完全一致,也可能是工具。总之这里可以延伸出很多规则,只要有行为数据。

其他规则:除了这种特征式的规则,还有一些逻辑验证或交叉匹配。例如两次登陆时间和距离异常,1小时前在深圳,1小时后在北京。再比如设备环境无法读取。诸如此类,可以根据业务设计多种规则匹配。

但设备指纹也仍然可以绕过,黑客可以通过不断测试掌握算法。目前市面上已经有一些一键变换环境的软件,可以自定义修改条件,每次生成不同的设备指纹。但设备指纹的重点是收集了大量的设备数据,除了在这里用,还可以在很多环节用到。

1.1.5 坏帐户

用户注册的帐户名,一般都具有某种含义,在国内很多情况下是他的邮箱帐户。而一个坏帐户,可能是杂乱无序的随机字符。另外,还可以从帐户的行为来看。

规则1:帐户是否在互联网出现过。以邮箱作为匹配,收集互联网曾经出现过的邮箱帐户,如果一个帐户名曾经出现过,那就是一个好的现象。如果从未出现,那就可疑。这种做法需要收集大量的邮箱帐户,并且定期更新。

规则2:帐户名是否有意义。这里工程量略大,要有算法团队支撑,分析存量数据的帐户。同时还要有延伸,例如hacker001是一个坏帐户,那hacker00203是否是坏帐户?这就要去看数据中聚类有相似特征的Email前缀聚集成,构造模型并验证。

规则3:帐户信息完整。在金融,帐户是需要实名认证的,如果实名认证未通过,则代表可能存在信息虚假。

规则4:帐户活动。帐户注册以后,是否有过登录,是否有过相关操作行为。如果帐户注册后不动了,那就有问题。如果有操作行为,也要看这些行为,具体业务收集具体的操作行为,总结出正常人群业务行为和异常行为,这种也需要算法来支撑。

好坏帐户的判断是一个重型武器,需要大数据,需要算法,也需要强大的性能保障。没有团队是玩不转的。

1.2 帐户盗用

盗账号目前有两大主要手段,一个是撞库,一个是钓鱼。堵住这两条,账户安全就做了大部分的工作。当然自身网站和数据安全也是需要保证的,但这个狭义上不属于业务安全的范围,不做讨论。

1.2.1 撞库

撞库是利用互联网上已经泄露的数据进行批量测试,对付这种可以有很多种手段来防。

规则1:帐户注册层面的IP防范技术可以复用,针对代理、恶意IP、反向探测等都可以用。

规则2:行为判断。最简单的是看IP和账号的频率,但是黑客也仍然会变换IP,缓滴式撞库,所以单单从IP账号频率,只能起到一定的作用,在现在的形势下还不够。要去看更多的行为来判断,所谓更多行为,实际上取决于你能够获得的行为数据有多少,设备指纹在这里就大有用武之地,通过抓取用户设备信息,形成一个画像作为基线。当环境产生变化而不可信时,推出短信码等的校验。另外,也可以通过页面点击流、击键行为来做判断。事实上目前看来,通过行为判断的防盗号,或者说对可信环境的判断的防盗号,是一个比较综合的手段。

1.2.2 钓鱼

关于钓鱼实际上可以作为专门一篇来讲,这里大体说三个方向,一是自身技术方向上的漏洞问题,比如浏览器跨域、Session劫持等。二是外部合作打击和宣传教育。三是通过设备指纹技术也可以很大程度上做防范,当钓鱼者登录的时候,设备指纹判断登陆环境异常,从而推出二次挑战。

1.3 身份冒用

帐户环节,最重要的是解决你到底是谁的问题,解决这个问题最主要的手段是实名验证。而实名验证根据情况不同,目前主要是姓名与号码核对、身份证图片、银行绑卡、人脸识别这几种。

1.3.1 姓名与号码核对

这是最基础的验证手段,输入姓名和身份证号码,在后台进行比对。而事实上,由于大量的身份证信息泄露,这种验证已经没什么意义了。在网上搜身份证,就可以得到大量的图片和身份证信息。比如在百度图片搜身份证,会出来大量图片,然后如果你用这些身份证信息去大一些的平台注册,会发现都已经被注册过了。所以这种手段只是略微抬高了一丁丁门槛,没什么大用。

1.3.2 身份证图片上传

在某些平台,会要求上传身份证图片信息来做验证。这种单一上传身份证图片的也没什么大用,泄露身份证图片也不是什么稀罕事,所以如果没有其他辅助验证手段的话,这种完全就属于影响了客户体验的同时,安全性上也没有任何提高。所以要么在业务上还有其他辅助手段,要么就还需要一些技术手段来验证这张图片,比如读取图片附带的经纬度、时间等信息来做判断。

1.3.3 银行绑卡和人脸识别

银行绑卡和人脸识别,在对抗中其实都是一样的。黑产大致几种手段,一个是兼职招聘,要求应聘者提供相关信息,然后谎称发工资需要打款验证,通过绑卡,人脸识别也可以通过兼职招聘编造一些理由,让应聘者通过。再一种是收购身份证办银行卡、手机卡,从而做成冒名卡,由于办理银行卡等需要面签,所以他们就会找一些长的比较像的去办,哪里去找长相相似的呢,兼职招聘也是最好的办法,雇佣那些长相相似的,在利益的驱使下,很多人还是愿意去跑腿的,不要以为这只是个案,在任何一个流动性比较大的银行网点,每天都有若干起冒名办卡。

银行绑卡和人脸识别的问题是,流程比较重影响客户体验,小型机构在技术和资金上都办不到,人脸识别还存在准确性问题,同时也都能被绕过。但也还是当前形势下的一个解决办法,至少逼着黑产提高了成本。

二、借款

在借款环节,也就是我们所说的贷款环节,主要风险是虚假资料和代理中介。

2.1 虚假资料

所谓虚假资料,就是包装自己的资料以提高额度或者通过放款。对虚假资料的识别,传统线下手段是实地核实,在互联网上则主要依靠大数据做交叉验证,所谓交叉验证就是通过匹配,来验证你所说的是否真实。比如我号称自己住在一个高端小区A栋3楼,该小区均价8万一平方,那么我们就要核实了,是否真的住在这个小区,该小区是否均价8万。是否真的住,可以通过手机上的GPS来定位是否经常在这里出现,数据可以通过APP获取,可以与运营商合作。均价是否8万则可以爬取房产相关数据比对后确认。

事实上在虚假资料这里可以核实的很多,所有贷款申请资料项,只要能找到数据源,都可以做自动化核实,比如收入、汽车、房产、证券资产等。这里要用到一些模糊匹配技术,比如我填写资料时是:南京路隆盛小区A栋301,而标准写法是南京东路1000号隆盛花园A区1栋301室,但在本质上这两个位置是一样的,这就需要地址模糊匹配技术去核实。

2.2 代理中介

虚假资料很大程度上和代理中介脱不开关系,中介会帮助不良客户包装资产,批量化的生产。因此对不良中介需要严加防范,因为他们经验丰富,集团化作战,并会根据防守方策略做不断调整优化。关于代理的打击,由于代理存在一台机器替多人代办的行为,因此可以很容易通过设备指纹定位。

三、总结

以上,无论各种技术,其本质上都是通过各种渠道收集大量数据来做模型和规则判断,用以防范风险。所以数据来源和准确性是第一个要解决的问题,而中小机构是无法解决这个问题的,也就造成了当下P2P的风险局面。因此迫切需要各界联合形成黑名单,为中小机构提供数据支撑。黑名单可以但不限于黑手机、高危身份证、黑名单、多头贷款、黑卡等。

有了数据,才能够做一些规则,在这个基础上可以形成宽表、关联网络、算法,挖掘稀分布的数据价值。大数据为业务安全带来的实际产出价值是显而易见的,在网络攻防层面还在探讨、尝试的阶段,业务安全在很多大型机构已经离不开大数据了。

责任编辑:蓝雨泪 来源: FreeBuf
相关推荐

2012-12-10 09:46:21

P2P云存储Symform

2019-12-27 10:28:07

信息安全证书信息安全网络安全

2010-03-22 15:27:40

云计算

2010-07-13 14:41:14

2024-08-06 14:03:35

2020-03-05 20:30:15

Syncthing文件同步工具开源

2009-01-18 09:36:00

2022-07-19 16:59:04

流媒体传输IPC物联网

2023-02-13 00:20:08

分布式系统安全

2023-03-14 12:43:57

2015-01-27 17:32:01

2019-11-20 10:00:56

开源侵权版权

2023-02-16 07:12:43

P2P协议服务器

2023-02-15 07:10:59

P2P协议系统

2020-05-07 10:05:52

Python数据安全

2020-05-06 16:47:08

线程安全Python数据安全

2015-04-27 11:49:23

2012-09-25 13:47:43

C#网络协议P2P

2018-08-16 07:29:02

2010-06-28 11:15:45

BitTorrent协
点赞
收藏

51CTO技术栈公众号