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

news/2024/5/13 14:25:22/文章来源:https://blog.csdn.net/weixin_33958585/article/details/92656095

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/595627

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

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

相关文章

nginx 学习记录:IP+端口号配置网站、隐藏端口号、自签名证书配置Https、强制Https、自定义404...

2019独角兽企业重金招聘Python工程师标准>>> 几点心得 1. 如果没有显式声明 default server 则第一个 server 会被隐式的设为 default server 1. 443后面一定要加ssl,不然http会被重定向到https 1. 静态资源在上游服务器上,而不是当前nginx直接提供学习环…

大型分布式网站架构设计--第1章 面向服务体系的架构

本章目录: 分布式Java应用图: 分布式Java应用:大型系统会被拆分成多个子系统来实现,对于Java来说,这些子系统可能部署在同一台机器上不同的JVM,或者部署在不同机器上,但是这些子系统之间要进行…

ASP.NET网站发布到IIS后验证码不能显示与IIS模式

在VS2012上调试运行都正常,把网站部署到IIS后,登陆界面的验证码不能显示了(验证码是通过另一个页面嵌入到登陆页面上的),在网上看到了好多解决方案,启用父路径,验证码的路径问题,登陆…

如何在电脑上测试手机网站(全)

最近公司要开发网站的移动版,让我准备准备知识,话说本人开发移动网站的经验还真不多,最悲剧的事情就是我的手机是个经典的诺基亚,而且公司还不给配手机,这是有多讨厌,没办法,没有手机只能用电脑…

基于WordPress搭建个人网站

文章目录阿里云服务器域名申请和备案安装Xshell和Xftp下载安装安装宝塔面板网站部署忘记密码欢迎来我的小站溜溜弯: life.yuweizhang.top 阿里云服务器 1.登录阿里云服务器官网,然后进行注册, 实名认证(如果是学生可以进行学生认证&#xff…

lnmp如何设置二级域名并绑定网站

1. 解析二级域名 我用的是阿里云esc,直接找到域名解析这个页面,然后添加下你要解析的二级域名前面的字母,我的是music,这个可以根据自己的需求来起。 2. 测试二级域名是否成功解析 这个我们直接用万能的ping来测试一下就好了&…

卢松松:SEO 3.0其实早就不是新鲜事

何为SEO3.0? SEO1.0:是否有好的内容? SEO2.0:是否有较高的权重? SEO3.0:是否满足用户需求? 从去年开始陆续看到国内外的SEO专家在谈SEO 3.0,大多的意思都是指SEO以内容为基础去提供使用者最佳的使用经验,我们来…

中秋国庆长假,SEO你在坚持吗?

中秋国庆长假,举国同庆,无数人准备了丰富的游玩和放松计划,苦逼的SEO们,你们又在干嘛呢,在坚持自己的这份爱好么?还是和好多人一样,拼命的去挤下这拥堵的马路,上无数商家设下的购物陷…

SEO职业生涯规划的参考意见

步入SEO行业的人都有一个梦想,都是依靠SEO技术去赚钱。然而笔者观察了附件很多朋友,其中不乏有SEO界大牛人物,其已经利用SEO赚到了钱,也依靠SEO工作维持自己的生活;但也有一些SEO爱好者,他学过SEO&#xff…

中国联通网上营业厅,12306式的网站?

就在今日下午,笔者登陆联通网上营业厅办理套餐变更业务时,发现了下图一个“迷魂阵”似的矩阵,笔者顿时眩晕,不知道点击何处,作为读者的你们,你们看到下图觉得我办理66元A套餐该点击哪里? 于是我发了一条微…

公网ip访问服务器网站(博客)

本博客是关于如何用服务器的公网ip访问在服务器搭建好的网站,本人是在用xampp wordpress搭建博客时,用公网ip无法访问博客,在网上找了很多博客,试了很多方法,还是没有解决,最终无奈,只能想服务…

android混淆 网站,android混淆-关于依赖第三方库

之前写过关于打包混淆的一个帖子《android项目混淆打包注意事项》,它介绍的是对第三方jar包进行混淆,基本上可以解决混淆问题了。还不知道的,可以去看看,地址在这:http://my.eoe.cn/smile_it/archive/3820.html。现在的…

html5手机网站需要加的那些meta/link标签,html5 meta全解

一、大众机型常用meta标签name的设置 1、name之viewport <meta name"viewport" content""> 说明&#xff1a;屏幕的缩放 content的几个属性&#xff1a; width viewport的宽度[device-width | pixel_value]width如果直接设置pixel_value数值&a…

我国十大盗版网站:百度占前三

日前&#xff0c;国务院发展研究中心所属中国企业评价协会在北京召开新闻发布会&#xff0c;发布了《知识产权白皮书出版业》。“白皮书”中称&#xff0c;目前我国网络数字化盗版严重&#xff0c;搜索引擎成为盗版内容的重要出口&#xff0c;其中百度、百度贴吧和百度文库成为…

8 个接私活的网站

code小生 一个专注大前端领域的技术平台公众号回复Android加入安卓技术群2019互联网圈不好混&#xff0c;不是每个公司都能像腾讯云每人一部iPhone 11&#xff0c;不少公司今年已经没了年终奖&#xff0c;不要抱怨&#xff0c;因为有的小伙伴估计工作都没了。师长今天给大家推荐…

linq版本E-Commerce网站示例

在家把E-Commerce的代码换成了linq版本的,代码量少了很多,看来做的工作越来越少,程序员的工资又要跌了...代码不保证全部正确,只用于学习,需要的可以看看,运行环境当然是.net3.5了...值得注意的是,当表关系不存在一对一或多对多的时候,你还是需要手动创建实体.如购物车和产品两…

精选了国内外 6 个接私活的网站,供大家赚钱!

code小生 一个专注大前端领域的技术平台公众号回复Android加入安卓技术群本文来自公众号&#xff1a;GitHubDaily整理&#xff1a;起笔文章会向大家推荐国内外几个接外包比较靠谱的平台&#xff0c;主旨是贵精不贵多。因此&#xff0c;像「猪x戒」这种会让程序员自贬身价&#…

FineUI asp.net Web应用网站实例Demo

这是一个WEB应用平台的DEMO示例&#xff0c;基于C#的asp.net环境&#xff0c;选用FineUI为前端&#xff0c; 对后端SQLserver数据库的操控是使用微软的EntityFrameWork框架和面向对象的LINQ语法&#xff0c; 我使用这个平台组合已经有一段时间了&#xff0c;它经历了2次小的项…

做一个战役地图动态展示的网站

2019年末&#xff0c;无意间发现了一本2013年的架空历史军事穿越小说《晚明》&#xff0c;作者 柯山梦 。 故事背景发生在天启七年&#xff08;1627&#xff09;元月&#xff0c;走过259年的明王朝内忧外患&#xff0c;大乱将起。就在此时&#xff0c;一个脸皮极厚的办公室主任…

SAP APO 帮助的网站

https://help.sap.com/viewer/c95f1f0dcd9549628efa8d7d653da63e/7.0.4/en-US/cb09c4530b29b44ce10000000a174cb4.html