写点什么

11 周总结:安全,高可用

用户头像
hifly
关注
发布于: 2020 年 08 月 26 日
11周总结:安全,高可用

安全架构



XSS攻击

攻击者推送含有恶意脚本的url给用户,用户打开url就会被执行恶意脚本。



XSS攻击防御手段

对某些HTML危险字符进行过滤,消毒和转义处理。



SQL注入攻击

攻击者发送含有恶意sql命令的http请求,如果在数据库执行这条sql,会导致数据库被破坏。

获取数据库表结构信息的手段:开源,错误回显,盲注。



注入攻击防御手段

通过正则匹配,对请求参数消毒,过滤请求数据中可能注入的sql。

使用预编译手段,绑定参数是最好的防SQL注入的方法。



CSRF攻击



CSRF攻击防御手段

  • 随机数Token:在页面表单中增加一个随机数Token,每次请求的Token都不相同,请求提交后检查Token的值是否正确以确定请求提交者是否合法。

  • 验证码:在请求提交时,需要用户输入验证码,以避免在用户不知情的情况下被攻击者伪造请求。但是输入验证码时一个糟糕的用户体验,所以必要的时候才使用。

  • Referer check: Http 请求头的referer 域中记录着请求来源,可以通过检查请求来源,验证其是否合法。但是该方法有一定的局限性,referer 也并不一定总能得到。



其他需要关注的攻击和漏洞: Error Code, HTML 注释,文件上传, 路径遍历。



Web应用防火墙

开源Web应用防火墙ModSecurity

ModSecurity 采用处理逻辑和规则集合分离的架构模式。处理逻辑负责请求和响应的拦截过滤,规则加载执行功能。而规则集合则负责对具体的攻击的规则定义,模式识别,防御策略等功能。处理逻辑比较稳定,规则集合需要不断针对对漏洞进行升级,这是一种可扩展的架构设计。



网站安全漏洞扫描



信息加密技术及密钥安全管理

  • 单项散列加密

  • 对称加密

  • 非对称加密



密钥安全管理与加解密服务系统架构



反垃圾邮件



贝叶斯分类算法

根据已分类的样本信息获得一组特定值的概率(如"茶叶"这个词出现在垃圾邮件中的概率和非垃圾邮件中的概率)就得到分类模型,然后对待处理信息提取特征值,结合分类模型,判断其分类。

布隆过滤器黑名单



电子商务风险控制

交易安全是电子商务网站的底线。

电子商务的风险大致可以分为以下几种:账户风险,买家风险,卖家风险,交易风险。



规则引擎

当交易的某些指标满足一定条件的时候,就会被认为具有高风险的欺诈可能性。

比如:用户来自欺诈高发地区,交易金额超过某个数值。

大型网站在运营的过程中,结合业界的最新发现,会总结出数以千计的高风险交易规则。



机器学习

规则引擎虽然技术简单,但是随着规则的逐渐增加,会出现规则冲突,难以维护的情况。

而且规则越多,性能也越差。大型互联网公司更倾向于使用机器学习模型进行风控。



高可用架构



可用性指标

两个9是基本可用,年度停机时间小于88小时;3个9较高可用,年度停机时间小于9小时;4个9是具有自动恢复能力的高可用,年度停机时间小于53分钟(qq的可用性是4个9);5个9是极高可用性,年度停机时间小于5分钟。



故障分管理



故障处理流程及考核



引起故障的原因:

  • 硬件故障

  • 软件bug

  • 系统发布

  • 并发压力

  • 网络攻击

  • 外部灾害



高可用系统的架构的设计方式:

  • 解耦

  • 隔离

  • 异步

  • 备份

  • Failover(失效转移

  • 幂等

  • 事务补偿

  • 重试

  • 熔断

  • 限流

  • 降级

  • 异地多活



高可用系统的运维

  • 发布

  • 自动化测试:手工测试和自动化测试总体成本

  • 自动化部署

  • 持续部署三步走:持续集成,持续交付,持续部署。

  • 代码版本控制

  • 自动化发布

  • 灰度发布

  • 网站运行监控

  • 监控数据采集

  • 用户行为日志收集

  • 服务器性能监控

  • 业务运行数据报告



监控管理

  • 报警

  • 自动控制

  • 自动扩容

  • 自动限流



监控系统架构



高可用的价值观

保持简单,使问题易于发现,快速解决。

目标明确,解决特定环境下的具体问题。

价值回归,成本收益要合理。



用户头像

hifly

关注

还未添加个人签名 2018.03.08 加入

还未添加个人简介

评论

发布
暂无评论
11周总结:安全,高可用