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

news/2024/5/14 8:24:18/文章来源:https://blog.csdn.net/weixin_33770878/article/details/92656598

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

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

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

相关文章

仿站小工具(获取网站源资源)

仿站小工具 仿站小工具是通过网址下载静态网页的工具。从输入的网址下载html代码,提取出JS、Css、Image、Picture、Flash等静态文件网址,再从下载完好的Css代码中提取出Image静态文件网址,通过网址下载静态文件,根据软件设置好的…

系统项目发布网站

自己做好了一个系统项目后,可以让第二个人随时随地访问,就需要将项目发布到网站上,web端, 1.在VS2012中打开自己的项目,选中项目,右键-发布网站 2. 弹出窗口“发布网站”,“目标位置”&#xf…

安装IIS8.0,ASP以及相关配置,网站搭建

第一大步,请参照这个链接 https://blog.csdn.net/lq18804095672/article/details/106541099 第二大步,在服务器123上,安装IIS8.0 1.找到“服务器管理器”,点击“添加角色和功能”, 2.“添加角色和功能向导”窗口&…

解决网站无法复制文字

1、以360浏览器为例 2、打开一个正常的网页,右键----审查元素 3、在地址栏中输入无法复制内容的网址,即可对所选文件进行指向,然后复制了 以上方法可以复制一段文字,如果要想快速复制整篇,采用如下方法,选…

USBWebserver(网站架设工具)

USBWebserver是一款免费的电脑网站架设工具。该软件可以让用户快速搭建PHP Version、Apache、PhpMyAdmin、MySQL等网站运行必备的主机套件,让你轻轻松松构架自己的网站。 USBWebserver 是款非常好用的一键式本地电脑快速架设PHP网站环境的工具 USBWebserver集成了Ap…

nginx服务器的网站权限问题

有时候我们的网站根目录会从一个目录迁移到另一个目录,如果我们服务器使用的是nginx或者Apache,我们一般会配置好网站根目录后然后往直接把网站解压或者上传到根目录中,这样引起的问题是无法对对文件进行任何的操作导致网站的异常&#xff0c…

网站统计51LA数据引用功能详解及添加方法

新版51啦于2018年6月20日上线数据引用功能!新手站长网来说说数据引用功能的介绍以及使用方法: 什么是数据引用功能?51la数据引用简单来讲,就是把你网站的实时在线人数,今天访问量、昨天访问量、本月访问量、本月总访问…

Chrome68将所有HTTP网站标记为不安全!你的网站HTTPS了吗?

为了使网络更加安全,让更多的互联网用户使用其 Chrome 浏览器,Google 宣布,未来的 Chrome 版本将把所有的 HTTP 网站标记为“不安全(non-secure)”。Chrome68将所有HTTP网站标记为不安全Chrome68在7月将自动标记HTTP为…

阿里云网站域名备案流程全过程(图文讲解)

阿里云网站备案备案很简单,阿里云有专门的备案客服,整个备案过程阿里云百科网分成三部分:备案前提备案中信息填写和材料提交备案等待,阿里云百科网图文讲解阿里云域名备案全过程: 备案前提 网站备案前提准备&#xf…

网站域名备案密码的获取方法

什么是备案密码?备案密码是工信部给的,每个ICP备案号都有一个由工信部颁发的专属密码,备案君分享备案密码的获取方法: 什么是备案密码? 每个ICP备案号都有一个由工信部颁发的专属密码,解铃还须系铃人&…

阿里云服务器新手教程从选配到网站上线全过程

阿里云服务器新手教程从云服务器选配购买、云服务器配置到网站上线全过程,阿里云服务器如何购买?购买后如何使用?新手站长抽时间写了一篇详细的阿里云服务器新手教程,从云服务器选配到网站上线全过程: 阿里云服务器新…

腾讯云服务器安装WordPress网站博客菜鸟教程

WordPress博客网站基于PHP语言,腾讯云服务器安装WordPress所需PHP、MySQL环境,服务器系统无论是Windows还是Linux均可安装WordPress,新手站长网来详细说下使用腾讯云服务器搭建WordPress网站博客菜鸟入门教程: 腾讯云服务器安装W…

使用腾讯云服务器安装WordPress网站图文教程(2步搞定)

腾讯云服务器安装WordPress博客网站教程,腾讯云百科使用Linux镜像系统,先安装宝塔面板搭建LNMP环境,然后在宝塔面板上安装WordPress博客程序,腾讯云百科来详细会说下腾讯云服务器安装WordPress图文教程(2步搞定&#x…

腾讯云2核4G服务器搭建网站支持多少人同时在线?3M带宽并发数计算

腾讯云服务器2核4G3M带宽搭建网站,可以支持多少人同时在线?网站程序不同效率不同,不仅要考虑CPU内存计算资源,还要考虑3M公网带宽速度方面,腾讯云3M带宽下载速度384KB/秒,新手站长来详细说下腾讯云2核4G3M带…

使用云服务器搭建网站选阿里云还是腾讯云?

购买云服务器用于搭建网站腾讯云和阿里云哪个更好一些?无论是阿里云还是腾讯云均提供云服务器和轻量应用服务器,如果是只需要购买一台云服务器的单机Web应用,从性价比的角度考虑,可以优先选择轻量应用服务器,新手站长网…

网站域名在腾讯云备案可以使用阿里云服务器吗?

之前在腾讯云买过云服务器,网站域名在腾讯云已经备案成功了,可以使用阿里云服务器吗?不可以,域名解析到阿里云服务器开始正常可以访问,过一会就会被阻断,需要将备案信息接入阿里云,云服务器吧来…

使用阿里云服务器安装宝塔面板搭建网站教程(图文全流程)

阿里云服务器安装宝塔面板教程,云服务器吧以阿里云Linux系统云服务器安装宝塔Linux面板为例,先配置云服务器安全组开放宝塔所需端口8888、888、80、443、20和21端口,然后执行安装宝塔面板命令脚本,最后登录宝塔后台安装LNMP&#…

阿里云建站云企业官网标准版、高级版和尊贵版区别对比表

阿里云建站云企业官网标准版、高级版和尊贵版有什么区别?新手站长网分享阿里云建站定制云企业官网版本功能区别亮点及选择方法: 云企业官网标准版/高级版/尊贵版对比 阿里云建站云企业官网定制分为标准版、高级版和尊贵版三个版本,现在又推…

公司搭建企业官网流程域名、云服务器和建站程序

企业网站建站流程以阿里云为例,不仅提供云服务器、网站建设和域名业务,还提供公司注册及资质办理的业务,新手站长网来详细说下使用阿里云搭建企业网站的全流程,可选两套方案: 阿里云搭建企业网站全流程 本文是给初次…

腾讯云服务器快速搭建WordPress网站教程(镜像全自动安装部署)

通过腾讯云服务器的镜像市场搭建WordPress网站非常简单,不需要手动配置WP所需的Web环境,一键即可安装WordPress博客,腾讯云百科使用腾讯云服务器通过镜像市场的WordPress镜像搭建WP网站教程: 腾讯云服务器安装WordPress的方法有很…