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

news/2024/5/21 5:39:31/文章来源:https://blog.csdn.net/weixin_33882443/article/details/92649135

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

  从互联网诞生起,安全威胁就一直伴随着网站的发展,各种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命令,服务器用请求构造数据库SQL命令时,恶意SQL被一起构造,并在数据库中运行。

 

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

 

消毒

和防XSS攻击一样,过滤请求数据中可能注入的SQL,如"drop table"等。另外还可以利用参数绑定来防止SQL注入。

3、CSRF攻击

CSRF即Cross Site Request Forgery 跨站点请求伪造,攻击者通过跨站点请求,以合法用户的身份进行非法操作。CSRF的主要手段是利用跨站请求,在用户不知情的情况下,以用户的身份伪造请求。其核心是利用了浏览器Cookie或服务器Session策略,盗取用户身份

 

表单Toke

       CSRF是一个伪造用户请求的操作,所以需要构造用户请求的所有参数才可以,表单Token通过在请求参数中增加随机数的办法来组织攻击者获取所有请求参数。

验证码

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

Referer Check

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

4、WEB应用防火墙

        ModSecurity是一个开源的Web应用防火墙,探测攻击并保护Web应用程序,既可以嵌入到Web应用服务器中,也可以作为一个独立的应用程序启动。ModSecurity最早只是Apache的一个模块,现在已经有JAVA、NET多个版本,并支持Nginx。

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

 

 

5、信息加密技术

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

5.1单向散列加密

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

 

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

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

5.2对称加密

即加密和解密都使用同一个密钥,如下图所示:

 

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

 

5.3非对称加密

非对称加密使用的加密和解密不是同一密钥,其中一个对外界公开,被成为公钥,另一个只有所有者知道,被称作私钥。用公钥加密的信息必须用私钥才能解开,反正,用私钥加密的信息只有用公钥才能解开,如下图所示:

 

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

转载于:https://my.oschina.net/zhanghaiyang/blog/594702

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_778735.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

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

2019独角兽企业重金招聘Python工程师标准>>> 网站性能是客观的指标,可以具体体现到响应时间、吞吐量、并发数、性能计数器等技术指标。 1、性能测试指标 1.1 响应时间 指应用执行一个操作需要的时间,指从发出请求到最后收到响应数据所需要的时…

WF4.0实战(十七):实现自动访问网站机器人

概述篇 用WF4.0实现自动访问’机器人’,听起来有点不可思议。还是老方式,看效果,在讲述一下如何实现,最后总结,附代码下载。 这篇文章用这个’机器人’玩转了一回博客园。包括:机器人登录,机器人回帖&#…

Hexo-SEO搜索引擎优化(sitemap)

一、提交站点地图的作用 假如你在百度上搜索信息:hexo(sakura)博客: 会返回n多条搜索结果,来源于不同的平台推送,但是每条结果都会有不同的匹配度,按搜索引擎排序规则进行排序。 作为站长&am…

hexo美化(豆瓣阅读、电影、常用网站搜索页)

文章目录1.增加豆瓣阅读、电影分享页1.1预览1.2装配2.增加常用网站搜索页2.1预览2.2装配1.增加豆瓣阅读、电影分享页 1.1预览 阅读: 电影: 1.2装配 我现在用的butterfly是支持hexo-douban插件的,所以直接使用就好了。 在豆瓣注册一个账…

八大免费SSL证书-给你的网站免费添加Https安全加密

https://www.freehao123.com/top-8-free-ssl-cert/ https://www.freehao123.com/top-8-free-ssl-cert/ https://www.freehao123.com/top-8-free-ssl-cert/ 八大免费SSL证书-给你的网站免费添加Https安全加密 SSL证书,用于加密HTTP协议,也就是HTTPS。…

如何申请https证书、搭建https网站

如何申请https证书、搭建https网站 https://freessl.wosign.com/https-web.html https://freessl.wosign.com/https-web.html https://freessl.wosign.com/https-web.html 随着国内搜索引擎巨头百度启用全站https加密服务,全国掀起了网站https加密浪潮。越来越多…

SSL证书是否影响网速和网站访问速度

http://globalsign.baijia.baidu.com/article/188567 http://globalsign.baijia.baidu.com/article/188567http://globalsign.baijia.baidu.com/article/188567SSL证书是否影响网速和网站访问速度 GlobalSign数字证书 10月10日 10:50https ssl 网速 分类 :互联网阅读:423 还有…

20 个免费的网站设计模板

为什么80%的码农都做不了架构师?>>> 1. Download Free Photoshop PSD Template 2. Magnate: Professional Website PSD Template 3. Free Website Template PSD 4. Landing Page Free PSD 5. Web layout psd html FREE 6. Free PSD Website Template fo…

20个免费为您的网站和博客提供的音频播放器

文章转载 http://www.iteye.com/topic/797728 之前,我为大家准备了 21个为您的网站和博客提供的免费视频播放器,在本文中我爱互联网将给您提供一些免费的在线音频播放器,在线音频播放器允许任何人在他们的站点和博客上添加,比如常…

20个免费为您的网站和博客提供的音频播放器

文章转载 http://www.iteye.com/topic/797728 之前,我为大家准备了 21个为您的网站和博客提供的免费视频播放器,在本文中我爱互联网将给您提供一些免费的在线音频播放器,在线音频播放器允许任何人在他们的站点和博客上添加,比如常…

美女SEO系列八:何为目标关键词?

大家好,我是实名网络营销团队的美女SEO周珍,昨天我和大家分享的是《美女SEO系列七:什么是长尾关键词》的文章。那么今天我继续来为大家分享的是,关于目标关键词的内容,欢迎大家的踊跃围观,谢谢。 一、何为目…

使用Hexo搭建个人博客网站-01-安装Node.js

一、检查 Node.js 在电脑桌面上或其他任何位置右击 Git Bash Here,输入:node -v。 如果电脑上还没有安装 Node.js,显示将会如下图所示: 提示出错,主要是由于我们还没有安装 Node.js 的原因,则需要按照后面…

使用Hexo搭建个人博客网站-02-安装Hexo

一、检查 Hexo 在电脑桌面上或其他任何位置右击 Git Bash Here,输入:hexo version。 如果电脑上还没有安装 Hexo,显示将会如下图所示: 提示出错,主要是由于我们还没有安装 Hexo 的原因,则需要按照后面的步…

使用Hexo搭建个人博客网站-03-创建并测试本地Hexo仓库

一、选择路径 在电脑上任意选择一个自己觉得合适的位置,用来存放本地 Hexo 仓库。 我这里就选择电脑 D 盘根目录作为存放路径。 二、确定名称 我们还需要取个名称,用来存放本地 Hexo 仓库,按理说这个名称也是可以用户自己任意起的。 这里我…

使用Hexo搭建个人博客网站-04-将本地Hexo仓库部署到GitHub Pages上

一、创建 GitHub 远程仓库 仓库名称必须要遵守格式:账户名.github.io,并且必须勾选 Initialize this repository with a README。如下图所示: 点击 Create repository,创建仓库。 创建完成后,网页会跳到如下图所示界…

使用Hexo搭建个人博客网站-06-解析并绑定域名

假设大家已经拥有了可以用来绑定我们个人网站的域名。 一、测试域名 我之前在阿里云上买了一个域名:oceanwang.top,后面我会用来解析和绑定。这边先尝试用浏览器去访问一下,验证一下确实是还没有被使用过。结果如下图所示: 浏览…

使用Hexo搭建个人博客网站-07-解析www域名

零、序 前面我们在完成域名解析和绑定之后,已经够可以成功访问域名了,但是却发现如果在域名前面加上 www 之后,竟然不能访问了,以我自己的域名为例:oceanwang.top 是可以正常访问的,但是 www.oceanwang.to…

使用Hexo搭建个人博客网站-05-个人网站更换Hexo主题

零、序 我们既然已经搭建好了我们的个人网站,接下来就该做写有意思点的事情了,比如:给我们的个人网站换个主题! 最开始 hexo init 的时候,默认下载安装的主题是 landscape,如下图所示: 我们也…

打破思维断层之KMP分析 - wsc - ITeye技术网站

打破思维断层之KMP分析 - wsc - ITeye技术网站打破思维断层之KMP分析 博客分类:算法分析kmp算法思维断层 KMP目的:本博客以KMP算法为载体,试图在减少思维断层情况下学习作者算法思想。目录:1)开脑之字符匹配思路2&…

新功能!从 Dropbox 部署到 Windows Azure 网站

目前,有许多选项可用于将源代码发布到 Windows Azure 网站。例如,您可以从 Visual Studio 或 Web Matrix 等开发工具进行发布,从计算机上的本地 Git 存储库发布代码,甚至可以从 TeamFoundation Service、GitHub、CodePlex 或 Bitb…