Ada*_*žek 8 browser dns url phishing
我最近遇到了新的网络钓鱼攻击,该攻击使用@
符号使 URL 看起来合法。事情是这样的:
我有一个帐户totally-legit-site.com
,攻击者在他的 IP 上设置了一个钓鱼网站,例如192.168.50.20
. 然后,他在该网站上向我发送了一条消息,其中包含看起来像的链接http://totally-legit-site.com@192.168.50.20/account
。这用于欺骗用户认为这是指向合法网站的链接。
但是,单击此链接会192.168.50.20/account
在我的浏览器(Google Chrome)中打开页面。我尝试在随机域之前添加随机内容@
,并且我的浏览器总是正确解析页面,并将这些内容丢弃@
。因此,如果我尝试打开http://test@google.com
,我最终会进入 Google 的主页。
这真的让我很感兴趣。我无法找到有关@
域之前的 URL 的任何信息。这怎么称呼?这是互联网早期阶段过时的东西吗?是否有一些网络服务器可以处理 URL 的这一部分(能够修改我的 nginx 实例以根据此参数返回不同的站点会很酷)?
此语法用于指定连接到“权限”的协议级身份验证详细信息(用户名,有时也包括密码)。例如参见RFC 3986 第 3.2.1 节。
\n当与 HTTP 一起使用时,凭证在 HTTP Authorization: header中发送;格式取决于服务器请求的身份验证机制,但最常见的Basic
是使用身份验证而不进行额外处理。请参阅RFC 7617或MDN。
许多网络服务器可以根据“htpasswd”文件、LDAP、SQL 或其他数据\xc2\xadbases\xe2\x80\x93 验证凭据,例如,对于 Nginx,请参阅auth_basic或 Apache httpd AuthType Basic。
\n或者,验证可以由 Web 应用程序本身完成,因为它是通过标准 HTTP 标头和状态代码完成的。请参阅PHP示例(但是要在 Apache 中实现此功能,您可能需要启用CGIPassAuth
或使用奇怪的重写技巧,否则它不会将授权标头转发到应用程序运行时。)
内置 HTTP 身份验证通常用于 API 和其他自动请求,因为它不需要用户交互,不需要存储 cookie 或其他状态,并且不需要知道如何格式化“登录”POST 请求(基于 <form> 的身份验证需要它)。
\n这也与这些提示所使用的身份验证方法完全相同:
\n\n\n相同的语法也适用于 FTP 和许多其他使用 URL 并支持身份验证 \xe2\x80\x93 的协议,在所有情况下,都使用该协议的内置机制。
\n这里的攻击之所以有效,是因为 HTTP 身份验证是可选的,并且在大多数情况下,额外的 HTTP 标头会被 Web 服务器和 Web 应用程序忽略。反之亦然,浏览器直到发送请求后才知道服务器是否会要求身份验证。
\n然而,这种攻击根本不是什么新鲜事,它至少从 2000 年代初就已经存在了。(事实上,在某些时候,浏览器确实开始检查,首先发出未经身份验证的请求,看看服务器是否会回复 401。如果服务器不请求身份验证,Chrome 会在地址栏中隐藏用户名,以确保真实的域名更加明显,并且 Firefox 实际上会警告“这可能是试图欺骗您。”)
\n 归档时间: |
|
查看次数: |
5349 次 |
最近记录: |