Google.or *** 击劫持DOM XSS-黑客接单平台

访客5年前黑客资讯1309
谷歌有一个项目信任许多人或许都没听过,那便是谷歌危机地图(Google Crisis Map)。 该项目旨在协助人们能够快速的查找和运用一些要害的应急信息(来历)。 尽管它现在仍在运用,但它好像运用的人并不多。 由于这是一个较老的项目(创立于2012年)且很长一段时间没有更新,因而能够说这是一个查找缝隙的绝佳方针。 它被保管在google.org域,该域的严峻程度虽不如google.com(针对客户端缝隙),但它依然是Google所具有的域名。 登录 假如你翻开项目的主页(google.org/crisi *** ap),你将被重定向到默许地图“气候和事情”。这对咱们来说含义不大,由于咱们仅有能做的便是查看地图。 这里有一种能够办理和创立新地图的办法。假如咱们在网址结尾添加.maps后缀,如:google.org/crisi *** ap/.maps 翻开此页面后,你需求运用自己的Google帐户登录才干持续。现在,你应该能够看到一个带有地图列表的仪表板。每个帐户都有三个默许地图。 出于某种原因,假如你在自己的域上发布其间的一个地图,则所有人都能在仪表板的“已发布地图”字段下看到该地图。 创立地图 假如单击赤色的“Create Map”按钮,你会看到一条音讯显现,gmail.com域不能用于创立新地图。 这意味着咱们需求运用包括咱们自定义域的电子邮件进行登录。咱们能够经过运用GSuite帐户,或运用gmail.com以外域的电子邮件登录来履行该操作。之后,咱们就能够创立一个新地图了。 单击“Continue”按钮后,咱们将被重定向到咱们能够修正新创立地图的页面。 查找 XSS 首要,咱们将向地图添加一个新图层。 将会弹出用于创立新图层的弹框。 输入恣意内容作为“Title”。 现在,假如咱们在“Source URL”字段中输入javascript:alert(document.domain),它将显现一个过错: Invalid URL – please include a protocol (e.g. http:// or https://) 这意味着它会在答应你保存新图层之前查看URL是否有用。验证URL的反混杂javascript代码如下所示: if (url && !url.toLowerCase().match("^s*(http://|https://|docs://|$)")) { showError("Invalid URL - please include a protocol (e.g. http:// or https://)"); } 但这只是在将实践保存恳求发送到后端之前的客户端验证。 修正恳求 咱们能够运用像Fiddler或Burp Suite这样的Web调试署理,来修正恳求并发送修正后的版别。 首要,咱们需求将“Source URL”更改为有用的URL,例如https://example.com。 咱们单击“OK”按钮并单击“Save”以发送保存恳求。然后咱们将修正恳求。恳求如下: POST https://google.org/crisi *** ap/.api/maps/1234 { "id": "1234", "title": "Untitled map", "base_map_type": "GOOGLE_ROADMAP", "layers": [{ "id": "1", "title": "Test layer", "visibility": "DEFAULT_ON", "type": "KML", "source": { "kml": { "url": "https://example.com" } } }] } 咱们将用javascript:alert(document.domain)替换https://example.com,并发送修正后的恳求。 测验 XSS 现在恳求已发送并保存,因而让咱们从头加载页面。 翻开“Layers”,然后单击“Download KML”。 点击下载链接后,XSS将被触发,并弹出带有域的正告框! 怎么修正 为什么会这样?URL验证仅发作在前端而不是后端。这意味着能够经过验证后端的URL来处理这个问题。 但谷歌并没有这么做。而是在URL保存到后端时查看URL,显现在DOM中前URL已被验证。 因而,假如URL无效,则不会将其用作链接,并将运用一个无含义的值,如:about:invalid替代。 a href="about:invalid#zClosurez">Download KMLa> 影响 好的,现在咱们有一个包括payload指向javascript: URI的链接。该链接坐落用于办理地图的页面上。你有必要登录才干获取该页面的拜访权限。 明显这是self-XSS,由于只要咱们能够履行该XSS。 现在,咱们要做的便是怎么将self-XSS变成真实的有影响的XSS? 添加严峻性 咱们创立的每张地图都能够发布供公众查看。假如你经过包括域example.com的电子邮件登录,则能够将地图发布到:http://google.org/crisi *** ap/example.com/test。 这样,任何人都能够翻开此URL并查看咱们创立的地图。想要使XSS正常作业,用户需求翻开或导航到此页面,翻开“Layers”并单击“Download KML”链接。 这意味着它已不再是self-XSS,但缺陷是这需求用户操作的过程过多。 点击绑架 假如咱们查看HTTP呼应头,能够看到google.org并未发送X-Frame-Options标头。 X-Frame-Options HTTP 呼应头是用来给浏览器指示答应一个页面可否在e>, , 或许 中展示的符号。站点能够经过保证网站没有被嵌入到他人的站点里边,然后防止clickjacking进犯。 google.org上短少该标头,则意味着咱们能够将已发布的地图嵌入到咱们自己网站上的iframe中。 iframe src="https://google.org/crisi *** ap/example.com/test">iframe> 如下所示。用户现在乃至不需求脱离咱们的站点。但仍需求用户点击iframe中的两个方位(“layers”>“download kml”)。 iframe在咱们的网站上被加载 – 这意味着咱们能够运用CSS和JavaScript来操作它。 我想到的榜首件事,便是将黑色的DIV放置在咱们期望用户点击的方位。然后检测单击事情并将DIV移动到第二个点。 这很有用,但仍需求用户点击两个不同的方位。 但有个更好的方案便是肯定定位iframe,这样用户就不用移动光标了。 以下演示咱们将iframe缩放了50倍,并将其移动了到咱们期望用户单击的方位。首要转到“Layers”选项卡。点击后,它会在带有payload的链路上移动。 你能够经过鄙人面的iframe中单击两次来测验该示例: 总结 不要信任用户输入。在运用它之前一定要验证/转义它,乃至在保存它之前更好查看它是否有用。 经过正确设置X-Frame-Options标头,不答应其他域将你的网站嵌入iframe。 在查找缝隙时,请测验找到该缝隙或许的更高严峻性。 例如,假如你找到一个XSS,请测验经过查找过错装备的Cookie或端点接收帐户。 寻觅依然合适bug奖赏方案规模的旧项目。我在谷歌危机地图上发现了别的两个缝隙,后续我也会发布有关它们的文章。

相关文章

所见非所得: 浅析同形异义词攻击及案例分析-黑客接单平台

自从 ICANN 二十多年前在域名(称为国际化域名或简称 IDN)中引进Unicode 以来,一系列全新的安全问题也随之浮出水面,一起还或许运用不同的字母和Unicode 字符注册域名。 在研讨依据同...

免费黑客接单网,找一部电脑黑客的网络小说,去哪里找网络黑客

其他能够修正该问题的当地便是浏览器,浏览器厂商能够完成各式各样的“DNS桩”,这使得在网页被彻底加载后它能疏忽DNS的改动。 或许浏览器厂商能够增加Redis和Memcached端口号到他们的堵塞端口...

黑客定位手机接单一般多少钱,如何找真正黑客,怎么找黑客黑别人QQ

经过剖析,一条典型的遥控操控数据如下(图16)所示(最新版别固件和稍旧版别的固件协议,格局略有不同):CredCrack这款东西运用python言语开发,这个快速快捷的东西可以协助研究人员直接从方针体...

黑客qq群_游戏发展国怎么找黑客-网络黑客哪里找哦

接下来,咱们运用metasploit 和 beef 东西,使用xp下的ie缝隙拿shell原文链接:设置burp suite,敞开署理,如图4。...

黑客接单菠菜_武汉的黑客怎么找

· 俄罗斯联邦核中心的科学家将核武器实验室用于模仿聚变反应的计算机用于加密钱银挖矿而被捕。 for (int i = 0; i git clone https://github.com/aflsma...

为什么曾经深爱的老婆跟我分手,是因为我赌博的伤

我使用的复现环境是:https://pivotal.io/security/cve-2019-3799192.168.123.62为什么曾经深爱的老婆跟我分手,是因为我赌博的伤, Unit 42安全研...