道高一尺,魔高一丈的网站应用攻击与防御

XSS和SQL注入构成网络应用攻击的最主要的手段,(70%)。此外,常用的WEB应用还包括CSRF,Session劫持等手段。

XSS攻击:跨站点脚本攻击,指黑客通过篡改网页,注入恶意HTML脚本,在用户浏览网页时,控制用户浏览器进行恶意操作的一种攻击方式。

包含两种:

1.反射型:攻击者诱使用户点击一个嵌入恶意脚本的链接,达到攻击的目的。

2.持久型XSS攻击:黑客提交包含恶意脚本的请求,保存在web站点的数据库中,用户浏览网页时,恶意脚本呗包含在正常页面中,达到攻击的目的。

消毒:对某些html危险字符进行转义,为了避免不必要的内容错误转义,需要进行文本匹配后再转义。

HttpOnly:浏览器禁止页面JS访问带有HttpOnly属性的Cookie,HttpOnly并不直接对抗XSS,而是防止XSS攻击者窃取Cookie,对存有敏感信息的Cookie,设置该属性,避免被    脚本窃取。

注入攻击:SQL注入和OS注入

SQL注入:攻击者在HTTP请求中注入恶意SQL(drop table....),服务器用请求参数构造SQL时,恶意SQL被遗弃构造,在数据库中执行。

SQL注入需要了解数据库结构,通过:开源,数据回显,盲注。

消毒:通过正则匹配,过滤请求数据中可能注入的SQL “DROP TABLE”

参数绑定:使用预编译手段,绑定参数。

CSRF攻击: 跨站点请求伪造。通过跨站请求,在用户不知明的情况下,以合法用户身份进行非法操作,转账交易,发表评论等。

核心是利用浏览器Cookie或服务器Session,盗取用户身份。

识别请求者身份:

表单Token:通过在请求参数中增加随机数来阻止攻击者获得所有请求参数,在页面表单增加随机数做Token,每次响应值都不同,从正常页面提交会包含,伪造者无法获 取该值。

验证码:

Referer check:HTTP请求的Referer域中记录着请求来源,验证是否合法。

其他攻击和漏洞

error code:故意制造非法输入,获取异常信息,寻找系统漏洞进行攻击

配置WEB参数:跳转500页面,出现错误跳转到专门的错误页面、

html注释:注释显示在客户端浏览器,给黑客造成攻击便利

代码扫描,避免提交注释。

文件上传:如果上传的是可执行程序,并通过该程序获得服务器端命令执行能力,后果不堪设想。

设置上传白名单,只允许上传可靠的文件类型

路劲遍历:攻击者在请求URL中使用相对路劲,便利系统未开放的目录和文件

将JS,CSS等资源文件部署在独立服务器,使用独立域名,其他文件不使用静态URL,动态参数不包含文件路劲信息。

web应用防火墙

ModSecurity:开源web防火墙,探测攻击并保护web应用程序,统一拦截请求,过滤恶意参数,自动消毒,添加Token...

安全漏洞扫描:构造具有攻击性URL,模拟黑客攻击,用以发现网站漏洞。

信息加密技术:单向散列加密,对称加密,非对称加密

单向散列加密: MD5

对称加密:加密和解密使用同一个秘钥:DES算法

非对称加密:RSA算法

秘钥安全管理:

1.把秘钥和算法放在一个独立的服务器:秘钥泄露概率降低,但是成本高

2.将加解密算法放在应用系统中,秘钥放在独立服务器中


信息过滤和反垃圾:

文本匹配:正则表达式,双数组Trie算法。

分类算法

黑名单


电子商务风险:

账户风险:账户被盗,恶意注册账户

买家风险:恶意下单,占用库存进行不正当交易

卖家风险:不良卖家恶意欺诈

交易风险:信用卡盗刷,恶意欺诈


风险控制:

1.规则引擎:交易的某些指标满足一定条件,则认为具有高风险的欺诈可能:用户来自欺诈高发区,交易金额超过某个数值,异常登录地址等


2.统计模型:机器学习算法进行智能统计。


《大型网站技术架构:核心原理与案例分析》拜读总结,第八章——固若金汤:网站的安全架构相关推荐

  1. 读书笔记:大型网站技术架构-核心原理与案例分析

    李智慧<大型网站技术架构-核心原理与案例分析> 性能 可用性 伸缩性 扩展性 安全性 总结 这本书组织的很不错,语言精练,篇幅也不长,对网站架构的要点讲的狠清楚透彻,思路清晰.主要围绕架构 ...

  2. 读书笔记之 大型网站技术架构(核心原理与案例分析)

    前言 坚持看了十几天的书,终于完成了毕业后第一次静下心来,利用业务时间看书并做笔记的成就了.废话不多说,这回看的是一直很膜拜的李智慧大神写的大型网站技术架构-核心原理与案例分析. 简短的读后感 极其推 ...

  3. 大型网站技术架构:核心原理与案例分析 mobi_阿里面试官:你会高并发技术吗?...

    前言 据有关数据统计,无论是游戏行业还是互联网行业,无论是软件开发公司还是大型网站,都对高并发技术人才有着巨大的需求.因此,无论为了是面试还是为了工作,学习高并发技术刻不容缓. 当然,高并发相关岗位的 ...

  4. 把书读薄:大型网站技术架构-核心原理与案例分析(第四篇 架构师)

    14 架构师领导艺术 职能:架构设计,软件开发,管理职能(规划产品,估算人力资源,估算时间资源,安排人员职责分工,确定计划里程碑,指导工程师工作,过程风险评估与控制). 是工程师的榜样,要做好表率. ...

  5. 大型网站技术架构:核心原理与案例分析 mobi_大数据技术经典学习路线

    如果你看完有信心能坚持学习的话,那就当下开始行动吧! 点击链接加入群聊[大数据学习交流群]:想要在大数据这个领域汲取养分,让自己壮大成长.分享方向,行动以前先分享下一个大数据交流分享资源,欢迎想学习, ...

  6. 大型网站架构模式【大型网站技术架构.核心原理与案例分析】(阅读分享)

    这本书分几个章节,其中有一个值得和大家分享的技术知识. 大型网站架构模式中引入了模式概念:每一个模式描述了一个在我们周围不断重复发生的问题及该问题解决方案的核心.这样,你就能一次又一次地使用该方案而不 ...

  7. 读《大型网站技术架构 核心原理与案例分析+李智慧-高清》有感

    其实作为一个刚入职场的小白(今年才毕业),对于java的领域一开始我是特别喜欢.从一开始的学习ssm框架培训,到现在真正的去公司参加项目.目前为止我进公司快一个月了,先从写测试类开始,用的是testn ...

  8. 【撸码师读书笔记】 大型网站技术架构——核心原理与案例分析

    2019独角兽企业重金招聘Python工程师标准>>> 合理的预估系统的瓶颈及制定有效伸缩性架构预案: 架构设计应从性能,可用性,伸缩性,扩展性及安全这五个要素方面出发: 与传统企业 ...

  9. 大型网站技术架构·核心原理与案例分析 第八章·固若金汤:网站的安全架构思维导图

    固若金汤:网站的安全架构思维导图

  10. 《大型网站技术架构:核心原理与案例分析》笔记05

    <大型网站技术架构:核心原理与案例分析>笔记05 网站的课扩展性架构: 扩展性:指对现有系统影响最小的情况下,系统功能可持续扩展或提升的能力.表现在系统基础设施稳定不需要经常变更,应用之间 ...

最新文章

  1. 生产环境 JVM 内存溢出案例分析
  2. Linux_LVM/Quota
  3. mysql 求count和_MySQL的统计总数count(*)与count(id)或count(字段)的之间的各自效率性能对比...
  4. python爬虫有几种方法_基于Python爬虫的几种方法,python
  5. Feature Pyramid Networks for Object Detection 总结
  6. 用eclipse创建WebService项目
  7. Joe一款个人博客typecho主题(扩展版)
  8. 使用TextRange获取输入框中光标的位置
  9. Pycharm连接Mysql问题: Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezon
  10. 在 Mac 上的“快捷指令”中如何调整基本隐私设置?
  11. 中文 tts 开源 Android,7 个开源的TTS(文本转语音)系统推荐-Go语言中文社区
  12. 空城机在CSDN的四周年创作纪念日
  13. 欧洲共同语言标准 c1,[转载]BEC,雅思等考试和欧洲共同语言参考标准的对照
  14. WebMagic爬取小说网站所有小说
  15. 【SLAM学习笔记】12-ORB_SLAM3关键源码分析⑩ Optimizer(七)地图融合优化
  16. html相同数据合并单元格合并单元格,Javascript合并表格中具有相同内容单元格示例...
  17. Sklearn_LearningCurve
  18. PHp网站建设,期末大作业-海贼王主题【包含前后台】
  19. ASO优化|标题、描述、关键词的最优策略
  20. Java利用dom4j解析XML任意节点和属性

热门文章

  1. 服务器远程管理卡使用--自用
  2. 《系统架构设计师教程》 第二章:计算机与网络基础知识
  3. 基于hexo搭建个人博客
  4. Vue入门(五)—— 创建主页,并配置路由
  5. 儿童护眼灯哪个品牌比较好?2022年国家认可护眼灯品牌
  6. Android各种卡死黑屏系统稳定性问题Log抓取大荟萃
  7. python中eps是什么意思_如何在中使用参数epsabsscipy.integrate.quad在Python中?
  8. AES加密原理和AOE工程实践
  9. 移动通信关键技术-多址技术和复用技术
  10. Linux非常好的一些技巧