互联网公司安全运营
## 互联网业务安全
### 产品需要什么样的安全
- 互联网产品对安全的需求
- 安全是产品的一个特性
- 一个成熟的产品几乎都会在安全方面存在竞争
- 搜索内容安全过滤
- 反垃圾邮件的安全
- 什么是好的安全方案
- 条件
- 良好的用户体验
- 优秀的性能
- 认证选择
- 用户名和密码
- 双因素认证,如U盾、动态短信、客户证书等
- 复杂密码安全吗?
- 设置复杂密码的初衷
- 防止暴力破解
- 密码有关联性,如手机号码、生日等
- 提高密码复杂度的本质
- 如何对抗暴力破解
- 如何防止密码中包含个人信息
- 产品潜移默化地培养用户的安全习惯
### 业务逻辑安全
- 永远改不掉的密码
- 业务逻辑问题是一种设计缺陷
- 案例
- 谁是大赢家,在线竞价,账号登录失败多次被锁定,导致他人无法竞价
- 瞒天过海
- 电视广告信息,用户弹窗。审核通过后,用户可再次编辑,并且不会被二次审核
- 关于密码取回流程
- 常规做法
- 用户设定的安全问题
- 用户注册时留下的安全邮箱
- 给用户发送手机短信验证码
- 用户基因
- 使用用户曾经在网站留下的私有信息
### 账号是怎么被盗的
- 账号被盗途径
- 暴力破解、钓鱼网站、网络嗅探、存在XSS、存在SQL注入漏洞
- 分析账号被盗的原因
- 客服是最重要和直接的渠道
- 打入敌人内部,探听最新动态
### 互联网的垃圾
- 垃圾的危害
- 垃圾注册几乎成为一切业务安全问题的源头
- 垃圾的处理
- 步骤
- 识别
- 拦截
- 冻结账户、删除账户
- 垃圾识别算法
- 基于内容的规则
- 基于行为的规则
- 基于客户端识别的规则
### 关于网络钓鱼
- 钓鱼网站简介
- 骗取用户的密码
- 邮件钓鱼
- SMTP协议可以让用户伪造发件人邮箱
- 识别发件人的邮箱安全技术
- SPF(Sender Policy Framework)、Yahoo的DomainKeys、微软的SenderID
- 钓鱼网站的防控
- 统一战线
- 运营商关停站点
- 浏览器拦截钓鱼网站
- 用户教育
- 自动识别钓鱼网站
- 网购流程钓鱼
- 伪造类似的网站购物页面、流程,最终支付成功
- 解决:找到唯一的客户端信息,确保订单是由本人创建的
### 用户隐私保护
- 互联网的用户隐私挑战
- Subtopic 1
- 如何保护用户隐私
- 用户的知情权和选择权
- 禁止用于其他用用途
- do not track
## 安全开发流程SDL
### SDL介绍
- 试图从安全漏洞产生的根源上解决问题
- 步骤
- 培训:核心安全培训
- 要求:确定安全要求,创建质量门/错误标尺,安全和隐私风险评估
- 设计: 确定设计要求,分析攻击面,威胁建模
- 实施:使用批准的工具,弃用不安全的函数,静态分析
- 验证:动态分析,模糊测试,攻击面评析
- 发布:事件响应计划,最终安全评析,发布存档
- 响应:执行事件,响应计划
- [OWASP SAMM ,适合域自主开发软件的使用者](http://www.opensamm.org/)
-
### 敏捷SDL
- 一次性要求
### SDL实战经验
- 准则一、与项目经理进行充分沟通,排出足够时间
- 准则二、规范公司的立项流程,确保所有项目都能通知到安全团队,避免遗漏
- 准则三、树立安全部门的权威,项目必须由安全部门审核完成后才能发布
- 准则四、将技术方案写入开发、测试的工作手册中
- 准则五、给工程师培训安全方案
- 准则六、记录所有的安全 bug,激励程序员编写安全的代码
### 需求分析与设计阶段
- 对接项目经理、产品经理、架构师进行访谈,了解产品背景和技术,给出相应的建议
### 开发阶段
- 提供安全的函数
- OWASP 的开源项目 OWASP ESAPI 为安全模块的实现提供了参考
- 代码安全审计工具
- ① 函数调用是个复杂的过程,当审计工具找到敏感函数时,回溯函数的调用路径常常会遇到困难
- ② 如果程序使用了复杂框架,代码审计工具往往由于缺乏对框架的支持,从而造成误报或漏报。
### 测试阶段
- 安全测试应该独立于代码审计
- 自动化测试可以通过 web 安全扫描器对项目或产品进行漏洞扫描
- 常规漏洞:XSS、SQL Injection、Open Redirect、PHP File Include;CSRF、越权访问、文件上传等漏洞
- 由于涉及系统逻辑或业务逻辑,有时需要人机交互参与页面流程,因此需要依靠手动的方式完成测试。
## 安全运营
### 把安全运营起来
- SOC
- 各种安全日志、安全事件关联起来
- 安全修复
- 例行的扫描任务,发现漏洞,及时修补
- 安全事件发生时或者0 day 漏洞被公布时,进行紧急漏洞响应
### 漏洞修补流程
- 建立类似bugtracker的漏洞跟踪机制,并为漏洞的紧急程度选择优先级
- 建立漏洞分析机制,并与程序员一起制定修补方案,同时review补丁的代码实现
- 对曾经出现的漏洞进行归档,并定期统计漏洞修补情况
### 安全监控
### 入侵检测
- ModSecurity WAF
- WAF PHPids
### 紧急响应流程
- 报警方式
- 邮件报警
- IM报警
- 短信报警
- 建立紧急响应流程
- 紧急响应小组
- 技术、产品、公关
- 需要保护安全事件的现场
- 以最快速度处理完问题