劝普天下所有电商公司:千万、绝对不要让系统接触到消费者信用卡

劝普天下所有电商公司:千万、绝对不要让系统接触到消费者信用卡

前言:
最近有新闻爆出某厉害国在替别人生产的电脑硬件中加入自己的特殊晶片去偷别人资料甚至入侵系统。

某朋友的名句:
所谓的安全,便是入侵/破解的成本,比所得到的利益多,让贼人懒得去入侵你的系统。(同理,我这个穷鬼非常安全)

今天谈的,便是降低贼人系统后所得到的利益。

伺服器绝对不要接触到信用卡资料

首先非常非常重要的一句:
除非你的公司是上市大公司,有什幺 PCI 安全认证(具体名字我忘了)(TO 编按: PCI-DSS 认证),发生资安问题要赔客户十亿也没问题的。否则……

绝对不要让你的伺服器接触到客户的信用卡资料!!!
绝对不要让你的伺服器接触到客户的信用卡资料!!!
绝对不要让你的伺服器接触到客户的信用卡资料!!!

请记住:
大部份专业级的 cracker 都是来求财的,他们也是要交税要养小孩的。他们不会那幺空闲,去入侵别人系统然后单纯把主页换成自己头像的。

(谜之声:最近不是有人入侵自己住的酒店系统还高调写文丢上网,然后结果被抓了吗 XD)

只要你的系统有任何一环接触到客户的信用卡资料,这些信用卡资料便会引来 cracker 注意然后入侵。

遵守这些步骤,信用卡资料不会被伺服器碰到

所以,之后会说一个电商的付款的流程,去示範具体怎让自己伺服器接触不了客户的信用卡资料下让客户以信用卡付费购物。(注:具体细节不同的银行/payment gateway 会有细微分别)

1 客户按下结帐,进入付费流程。

2 电商网站客户 redirect 到银行的系统页面,并且附上自己的商家 ID,订单编号,应收金额,成功后的 return url。

3 客户在银行的系统中输入自己的信用卡资料。

4 银行收到信用卡资料,对客户帐户扣款,并且把这笔交易的(商家 ID,订单编号,应收金额)纪录下来方便日后查帐。

5 银行跟据第 2 步的 return url ,把客户 redirect 回到电商网站,并且付上加密后的订单编号。

6 如果电商网站能以银行提供的 public key 解密银行给予的资讯,并且订单编号是相配的,则电商网站能确定客户已经在银行的系统付费了,所以可以进入送货流程了。

7 如果用户是用 Internet explorer ,并且在第 4 步后当机蓝画面。一般银行会提供 API ,让电商网站在客户重新登入时,以(商家 ID ,订单编号)来跟银行查询是否已付费,所以正常不会发生客户付费了但是电商网站没法继续流程。

重点:以上流程,电商网站是完全没接触到客户的信用卡资料的。

更多信用卡资安消息

信用卡上设指纹辨识,让骇客窃得卡号也盗刷无门!

英国航空:骇客窃取 38 万笔刷卡资料,请大家务必检查信用卡帐单是否异常

只要十分钟就可盗取信用卡资料,最潮的支付工具 Square 有麻烦了