运营交易所的安全挑战 Part 1 - 如何保护使用者的资产
黑客(入侵型)攻击交易所主要有两种手段:
- 针对交易所本身的设计瑕疵攻击
- 针对交易者进行社交攻击,诱骗拿到密码或者前往钓鱼网站
攻击交易所本身的设计瑕疵,本身难度比较高。可以把攻击交易所这件事,比喻为抢银行。
来硬的抢银行,难度可能比较高,因为有些银行防御系数非常高。不容易打的下来
但是对使用者进行社交攻击,就比较简单了。所谓社交攻击类似就是像骗密码。有时候要抢钱不一定得直接硬碰硬抢银行,合法拿本子进去银行大摇大摆提现容易的多。
什么是社交攻击?
人类对于自身信息的保护意识与技巧,其实是这当中最脆弱的一环。
所谓社交攻击就是黑客利用一系列人与人之间的互动去让被害者上当。
举例来说,常见的两种社交攻击技巧:
- 用户无意中上到假的网站,输入真的密码。输入正确密码,却没有办法登入。但是也没有立刻意识到这是诈骗网站,即时把自己密码改掉。
- 用户收到钓鱼信件,信件是由熟人寄来的。通常诈骗的手法是希望被害者打开副档名 .pdf 或 .docx 的内容阅览。而被害者一打开这些文件,马上就被植入木马。而这些木马会监测使用者在电脑的各种输入。。。。。(包括密码)
不容易被入侵的防御意识是:
- 只用 iPhone 不用 Android
- 只用 Chrome 不用其他浏览器
- 使用 Mac 而不使用 Windows
- 不同网站使用不同密码
- 仔细检查网址是否是假的网址
- 网址是否有上 https
- 对于熟人寄来要求开档案的邮件,一律不打开。
- 使用会自动侦测有害附件的邮箱(如 Gmail)
- 邮箱也上二步验证。(这是最多人缺乏的意识,很多黑客喜欢攻击邮箱,因为很多网站的防御机制是透过邮箱确认。邮箱被入侵,会连这第二道防线也沦陷)
防社交攻击,说到容易做到难
社交攻击难以被防御的问题在于:
- 很多人只是买个币,并不是电脑高手,也不是有被害妄想症的人,不可能防这个防那个。
- 有一些防御细节牵扯到技术细节,一般人无法短时间吸收,更难以宣导。通常是中一次奖才会痛。
而且中国大陆用户的使用习性,可能让这件事又变得更加困难。
- 很多人用的不是 Chrome / Firefox,而是不知哪里来的加料浏览器。(本身电脑还中了毒)
- 绝大多数人惯用手机不是 iPhone,而是系统底层容易被入侵的 Android。
- 多数人邮件使用的是 qq / 163 邮箱,不是 gmail。
所以要让使用者保持「安全」,这件事是很难做到的。因为使用者本身就不是待在安全的环境里。
交易所该怎么防:预设使用者已经被盗,但无法让被盗者一次得逞
所以交易所该怎么做呢?
我认为实做交易所安全很重要的一个态度,是直接假设所有的使用者的信息都是极其可能被盗,甚至已经被盗。
关键在于如何使用者在密码已经被拿到的情况下,还能保护使用者的资产。
技术性阻挡一次性沦陷
主要办法就是开启多重因素 ( Multi Factor )。
几个可以具体且可以确切阻挡的作法是:
- 当侦测到使用者上次登入与这次登入的 IP / 浏览器不同时,要求使用者必须在邮箱里面确认。(假设 Email 没被盗的情况下)
- 关键提取资产步骤,必须请使用者输入二步验证码,才能进行提币申请。(这里可以确认是本人操作)
- 提币申请发出后,必须请使用者再去确认一次提币动作。(假设 Email 没被盗的情况下)
- 请使用者设置防钓鱼码,确认以交易所名义寄来的信,确实是交易所寄来的。
这些都是一些目前主流交易所预设会上的技术手段。尽量避免使用者因为一道密码沦陷,甚至邮箱沦陷,整套资产蒸发的风险。
内部风控机制
另外还可以做的是交易所内部的风控动作。
所谓风控动作比较像是侦测可疑性事件并且主动进行阻挡:
- 使用者是否提币到高危地址。(已经被回报为诈骗者变现主要钱包)
- 使用者是否近期不活跃,突然转出大额资产。提币确认由机器处理转为人工客服处理。
- 多个使用者被同一 IP 登入,快速冻结所有相关帐号
- 同一 IP 尝试多个帐号密码,直接 ban 掉
- 针对不同活跃度使用者,区分风险等级。高风险使用者出现不寻常动作,立刻冻结相关权限。