最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • WEB网络安全

    正文概述 掘金(阿镇@吃橙子)   2021-03-20   550

           在学习网络安全之前,必须要先知道一个组织——OWASP。 OWASP是一个开源的、非盈利的全球性安全组织,致力于应用软件的安全研究。我们基于该组织公布的技术文档来学习相关网络攻击原理和预防措施,web安全的核心是——永远不要相信用户传过来的数据:

    WEB网络安全

    常见的 web 攻击方式有如下这些:

    1. google hack

    2. 网页爬虫

    3. 暴力猜解

    4. web 漏洞扫描

    5. 错误信息利用

    6. 利用服务器配置漏洞

    7. 文件上传下载

    8. 构造恶意输入(sql注入攻击、命令注入攻击、跨站脚本攻击等)

    9. http 协议攻击

    10. 拒绝服务攻击

    11. 其他攻击利用(web service、flash 、ajax 等)

    1. sql 注入攻击

    1.1 简单注入

    1. 数值型注入方式:例如我们后台有这样一个查询sql: 

    SELECT * from user_info WHERE id= 

    那么我们可以通过修改前端的值位:-1 or 1=1 来实现查询所有的数据,其中-1表示永远不可能存在的数据。

    2. 字符串注入的方式:通过注释字符实现绕道

    由于# / --通常标识注释,因此可以在输入用户名的时候加上’#,然后输入任意的密码,这样后面查询密码的sql 被注释掉,直接绕过密码校验实现登录;

    WEB网络安全 WEB网络安全

    因此要保证前后台输入框格式的绝对校验。另外严格禁止sql拼接,必须使用占位符

    2. XSS攻击

    跨站脚本攻击,是代码注入的一种,它允许恶意用户将代码注入到网页,其他用户在浏览网页时就会受到影响;将用户输入的数据当作了html语句放到了页面上执行

    2.1 反射性XSS攻击

    定义 —— 页面发出请求时,XSS代码出现在URL中,作为输入提交到服务器端,服务器端解析后响应,XSS代码随响应内容一起传回给浏览器,最后浏览器解析执行XSS代码。

    demo 如下:

    WEB网络安全

    WEB网络安全

    当访问项目时候,加上 xss 的参数就会有如下页面展示:

    WEB网络安全

    我们将 xss 的值改动一下:http://127.0.0.1:8080/tomatocc/?xss=WEB网络安全  会弹出如下的界面框,这种攻击的前提是:必须将地址中的参数在页面解析,如果不进行解析的话,那么这种攻击方式也就毫无意义。

    WEB网络安全

    这种攻击又包含三种方式:

    1. 主动攻击:上述的加img标签就是主动攻击。

    2. 引诱攻击:如果参数值为:<p onclick="alert('点我了')">点我</p>,这种引诱用户去点击的攻击,则为引诱攻击。

    3. iframe方式:如果参数值为:<iframe src="https://baidu.com/t.html"></iframe>,那么将会直接将某个网站渲染到该页面。

    2.1 存储性XSS攻击

    1. 假设这是一个交流论坛,其中一个页面中有留言的文本输入框,我们将具有攻击性的脚本写到文本框中,然后提交到服务端。(该脚本的含义表示,获取客户端的cookie,并发送到指定地址)。

    WEB网络安全

    2. 后台服务已经将我们提交的数据存储到数据库中。当其他用户在自己计算机中登陆这个网站的时候,服务端会将我们之前写入具有攻击性的XSS脚本留言渲染到HTML页面,从而将该用户页面中的cookie信息发送到我们预留的网站中。

    3.接下来,我们就可以用这个人的cookie信息在该网站中“替代”他进行一系列的操作;一个简单的存储型XSS攻击(cookie欺骗)就完成。

    针对js获取cookie的解决方案:在cookie中设置了HttpOnly属性为true,那么通过js脚本将无法读取到cookie信息,这样能有效的防止XSS攻击

    2.3 XSS攻击的防御措施

    1. 转义html:  常用的模板引擎,如 doT.js、ejs、FreeMarker 等,对于 HTML 转义通常只有一个规则,就是把 & < > " ' / 这几个字符转义掉,确实能起到一定的 XSS 防护作用

    2. 过滤:在使用 .innerHTML.outerHTMLdocument.write() 时要特别小心,不要把不可信的数据作为 HTML 插到页面上,而应尽量使用 .textContent.setAttribute() 等。如果用 Vue或者React技术栈,并且不使用 v-html/dangerouslySetInnerHTML 功能,就在前端 render 阶段避免 innerHTMLouterHTML 的 XSS 隐患。DOM 中的内联事件监听器,如 locationonclickonerroronloadonmouseover 等,<a> 标签的 href 属性,JavaScript 的 eval()setTimeout()setInterval() 等,都能把字符串作为代码运行。如果不可信的数据拼接到字符串中传递给这些 API,很容易产生安全隐患,请务必避免。

    3.  校正:避免直接对HMTL 转义,我们需要更完善的转移策略

    WEB网络安全


    起源地下载网 » WEB网络安全

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元