企业安全建设之与灰黑产对抗的两个多月(三)

在路上,所以没有办法上传图片,所以这篇先说下我们目前加固的方法,另外,大家注意安全呀。

0x00 前言

公司年末的时候为了验证安全建设的效果如何,找了下国内某信和某天众测安全测试了下,在完全黑盒的情况下两次服务均未发现任何漏洞,所以效果还是可以的。

0x01 前台策略

前台分两种策略:加固和数据加密

1.1 安卓层面

  • 禁止反编译

使用了360、梆梆等安全厂商对前台APP进行了加固

  • 平台安全性

检查软件运行平台,禁止模拟器,禁止root环境

  • 通信安全性

检查是否使用了代理,禁止网络代理,逐步同步双证书验证

1.2 业务层面

  • 登陆处,禁止账号密码登陆,剔除忘记密码功能,只允许短信验证码登陆;

  • 短信验证码处设置强图形验证码;

  • 限制单IP、单手机号、单位时间内发送短信验证码频次;

  • 限制短信验证码验证错误次数,超过阈值即销毁重新获取;

  • 登陆之后采用session验证机制,并加入随机值;

  • 设置session有效期;

  • cookie中添加httponly、secure等安全属性;

  • 部分接口采用referer验证;

  • 业务功能剔除一些用户使用频次较低的花里胡哨的功能;

  • APP内涉及用户信息处,均采用打码处理,比如用户手机号、身份证、银行卡等;

  • 在线客服剔除交互功能,采用第三方客服系统;

其他具体业务层面由于比较敏感,后续再说吧

1.3 数据通信

  • 全站使用阿里SSL证书,https加密传输;

  • 所有通信数据包采用Base64+AES加密;

  • API接口采用url混淆重写,使用十位的字母和数字组合,这样就算某些接口存在未授权访问,能fuzz出来算我输;

0x02 后台策略

2.1 子域名

子域名除了www之外,其他均采用 【大小写字母+数字+随机十位】的组合,按照这种设计方法,我通过常规的子域名搜集方法基本上无法找到后台的子域名地址,但是,最终还是发现了遗漏的,通过Google搜索语法还是能找到一两个后台的地址,通过设置robots还是没办法禁止爬虫搜录,目前还在完善这部分,如果有什么好的办法还望不吝给我说下

2.2 登录入口策略

最初的后台入口采用账号密码+图形验证码策略,但是发现还会有灰黑产搞图形验证码识别来进行账号密码爆破,遂弃用了图形验证码策略。

目前登录入口采用账号密码+短信验证码策略,账号密码验证码错误超过阈值,封锁该IP及对应的账号一定时间,验证成功则获取对应的手机验证码,手机验证码使用5次无论对错即销毁。

2.3 业务逻辑

由于业务敏感就不再叙述。

0x03 代码层面

  • 数据库、密钥等敏感信息不硬编码,使用脚本写入环境变量;

  • 推广所有开发小哥哥使用语言自带安全校验函数,比如htmlspecialcharsaddslashes

  • 推广所有开发小哥哥采用陌陌开源的sdk,具体是否落实有待考证;

0x04 数据库层面

  • 数据库采用阿里云rds,设置只允许跳板机IP登陆;
  • 数据库定时备份;
  • 数据库存储的用户敏感信息不明文保存,具体结合程序代码实现;

下一篇说下第三方方面的安全性,比如短信平台、支付平台、运营商、引流等

大爷,赏个铜板呗!