业务安全问题,受害者往往是互联网公司的用户,攻击的是互联网公司的业务,难以根除,是公司业务发展的阻力。

产品安全

安全是产品的一个特性,具备了安全性,产品才是完整的;安全做好了,产品最终才能真正成熟。

一个优秀的安全方案,除了可以有效地解决问题之外,至少还必须具备两个条件:

  1. 良好的用户体验;
  2. 优秀的性能。

此外,如果我们的产品能够潜移默化地培养用户的安全习惯,将用户往更安全的额行为上引导,那么这样的安全就是最理想的产品安全。

业务逻辑安全

业务逻辑问题是一种设计缺陷,在产品开发过程中,可以考虑在产品设计和测试阶段解决。但业务逻辑问题没有一个成熟的归纳体系,很多时候,只能依靠安全工程师的个人经验来判断这些问题。

账户被盗

账户被盗的途径

在以下几种情况下,用户的账号存在被盗的可能。

  1. 网站登录过程中无HTTPS,密码在网络中被嗅探;
  2. 用户电脑中了木马,密码被键盘记录软件所获取;
  3. 用户被钓鱼网站所迷惑,密码被钓鱼网站所骗取;
  4. 网站某登录入口可以被暴力破解;
  5. 网站密码取回流程存在逻辑漏洞;
  6. 网站存在XSS等客户端脚本漏洞,用户账户被间接窃取;
  7. 网站存在SQL注入等服务器端漏洞,网站被黑客入侵导致用户账户信息泄露。

账户被盗的原因

  1. 客服是最重要和直接的渠道;
  2. 从日志中寻找证据;
  3. 打入敌人内部,探听最新动态。

互联网的垃圾

在网站应用中,垃圾注册几乎成为一切业务安全问题的源头。

防范垃圾注册和垃圾消息有两个步骤:“识别”和“拦截”。

识别

  1. 基于内容的规则:以自然语言分析、关键词匹配等为代表;
  2. 基于行为的规则:以业务逻辑规则为代表;
  3. 基于客户端识别的规则:以人机识别为代表,比如验证码,或者让客户端去解析JavaScript。

拦截

如果不是特别紧急的业务,可以打一个时间差。当使用规则识别出垃圾账户后,过一段时间再处理,这样恶意用户就摸不准到底触犯了哪条规则。同时还可以“打压”大版本账户,放过一小批账户。

拦截的方法根据业务而定,可以选择冻结账户或者删除账户,也可以只针对垃圾内容做屏蔽。

钓鱼网站的防控

  1. 控制钓鱼网站传播的途径;
  2. 直接打击钓鱼网站;
  3. 用户教育;
  4. 自动化识别钓鱼网站

用户隐私保护

  1. 用户应该拥有知情权和选择权;
  2. 网站应该妥善保管收集到的用户数据,不得将数据用于任何指定范围以外的用途。