如何解决在垃圾邮件中发现的 /@ url?

How is a /@ url found in spam able to be resolved?

我最近收到一封包含以下内容的电子邮件(请勿点击!):

<A HrEf="/@/0X0a290d92b/UALI=28389-UI=176738575-OI=279-ONI=5477-SI=0-CI=0-BI=577-II=27913-IDSP=1-KLEM=11-TIE=A-IDE=276135-MID=572-FID=0-DIOM=0" sTyLe=color:#000;font-size:10px;font-family:arial;>
<span>UNS</span></a>

这是原始电子邮件的 link:https://gist.github.com/anonymous/16963a230cab0a3a1bcfc81209f297f1

据我所知,/@ 不是有效的 url。我的浏览器如何将其解析为网站?

评论中已经提到了@ is allowed in URL paths

关于URL解决。我猜想攻击者使用 <base> 标记为电子邮件正文中的所有相关链接显式设置默认值 URL,并希望您的 browser/email 客户端为您解决它。

更新

最初的猜测可能是正确的,因为它是 not supported by majority of mail clients

经过一番调查,我意识到 0x0A290D92B 实际上是十六进制编码的 IPv4 地址 162.144.217.43。我唯一不明白的是它应该如何在浏览器中转换为 http(s)://0x0A290D92B 。看起来攻击者的目标是特定的 browser/mail 客户端行为。

它将@ 之前的所有内容都视为传递给URL 的授权信息。 "real" url 在@之后开始,这是vsminkov提到的编码IP地址。所以前导正斜杠被丢弃。

一个更容易阅读的例子:http://username:password@example.com/

这只是层层混淆。

这里有一个有趣的 link 更详细地介绍了它:

http://www.pc-help.org/obscure.htm

这里 RFC 2396 描述了 URL 的那部分:

URL schemes that involve the direct use of an IP-based protocol to a specified server on the Internet use a common syntax for the server component of the URI's scheme-specific data:

 <userinfo>@<host>:<port>

where may consist of a user name and, optionally, scheme- specific information about how to gain authorization to access the server. The parts "@" and ":" may be omitted.

 server        = [ [ userinfo "@" ] hostport ]

The user information, if present, is followed by a commercial at-sign "@".

 userinfo      = *( unreserved | escaped |
                     ";" | ":" | "&" | "=" | "+" | "$" | "," )