URI中有关@符号的一些猥琐idea -电脑资料

电脑资料 时间:2019-01-01 我要投稿
【meiwen.anslib.com - 电脑资料】

    “@”在URI中是个奇特的字符,在URI中用于分隔userinfo与host.

    使用”@”符hack的优点:

    1.在host前面.

    2.大多数情况不影响访问逻辑.

    3.有两个可控部分:username,password.

    1.正常含有userinfo的URI:

    http://username@mmme.me

    ftp://username:pwd@mmme.me

    ftp,http,https都是URI,只要是URI就支持userinfo(即username:password).

    userinfo在URI规范中的定义

    2.十进制hack

    http://mmme.me@1945096730

    1945096730是十进制IP,实际上是访问到baidu,这个trick只具有视觉欺骗效果,但实际攻击效果往往还不错,因为小白不懂什么@符,看上去像就OK.

    case:

    @only_guest WooYun: 猎豹浏览器存在URL欺骗问题

    3.空password

    http://qq.com:@mmme.me

    http://:@qq.com:@mmme.me

    当userinfo的password部分为空的时候,一些应用的匹配userinfo正则可能匹配不到,而采用匹配port的规则,这时候我们便达到了绕过的目的.

    case:

    @0x0F 我是如何bypass腾讯的消息链接安全检测的

    @p.z 一次SWF XSS挖掘和利用

    4.尴尬的反斜杠

    http://qq.com\mmme.me

    反斜杠”\”在浏览器URL中一直是个奇葩,因为win主机解析”\”,所以一般浏览器在处理资源调用URL时会将”\”将换会”/”,但firefox并不买单,这种差异也导致了开发人员在检测URL域时的尴尬.

    case:

    一个google图片调用demo

    5.username编码绕过

    http://qq.com%2f@mmme.me

    http://qq.com%5c@mmme.me

    这里开发人员错误的将userinfo中的信息进行解码导致绕过,这个问题普遍存在于腾讯的业务线中.另外safari的location污染也是这个原理.

    WooYun: Safari location污染漏洞

    http://www.wooyun.org/bugs/wooyun-2013-017325

    6.规则解析顺序绕过

    http://mmme.me#@qq.com

    http://mmme.me:#@qq.com

    开发人员在这里错误的将这个url中的冒号解析为userinfo规则的冒号将会导致bypass,本来是个腾讯信任域绕过漏洞的,写完文章后发现正好补了.

    7.浏览器的”userinfo钓鱼警告

    这里说一下浏览器的”钓鱼提醒”模块,当尝试访问一个带有userinfo的http URI时,safari和firefox会弹出一个警告.但firefox的警告仅限于内部调用,当我们从QQ中打开时将不会触发.

最新文章