我们已经准备好了,你呢?

2024我们与您携手共赢,为您的企业形象保驾护航!

解析PHP源码_php url 解析_解析几何

一、概述

服务器未能对传入的跳转URL变量进行检查和控制,可能会导致恶意用户构造恶意地址,诱导用户跳转到恶意网站。 跳转漏洞一般用于钓鱼攻击,诱骗用户输入用户名和密码,通过跳转到恶意网站窃取用户信息,或者欺骗用户进行金钱交易; 它们还可能导致 XSS 漏洞。

常见可能导致漏洞的参数名称,,,url,jump,,,to,link,,

定义:使用未经验证的URL跳转,将应用程序定向到不安全的第三方区域,导致安全问题。

常见发生URL跳转的地方(即出现漏洞的地方)

2. URL跳转漏洞原理

黑客利用URL跳转漏洞诱导安全意识较低的用户点击,导致用户信息泄露或资金损失。 其原理是黑客建立恶意链接(链接需要伪装成尽可能容易混淆)并发布到浏览量较高的QQ群或贴吧/论坛中。 安全意识较低的用户点击后,经服务器或浏览器解析后会跳转到恶意网站。

解析几何_解析PHP源码_php url 解析

恶意链接需要伪装。 一种常见的做法是在熟悉的链接后面添加恶意 URL 来迷惑用户。

例如,如果一个URL被伪装成如下所示,你能将其识别为恶意URL吗?

http://gate.baidu.com/index?act=go&url=http://t.cn/RVTatrd
http://qt.qq.com/safecheck.html?flag=1&url=http://t.cn/RVTatrd
http://tieba.baidu.com/f/user/passport?jumpUrl=http://t.cn/RVTatrd

三、攻击方式及危害

恶意用户完全可以利用URL跳转漏洞来欺骗安全意识较低的用户,导致“中奖”等诈骗行为。 这对于淘宝等一些拥有线上业务的企业来说是非常有害的。 同时,借助URL跳转,还可以突破一些常见的基于“白名单方式”的安全限制。 例如,传统IM会对URL的传输进行安全验证,但大公司的域名和URL会直接允许通过,并显示可信的URL。 一旦URL包含一些跳转漏洞,就有可能绕过安全限制。

如果依靠“白名单方式”对某些资源的引用进行限制,也有可能被绕过而带来安全风险。 例如,一些常见的应用程序允许引入受信任的站点,例如视频。 限制的方法往往是检查URL是否实现。 如果包含URL跳转漏洞,将导致最终引入的资源属于不受信任的第三方资源或恶意站点,最终导致安全问题。

四、实施方法

通过GET或POST接收要跳转的URL,然后通过上述方法之一跳转到目标URL。 一方面,由于用户的输入会进入Meta、HTTP ,因此可能会出现相应的上下文漏洞,例如服务器从可信站点定向到不可信站点。 同时,如果跳转中包含敏感数据,则可能会将敏感数据泄露给不可信的第三方。

这里我们举一个例子来说明如何实现跳转:

如果没有限制,那么恶意用户可以提交:

http://www.wooyun.org/login.php?jumpto=http://www.evil.com

自己生成恶意链接,安全意识较低的用户很可能会认为链接中显示的内容是欺诈性的,而且由于QQ、淘宝旺旺等在线即时通讯是基于URL过滤的,一些网站会通过将恶意URL列入白名单可以在 IM 中传播,造成伤害。 例如,IM 会认为它们是可信的,但点击 IM 中的上述链接将导致用户最终访问恶意 URL。

5.绕过URL跳转限制

1. 使用? 绕过限制的数量

例如:://

这是一个跳转链接,跳转到其二级域名。 那么我可以在哪里放置这个问号来绕过它呢? 其实就是放在自己的域名前面,也就是你添加的要跳转到的域名后面,比如:://?。 它实际上会跳转到这个域名。 这个域名是我要跳转的任意域名,后面必须包含它自己的域名。 如果不包含的话就无法协助问号了? 该功能用于跳转到指定域名,跳转后问号以及问号后面的内容会变成这样:

2.使用反斜杠和正斜杠绕过限制

例如::/// 也是在自己的域名后面加上正斜杠,然后在正斜杠前面加上你要跳转到的域名地址,如::///

可以通过三种方式来思考反斜杠

①两个反斜杠绕过方法

例如::///也是在自己的域名后面加上两个反斜杠,然后两个反斜杠后面就是你要跳转到的域名地址。

喜欢:://\

②反斜杠绕过方法

喜欢:://\

③另一种思维方式,一个反斜杠一个点

使用这种格式,即反斜杠加一个点来跳过限制,

喜欢:://

3.使用@绕过URL限制

如果在火狐中使用此方法跳转,会有弹窗提示,但在其他浏览器中不会有弹窗。

例如: //下面的域名就是要跳转的域名。 之前的域名是用来协助绕过限制的。

4.使用#号绕过

喜欢:://#

5、利用白名单漏洞绕过

部分域名白名单限制不完善。 比如说你想用一个跳转,而且这个跳转是通用的,公司网站上很多子域名都可以重定向,那么你买个域名也不贵吧? 为什么这么说呢? 问题在于白名单限制不当。 例如,当重定向的域名包含本网站下的所有域名时,如:

://,这个也可以改成可以跳转吧,因为只要这个域名被列入白名单,就会直接跳转成功。 然后当我在这个域名前面加上such时,白名单会检查是否包含这个域名,然后直接跳转,不会检查这个域名的全部信息。 那么我就可以利用这个问题,直接注册这个域名。 你可以使用这个跳跃。

6.多重验证&跳转绕过限制

现在很多网站都有多重验证。 例如,您登录帐户后,会出现另一个验证页面。 输入手机验证码进行验证。 此时,上面的URL可能会随机跳转。多个重定向问题允许绕过URL限制

例如::///acb?url=。 当然,这个结构中存在多次跳转。 可以修改最后一个URL来实现任意URL跳转。 无需移动中间 URL。

7、点击触发绕过URL跳转限制

例如,在很多登录页面中,URL都是跳转URL,如:://。 您直接将以下网址更改为任何网址,但它仍然保持原样。 似乎没有问题。 但当你输入账号和密码并点击登录按钮时,就会触发跳转。 当然,账号和密码不一定是正确的。 ,它可以是任何东西,但这取决于系统。 我遇到过很多这样的情况。 例如更改域名,然后点击登录,登录成功后就会触发跳转。 这也是一种比较巧妙的绕过URL限制的跳转。

8.POST参数中URL跳转

当您填写表格或需要填写某些内容时,当您上传图片并单击“下一步”时,通常下一步是预览您填写的信息,最后提交。 图片上传后,点击下一步抓包。 如果过滤不严格的话,你会看到POST参数中包含了图片的完整地址。 您可以直接将此地址修改为任意URL,然后进入下一步。 这是为了确认你填写的信息是否正确,也就是预览你填写的信息。正确,因为你刚刚修改了图片地址,所以这里不显示。 图像将是一个小 XX。 当右键图片选择查看图片时,会触发URL跳转问题。 事实上,这也可以用于网络钓鱼。 钓鱼后台审核员信息(参考)

9.使用xip.io绕过

请求是这个是在SSRF场景下。 例如,如果要读取SSRF中的内网地址,通常会有限制。 您可以尝试此方法来绕过限制访问内网。 还有一点,URL跳转涉及到的最常见的安全问题就是钓鱼,所以用这个思路也可以解决钓鱼问题。 例如,当你访问域名qq时,链接实际上已经被解析为以下IP地址。 ,那么实际访问的是后者的IP地址。

6. URL跳转修复

1、如果可以提前确定要跳转的URL,包括URL的值和参数,可以先在后台配置。 URL参数只需要传入对应URL的索引即可,跳转前通过索引可以找到对应的具体URL。 ;

2、如果跳转URL事先不确定,但其输入是后台生成的(不是用户通过参数传递的),可以先生成跳转链接再签名,跳转cg首先需要验证在签名可以通过之前。 跳跃;

3、如果1和2都不满足,且无法提前确定url,只能通过前端参数传入,则跳转时必须按照规则检查url:即url是否在贵公司是否授权白名单。 这是符合贵公司规则的 URL:

function checkURL ( sURL) {
return (/^(https?:\/\/)?[\w-.]+.(yourDomainA|yourDomainB|yourDomainC).com($|\/|\)/i).test(sUrl)||(/^[\w][\w\/.-_%]+$/i).test(sUrl)||(/^[\/\][^\/\]/i).test(sUrl) ? true : false;    }

4、XSS漏洞注意事项:跳转URL检测中还增加了CRLF头注入漏洞的检测逻辑。 具体是在请求参数中添加%0d%0a等测试码。 这些参数需要删除(实际上:当判断某个参数中含有->控制符时,就认为是非法的,需要删除)。

7. 如何防御

从理论上讲,url跳转是CSRF的一种。 我们需要验证传入的 URL 的有效性,以确保 URL 来自正确的地方。 限制方法可以包括与防止 CSRF 相同的方法:

1. 局限性

如果我们确定了传递URL参数的来源,就可以通过这种方式实现安全限制,保证URL的有效性,避免恶意用户自行生成跳转链接。

2.添加有效性验证Token

我们确保所有生成的链接都来自我们信任的域。 通过在生成的链接中添加用户不可控的Token来验证生成的链接,我们可以防止用户生成自己的恶意链接并被利用。 但是,如果功能本身要求相对开放,这可能会导致一定的限制。

参考:

二维码
扫一扫在手机端查看

本文链接:https://by928.com/179.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线