最短域名的探索之旅:XSS攻击中的字符计数艺术

本文深入探讨了在漏洞赏金狩猎中如何通过逆向工程域名提供商API和自动化检查可用域名来寻找最短域名的技术过程,重点分析了ASCII和Unicode字符计数对XSS和SSRF攻击载荷的影响。

最短域名的探索之旅

在漏洞赏金狩猎中,拥有一个短域名对于XSS攻击载荷来说,可能决定了能否成功利用漏洞……而且拥有一个漂亮的域名来承载攻击载荷本身就是件很酷的事情,哈哈。

一月份我开始全职从事漏洞赏金工作时,某天早晨我决定为自己找一个适合概念验证和攻击载荷的好域名。这变成了一整天的冒险。我花了大约六小时逆向工程域名提供商API,并自动化检查可用域名的过程。

ASCII与Unicode

在处理攻击载荷域名时,有时每个字符都很重要。ASCII和Unicode字符计数都很关键。许多Unicode字符在URL中会解析为ASCII,这意味着如果你正在制作XSS或SSRF攻击载荷,短域名有时正是你所需要的。

例如,像1.com这样的域名很直接,有4个ASCII和4个Unicode字符,因为它不会压缩。但还有我拥有的rad.pw,它有5个ASCII字符但只有2个Unicode字符,因为"㎭“和”㎺“各自是单个Unicode字符。

寻找最短域名

我的目标是找到字符数最少的域名,理想情况是3个ASCII和2个Unicode字符,比如1.rs。不幸的是,这些域名(大部分)都已被注册。因此,我将目标转向寻找具有4个ASCII和2个Unicode字符的域名。

然而,以合理价格找到这样的域名也被证明是一个挑战。经过大量搜索,我最终获得了:

  • rad.pw:5个ASCII,2个Unicode,“rad password"是概念验证的酷域名
  • t4.rs:4个ASCII,3个Unicode,因为t4不会压缩,是tars机器人的缩写
  • km3.pw:5个ASCII,2个Unicode。这是我找到前两个之前先获得的域名

隐藏的宝藏与昂贵发现

在我的搜索过程中,我发现了一些有趣的域名。如果你愿意挥霍,可以从nic.st购买4个ASCII和2个Unicode的域名。像rs.st这样的域名是可用的,但它们价格昂贵——由于是4字符域名,售价为799欧元,外加29欧元的年费。

域名的圣杯

最终的发现是几个域名:2.st和9.st(可能还有其他1-2个[数字].st域名),价格为1500欧元,具有3个ASCII和2个Unicode字符。这些是稀有珍宝,无法进一步缩减。

或者真的无法缩减吗?

到目前为止我提到的所有字符数都包括句点/点,但技术上有一组Unicode字符结合了数字和句点,比如⒉,所以像⒉st这样的域名实际上更短。但遗憾的是,浏览器(以及我测试的unicode规范化器)不会将⒉转换为2.,它们只是将其转换为2并去掉句点。所以,虽然这些域名在技术上更短,但据我所知在实践中并不起作用。

编辑:好吧,我刚刚发现⒉st在JavaScript和Python中确实会被转换为2.st。

JavaScript: normalize(‘NFKC’)和normalize(‘NFKD’)都将"⒉st"转换为"2.st”

Python: unicodedata.normalize(‘NFKC’)和unicodedata.normalize(‘NFKD’)同样将"⒉st"转换为"2.st”

告诉我你的发现

我觉得这一切都非常有趣,所以请标记我并告诉我你最好的域名是什么,以及我是否错过了某个顶级域名或一些黄金域名。

  • Joseph

注册我的邮件列表,了解我发布更多类似内容的时间。 我还在Twitter/X上发布我的想法。

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计