大型站点技术架构(八)--站点的安全架构

大型站点技术架构(一)--大型站点架构演化

大型站点技术架构(二)--架构模式

大型站点技术架构(三)--架构核心要素

大型站点技术架构(四)--站点的高性能架构

大型站点技术架构(五)--站点高可用架构

大型站点技术架构(六)--站点的伸缩性架构

大型站点技术架构(七)--站点的可扩展性架构

从互联网诞生起,安全威胁就一直伴随着站点的发展,各种Web攻击和信息泄露也从未停止。常见的攻击手段有XSS攻击、SQL注入、CSRF、Session劫持等。

1、XSS攻击

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

常见的XSS攻击类型有两种,一种是反射型。攻击者诱使用户点击一个嵌入恶意脚本的链接。达到攻击的目的,例如以下图所看到的:

还有一种XSS攻击是持久型XSS攻击,黑客提交含有恶意脚本的请求。保存在被攻击的Web网站的数据库中,用户浏览网页时,恶意脚本被包括在正常页面中,达到攻击的目的,例如以下图所看到的:

消毒

对某些html字符转义。如“>”转义为“&gt”等。

HttpOnly

即浏览器禁止页面javascript訪问带有HttpOnly属性的Cookie。可通过对Cookie加入HttpOnly属性,避免被攻击者利用Cookie获取用户信息。

2、注入攻击

注入攻击主要有两种形式,SQL注入攻击和OS注入攻击。SQL注入攻击的原理例如以下图所看到的。

攻击者在HTTP请求中注入恶意的SQL命令,server用请求构造数据库SQL命令时。恶意SQL被一起构造。并在数据库中执行。

除了SQL注入。攻击者还依据详细应用,注入OS命令、编程语言代码等达到攻击目的。

消毒

和防XSS攻击一样,过滤请求数据中可能注入的SQL,如"drop table"等。

另外还能够利用參数绑定来防止SQL注入。

3、CSRF攻击

CSRF即Cross Site Request Forgery 跨网站请求伪造,攻击者通过跨网站请求。以合法用户的身份进行非法操作。CSRF的主要手段是利用跨站请求,在用户不知情的情况下,以用户的身份伪造请求。

其核心是利用了浏览器Cookie或serverSession策略,盗取用户身份

表单Toke

CSRF是一个伪造用户请求的操作,所以须要构造用户请求的全部參数才干够,表单Token通过在请求參数中添加随机数的办法来组织攻击者获取全部请求參数。

验证码

更加简单高效,即请求提交时,须要用户输入验证码,以避免在用户不知情的情况下被攻击者伪造请求。

Referer Check

HTTP请求头的Referer域中记录着请求来源,可通过检查请求来源,验证其是否合法,还能够利用这个功能来实现突破防盗链。

4、WEB应用防火墙

ModSecurity是一个开源的Web应用防火墙,探測攻击并保护Web应用程序,既能够嵌入到Web应用server中。也能够作为一个独立的应用程序启动。

ModSecurity最早仅仅是Apache的一个模块,如今已经有JAVA、NET多个版本号。并支持Nginx。

ModSecurity採用处理逻辑与攻击规则集合分离的架构模式。

处理逻辑(运行引擎)负载请求和对应的拦截过滤。规则载入运行等功能。

而攻击规则集合则负责描写叙述对详细攻击的规则定义、模式识别、防御策略等功能。处理逻辑比較稳定,规则集合须要不断针对漏洞进行升级。这是一种可扩展的架构设计。

5、信息加密技术

为了保护站点的敏感数据。应用须要对某些数据进行加密处理,信息加密技术科分为三类:单向散列加密、对称加密和非对称加密

5.1单向散列加密

单向散列加密是指通过对不同输入长度的信息进行散列计算,得到固定长度的输出,这个散列计算过程是单向的。例如以下图所看到的。

单向散列加密一般主要用途是用户password的加密。使password不可逆的保存到数据库中。即便数据库信息泄露。攻击者也无法知晓原password是什么。

常见的单向散列算法有MD5、SHA等。

5.2对称加密

即加密和解密都使用同一个密钥,例如以下图所看到的:

经常使用的对称加密算法有DES算法、RC算法等。对称加密是一种传统的加密手段,也是最经常使用的加密手段。适用于大多数场合。

5.3非对称加密

非对称加密使用的加密和解密不是同一密钥。当中一个对外界公开,被成为公钥,还有一个仅仅有全部者知道。被称作私钥。用公钥加密的信息必须用私钥才干解开,反正。用私钥加密的信息仅仅实用公钥才干解开,例如以下图所看到的:

非对称加密经常使用算法有RSA等。HTTPS传输中浏览器使用的数字证书实质上是经过权威机构认证的非对称加密的公钥

时间: 2024-11-07 21:30:06

大型站点技术架构(八)--站点的安全架构的相关文章

大型站点技术架构(六)--站点的伸缩性架构

大型站点技术架构(一)--大型站点架构演化 大型站点技术架构(二)--架构模式 大型站点技术架构(三)--架构核心要素 大型站点技术架构(四)--站点的高性能架构 大型站点技术架构(五)--站点高可用架构 站点系统的伸缩性架构最重要的技术手段就是使用server集群功能.通过不断地向集群中加入server来增强整个集群的处理能力. "伸"即站点的规模和server的规模总是在不断扩大. 1.站点架构的伸缩性设计 站点的伸缩性设计能够分成两类,一类是依据功能进行物理分离实现伸缩.一类是单

大型站点技术架构(七)--站点的可扩展性架构

大型站点技术架构(一)--大型站点架构演化 大型站点技术架构(二)--架构模式 大型站点技术架构(三)--架构核心要素 大型站点技术架构(四)--站点的高性能架构 大型站点技术架构(五)--站点高可用架构 大型站点技术架构(六)--站点的伸缩性架构 扩展性是指对现有系统影响最小的情况下,系统功能可持续扩展或提升的能力. 设计站点可扩展架构的核心思想是模块化,并在此基础上,减少模块间的耦合性,提供模块的复用性.模块通过分布式部署,独立的模块部署在独立的server上(集群)从物理上分离模块之间的耦

大型站点技术架构(二)--架构模式

大型站点技术架构(一)--大型站点架构演化 每个模式描写叙述了一个在我们周围不断反复发生的问题及该问题解决方式的核心. 这样,你就能一次重新地使用该方案而不必做反复工作. 所谓站点架构模式即为了解决大型站点面临的高并发訪问.海量数据.高可靠执行灯一系列问题与挑战.为此.在实践中提出了很多解决方式,以实现站点高性能.高可靠性.易伸缩.可扩展.安全等各种技术架构目标. 1.分层 分词是企业应用系统中最常见的一种架构牧师,将系统在横向维度上切分成几个部分,每一个部分负责一部分相对简单并比較单一的职责,

《大型站点技术架构》1:概述

參考自<大型站点技术架构>第1~3章 1.大型站点架构演化发展历程 (1)初始阶段的站点架构:一台server分别作为应用.数据.文件server (2)应用服务和数据服务分离:三台server分别承担上述三项工作,当中应用server要求CPU强大.数据库server需求更快的硬盘和内存,文件server须要较大的硬盘. (3)使用缓存改善站点性能:分为本地缓存以及缓存在专门的分布式server上的远程缓存. (4)使用应用server集群改善站点的并发处理能力. (5)数据库读写分离. (

大型网站技术架构(八)--网站的安全架构

大型网站技术架构(一)--大型网站架构演化 大型网站技术架构(二)--架构模式 大型网站技术架构(三)--架构核心要素 大型网站技术架构(四)--网站的高性能架构 大型网站技术架构(五)--网站高可用架构 大型网站技术架构(六)--网站的伸缩性架构 大型网站技术架构(七)--网站的可扩展性架构 从互联网诞生起,安全威胁就一直伴随着网站的发展,各种Web攻击和信息泄露也从未停止.常见的攻击手段有XSS攻击.SQL注入.CSRF.Session劫持等. 1.XSS攻击 XSS攻击即跨站点脚本攻击(C

大型网站技术架构-入门梳理【转】

罗列了大型网站架构涉及到的概念,附上了简单说明 前言 本文是对<大型网站架构设计>(李智慧 著)一书的梳理,类似文字版的"思维导图" 全文主要围绕"性能,可用性,伸缩性,扩展性,安全"这五个要素 性能,可用性,伸缩性这几个要素基本都涉及到应用服务器,缓存服务器,存储服务器这几个方面 概述 三个纬度:演化.模式.要素 五个要素: 性能,可用性,伸缩性,扩展性,安全 演化历程 图例可参考 大型网站架构演化历程: 初始阶段的网站架构:一台服务器,上面同时拥有应

大型网站技术架构介绍--squid

一.大型网站技术架构介绍 1.pv高  ip高 并发量 2.大型网站架构重点 1. 高性能:响应时间,TPS,系统性能计数器.缓存,消息队列等. 高可用性High Availability   99.99% 7*24 2.衡量标准:假设环境中一台或者多台服务器宕机,服务是否依然可用.解决关键办法:冗余.资源定位,健康检查.负载均衡,关键服务器冗余:web DB ,及时有效的监控和报警 3.高伸缩性[高可维护性] 是否可以用多台服务器构建集群,是否容易向集群添加新的服务器,新服务是否可提供相同的服

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

目录 · 大型网站软件系统的特点 · 大型网站架构演化发展历程 · 初始阶段的网站架构 · 需求/解决问题 · 架构 · 应用服务和数据服务分离 · 需求/解决问题 · 架构 · 使用缓存改善网站性能 · 需求/解决问题 · 架构 · 使用应用服务器集群改善网站的并发处理能力 · 需求/解决问题 · 架构 · 数据库读写分离 · 需求/解决问题 · 架构 · 使用反向代理和CDN加速网站响应 · 需求/解决问题 · 架构 · 使用分布式文件系统和分布式数据库系统 · 需求/解决问题 · 架构 ·

(转)各种大型网站技术架构

引言近段时间以来,通过接触有关海量数据处理和搜索引擎的诸多技术,常常见识到不少精妙绝伦的架构图.除了每每感叹于每幅图表面上的绘制的精细之外,更为架构图背后所隐藏的设计思想所叹服.个人这两天一直在搜集各大型网站的架构设计图,一为了一饱眼福,领略各类大型网站架构设计的精彩之外,二来也可供闲时反复琢磨体会,何乐而不为呢?特此,总结整理了诸如国外wikipedia,Facebook,Yahoo!,YouTube,MySpace,Twitter,国内如优酷网等大型网站的技术架构(本文重点分析优酷网的技术架