首页 » 必应SEO » dom型xss破绽seo_逻辑马脚挖掘之XSS马脚事理分析及实战演习练习

dom型xss破绽seo_逻辑马脚挖掘之XSS马脚事理分析及实战演习练习

duote123 2024-10-27 0

扫一扫用手机浏览

文章目录 [+]

跨站脚本(Cross Site Script),为了反面层叠样式表(Cascading Style Sheets,CSS)的缩写稠浊,故将跨站脚本缩写为XSS。
跨站脚本(以下简称XSS)常日发生在客户端,攻击者在Web页面中插入恶意JavaScript代码(也包括VBScript和ActionScript代码等),用户浏览此页面时,会实行这些恶意代码,从而利用户受到攻击。

2.XSS紧张攻击形式

dom型xss破绽seo_逻辑马脚挖掘之XSS马脚事理分析及实战演习练习 dom型xss破绽seo_逻辑马脚挖掘之XSS马脚事理分析及实战演习练习 必应SEO

存储型跨站脚本攻击

攻击者利用运用程序供应的添加、修正数据功能,将恶意数据存储到做事器中,当其他用户浏览展示该数据的页面时,浏览器会实行页面嵌入的恶意脚本,从而达到恶意攻击的目的,这种攻击是持久化的。

dom型xss破绽seo_逻辑马脚挖掘之XSS马脚事理分析及实战演习练习 dom型xss破绽seo_逻辑马脚挖掘之XSS马脚事理分析及实战演习练习 必应SEO
(图片来自网络侵删)
反射型跨站脚本攻击

攻击者发送一个URL给用户并勾引其访问,浏览器会实行页面嵌入的恶意脚本,从而达到恶意攻击的目的,这种攻击只实行一次,是非持久化的。

DOM跨站脚本攻击

在Html页面中,未通过规范JavaScript直接操浸染户输入的数据,当攻击者插入一段恶意代码,在页面终极展示会实行恶意脚本,从而达到恶意攻击的目的。

3.XSS漏洞危害

信息盗取(如盗取用户cookie,假造用户身份登录)钓鱼敲诈蠕虫攻击三、XSS漏洞事理剖析

四、XSS漏洞实例剖析

1.存储型XSS

漏洞位置实在为两处,此处类似iframe嵌⼊,原url为test.jd.com,以是直接影响两个站

漏洞证明:发送如下数据包,即可插⼊存储型XSS

2.反射型XSS

输入万能语句 <script>alert()</script>后并没有弹窗,查看源码可见 <>被转义了

在input标签的value处,没有将我们输入的内容进行严格过滤,以是手动闭合value,再实行脚本 "><script>alert()</script>

五、XSS漏洞戒备见地

1.存储型和反射型 XSS

存储型和反射型 XSS 都是在做事端取出恶意代码后,插入到相应 HTML 里的,攻击者刻意编写的“数据”被内嵌到“代码”中,被浏览器所实行。
预防这两种漏洞,有两种常见做法:

1)改成纯前端渲染,把代码和数据分别隔

对 HTML 做充分转义。
浏览器先加载一个静态 HTML,此HTML 中不包含任何跟业务干系的数据。
然后浏览器实行 HTML 中的 JavaScript。
JavaScript 通过 Ajax 加载业务数据,调用 DOM API 更新到页面上。
在纯前端渲染中,我们会明确的见告浏览器:下面要设置的内容是文本(.innerText),还是属性(.setAttribute),还是样式(.style)等等。
浏览器不会被轻易的被欺骗,实行预期外的代码了。

但纯前端渲染还需把稳避免 DOM 型 XSS 漏洞(例如 onload 事宜和 href 中的 javascript:xxx 等,请参考下文”预防 DOM 型 XSS 攻击“部分)。
在很多内部、管理系统中,采取纯前端渲染是非常得当的。
但对付性能哀求高,或有 SEO 需求的页面,我们仍旧要面对拼接 HTML 的问题。

2)转义 HTML

如果拼接 HTML 是必要的,就须要采取得当的转义库,对 HTML 模板各处插入点进行充分的转义。

常用的模板引擎,如 doT.js、ejs、FreeMarker 等,对付 HTML 转义常日只有一个规则,便是把 & < >

" ’ / 这几个字符转义掉.

2.预防 DOM 型 XSS 攻击

DOM 型 XSS 攻击,实际上便是网站前端 JavaScript 代码本身不足严谨,把不可信的数据当作代码实行了。

在利用 .innerHTML、.outerHTML、document.write() 时要特殊小心,不要把不可信的数据作为 HTML 插到页面上,而应只管即便利用 .textContent、.setAttribute() 等。

如果用 Vue/React 技能栈,并且不该用 v-html/dangerouslySetInnerHTML 功能,就在前端 render 阶段避免 innerHTML、outerHTML 的 XSS 隐患。

DOM 中的内联事宜监听器,如 location、onclick、onerror、onload、onmouseover 等,a 标签的 href 属性,JavaScript 的 eval()、setTimeout()、setInterval() 等,都能把字符串作为代码运行。
如果不可信的数据拼接到字符串中通报给这些 API,很随意马虎产生安全隐患,请务必避免。


3.其他 XSS 戒备方法

虽然在渲染页面和实行 JavaScript 时,通过谨慎的转义可以防止 XSS 的发生,但完备依赖开拓的谨慎仍旧是不足的。
以下先容一些通用的方案,可以降落 XSS 带来的风险和后果。

1)Content Security Policy

严格的 CSP 在 XSS 的戒备中可以起到以下的浸染:

禁止加载外域代码,防止繁芜的攻击逻辑。

禁止外域提交,网站被攻击后,用户的数据不会透露到外域。

禁止内联脚本实行(规则较严格,目前创造 GitHub 利用)。

禁止未授权的脚本实行(新特性,Google Map 移动版在利用)。

合理利用上报可以及时创造 XSS,利于尽快修复问题。

关于 CSP 的详情,请关注前端安全系列后续的文章。

2)输入内容长度掌握

对付不受信赖的输入,都该当限定一个合理的长度。
虽然无法完备防止 XSS 发生,但可以增加 XSS 攻击的难度。

3)其他安全方法

HTTP-only Cookie: 禁止 JavaScript 读取某些敏感 Cookie,攻击者完成 XSS 注入后也无法盗取此Cookie。

作者:京东物流 范文君来源:京东云开拓者社区 自猿其说 Tech 转载请注明来源

标签:

相关文章

视频设计网站,介绍视觉盛宴的创意之门

在数字媒体迅猛发展的今天,视频已经成为传递信息、展现创意的重要载体。而视频设计网站,正是这个时代赋予我们的宝藏,它不仅为创作者提供...

必应SEO 2024-12-09 阅读0 评论0

视频设计网站,新媒体时代下的创意汇聚地

随着新媒体时代的到来,短视频、直播等新兴媒介形式迅速崛起,人们获取信息、娱乐休闲的方式发生了翻天覆地的变化。在这个时代背景下,视频...

必应SEO 2024-12-09 阅读0 评论0

解码上海,三字母代码背后的城市活力

上海,这座充满活力与魅力的国际化大都市,拥有着丰富的历史底蕴和独特的城市文化。在我国的城市代码中,上海被赋予了一个独特的三字母代码...

必应SEO 2024-12-09 阅读0 评论0