0x01 Punycode钓鱼攻击 1.1什么是网络钓鱼?...0x02 Punycode钓鱼攻击介绍 钓鱼攻击,“几乎无法检测”,即便平时十分谨慎的用户也可能无法逃过欺骗。...在IDNs(国际化域名international domain names)推出后,为了保证兼容以前的DNS,所以,对IDNs进行punycode转码,转码后的punycode就由26个英文字母+10个数字...Punycode的攻击方式存在两个明显的优势,导致常被攻击者选取用来攻击: Masquarading:从肉眼上很难区分正常域名和punycode伪装的域名,进行网络钓鱼的成功率很高。...低版本的用户禁用浏览器的punycode支持 其它浏览器貌似旧版本也有,感兴趣的可自行搜索。
Punycode是什么? Punycode是一个根据RFC 3492标准而制定的编码系统,主要用於把域名从地方语言所采用的Unicode编码转换成为可用於DNS系统的编码。...在IDNs(国际化域名Internationalized Domain Names)推出以后,为了保证兼容以前的DNS,所以,对IDNs进行punycode转码,转码后的punycode就由26个字母+...浏览器对punycode的支持 目前,因为操作系统的核心都是英文组成,DNS服务器的解析也是由英文代码交换,所以DNS服务器上并不支持直接的中文域名解析,所有中文域名的解析都需要转成punycode...码,然后由DNS解析punycode码。...完全免费,双向转换 中文域名转码就是将中文字符串转成punycode标准编码的字符串。 本服务目前支持GBK,GB2312编码和punycode编码的相互转换。
域名 punycode 中文 IDN IDN 国际化域名(英语:Internationalized Domain Name,缩写:IDN) Punycode 国际化域名的编码方式,中文域名和一些特殊文字...都需要Punycode 编码一下的 中文(特殊文字)转 Punycode 通过 idn_to_ascii 函数 参考地址:https://www.php.net/manual/zh/function.idn-to-ascii.php...idn_to_ascii("alone88.我爱你",IDNA_NONTRANSITIONAL_TO_ASCII,INTL_IDNA_VARIANT_UTS46) 转换成:alone88.xn--6qq986b3xl Punycode
Umi 项目热更新报错如下: Uncaught TypeError: punycode.toASCII is not a function at Url.parse (hotModuleReplacement.js...hotModuleReplacement.js:1638) at functionCall2 (hotModuleReplacement.js:1510) 已知是 Umi 的一个 BUG,已与 2021年7月5日修复:fix: punycode.toASCII...文件位置: \node_modules\@umijs\bundler-webpack\bundled\css\hotModuleReplacement.js ) 这个文件中定义了两次来自两个不同版本 punycode...221 行: image.png 代码第 360 行: image.png 出错的时候是引用了 "version": "1.3.2" ,引入的版本是不对的,并且是以 amd 的形式引入,其结果就是 punycode...未经允许不得转载: UmiJS less文件热更新报错:punycode.toASCII is not a function
punycode Punycode是一个根据RFC 3492标准而制定的编码系统,主要用於把域名从地方语言所采用的 Unicode编码转换成为可用於DNS系统的编码。...Punycode可以防止所谓的IDN欺骗。 早期的DNS(Domain Name System)是只支持英文域名解析。...在IDNs(国际化域名Internationalized Domain Names) 推出以后,为了保证兼容以前的DNS,所以,对IDNs进行punycode转码,转码后的punycode就由26个字母...目前,因为操作系统的核心都是英文组成,DNS服务器的解析也是由英文代码交换,所以DNS服务器 上并不支持直接的中文域名解析,所有中文域名的解析都需要转成punycode码,然后由DNS解析punycode...例如: 企鹅.com,用Punycode转换后为:xn--hoq754q.com 中国.cn,用Punycode转换后为:xn--fiqs8s.cn Block.one是否安全?
因为操作系统的核心都是英文组成,DNS服务器的解析也是由英文代码交换,所以DNS服务器上并不支持直接的中文域名解析,所有中文域名的解析都需要转成punycode码,然后由DNS解析punycode码。...中文域名变为Punycode编码即可,在线转码地址:http://tools.jb51.net/punycode/,如下图: Punycode?...Punycode是一个根据RFC 3492标准而制定的编码系统,主要用於把域名从地方语言所采用的Unicode编码转换成为可用於DNS系统的编码。..."中文域名"后缀不被标准的解析服务器支持,需转化为punycode码进行解析。
配置之前先来解释一下中文域名是如何工作的: 当我们在浏览器上输入 朝阳.北京.中国 这个域名的时候 浏览器会把中文域名翻译成Punycode编码然后再 传送给DNS服务器解析,例如 朝阳.北京.中国 翻译成...Punycode编码以后就是 xn--tpv116h.xn--1lq90i.xn--fiqs8s 朝阳 = xn--tpv116h 北京 = xn--1lq90i 中国 = xn--fiqs8s 点我转码...所以我们需要在Linux DNS服务器上用Punycode码做域名。...下面开始配置 首先配置主配置文档(在这里我就只配置了一个正向区域,反向区域跟平常的是一样的只是域名那里要更换成Punycode编码) 然后修改解析文件 这里DNS就配置好了 重启dns服务。
(注:DNS 即域名解析,通过网站域名来指向网站服务器IP) 为了让 DNS服务器能看懂这些“方言”,许多浏览器用一种叫 punycode 的编码方式, 把一些奇奇怪怪的“地方语言”翻译成网络 DNS服务器能懂的英文字符...例如: 企鹅.com,用 Punycode 转换后为:xn--hoq754q. co 中国.cn,用 Punycode 转换后为:xn--fiqs8s. cn 你会注意到,punycode 转码之后的网站都会以...Firefox 用户可以按照以下的步骤来手动将暂时缓解: 在地址栏输入about:config ,按回车,在搜索框输入 punycode,将 network.idn_show_punycode 选项标记为...谷歌浏览器用户可以安装一个名为:punycode Alert 的拓展插件,它会对所有存在该问题的网站进行报警。 Opera 浏览器的话,目前宅客频道没有找到相应的技术解决方案。
Punycode 编码Punycode 是处理国际化域名(IDN)的一种技术,它将非 ASCII 字符(如中文、阿拉伯文、希腊文等)转换为 ASCII 字符,从而使这些字符能够在传统的 DNS(域名系统...而对于非 ASCII 字符,则需要转换成 Punycode 格式。为了与普通域名区分开,Punycode 编码通常在非 ASCII 字符前加上一个前缀,如“xn--”。...生成 Punycode:最终生成的 Punycode 字符串用于在 DNS 系统中进行域名解析。...1.2 Punycode 示例以中文域名 中文域名.中国 为例,Punycode 编码后的结果是 例.公司。...浏览器转换 Punycode:浏览器将 中文域名.中国 转换为 Punycode 格式,即 例.公司。
Punycode钓鱼攻击 在默认情况下,许多web浏览器使用“Punycode”编码来表示URL中的Unicode字符,以防止同形异义字钓鱼攻击。...Punycode是浏览器使用的特殊编码,目的是将Unicode字符转义成字符数目有限的ASCII 码字符集(A-Z,0-9),由国际化域名(IDN)系统支持。...比如说,中文域名“短.co”用Punycode来表示就是“xn--s7y.co”。...在搜索栏中输入Punycode。 3. 浏览器设置将显示network.IDN_show_punycode参数,双击或者右键选择Toggle,将值改为“True”。...Chrome和Opera中并没有类似的设置,来手动关闭Punycode URL转义,所以Chrome用户请耐心等待几周,等待Stable 58发布。
通过实现Punycode标准化显示、多脚本混排风险评分、前端字符差异比对脚本及高危变体域名注册策略,有效提升对此类攻击的识别与阻断能力。...关键词:同形攻击;国际化域名;Unicode混淆;日文字符;钓鱼防御;Punycode1 引言网络钓鱼攻击持续演进,其核心目标始终是绕过人类感知与机器检测的双重防线。...4.1 客户端与网关:强制Punycode显示与标准化建议在企业终端策略中强制浏览器以ASCII(Punycode)形式显示所有含非ASCII字符的域名,消除视觉混淆。...Punycode并标记高风险域名:Python伪代码(Punycode检测模块):import idnadef is_suspicious_idn(url):try:# 提取主机名from urllib.parse...特别地,在强制Punycode显示策略下,98%的测试用户能正确识别xn--paypa-gck.com(即paypaネ.com)为非官方域名。
纯中文域名如 新闻.中国 或半 中文 中国.cn 都是由punycode编码转换的到的地址,属于idn域名(国际化域名)。 但由于特殊性出现了常见的问题,如搜索不收录,邮件不支持等。...随便找一个punycode编码转换的网站 https://myssl.com/punycode.html (wgpro.com是我的域名 前面随便写个中文就当自己是 二级中文域名用吧 如 中国.com.cn
为了防止这种钓鱼攻击,许多浏览器使用 “Punycode” 编码来表示 URL 中的 Unicode 字符。...Punycode 是浏览器使用的特殊编码,目的是将 Unicode 字符转义成字符数目有限的 ASCII 码字符集(A-Z,0-9),由国际化域名(IDN)系统支持。...比如说,中文域名「短.co」用 Punycode 来表示就是「xn--s7y.co」。...此处的 xn 前缀是一个 “ASCII兼容编码” 前缀,意味着浏览器将采用 Punycode 编码来代表 Unicode 字符。这里就不再介绍其细枝末节了。...---- 参考文献 Hyphen Dash Plane “Basic Multilingual Plane” 英文写作中标点连字号(hyphen)与连接号(dash)的输入 一种几乎无法被检测到的Punycode
技术内核:IDN与Punycode的“双面性”要理解这种攻击,需先了解“国际化域名”(IDN)技术。为了让全球用户能用母语(如中文、阿拉伯文、日文)注册和访问网站,互联网引入了IDN标准。...但计算机网络底层仍依赖ASCII字符,因此IDN域名在传输时会被转换为一种名为“Punycode”的编码格式。例如,一个包含日文字符的域名“例え.com”会被转换为“xn--r8jz45g.com”。...浏览器在显示时,会自动将Punycode还原为可读的原字符。攻击者正是利用了这一机制。...启用Punycode显示模式芦笛建议,用户可在浏览器或安全网关中开启“显示Punycode”选项。这样,所有IDN域名都会以“xn--”开头的编码形式显示,一眼就能识别异常。...“应推动更主动的警示机制,”他说,“比如对包含三种以上文字脚本的域名,强制显示Punycode或弹出‘此网站使用非常规字符’的提示,哪怕牺牲一点便利性,也要优先保障安全。”
具体的方法就是找一个中文域名转码的网站,将你的中文域名输入,然后按照punycode编码格式转换即可。如图所示: ? 中文域名转码前 ? ...中文域名转码后 将中文字符串转成punycode标准编码的字符串后,就可以正常绑定到主机空间上了。这样当中文域名解析和绑定后,在浏览器中直接访问中文域名或转换后的字符串均可。
上图是西里尔字母表,我们可以发现有不少字母与拉丁字母相识,这就是为什么用西里尔字母来进行混淆的原因 浏览器会通过Punycode来编码非拉丁字符的域名,编码后就可以避免产生混淆,但发现如果域名的一个字段里所有字符都是同一种语言...后面要讲的钓鱼攻击对是否编码已经不重要,所以现在就不用深究这个问题 我们先从јԁ.com开始(这里的јԁ.com 已不等于 jd.com了,是不是认不出来有什么区别 ^_^) 我们尝试注册јԁ.com,先Punycode...在国内不允许注册Punycode转码后的域名 ? 在国外的域名网站就可以正常查询了,这里显示的not available是指已经被注册了,而不是说Punycode转码域名不能注册。...其他域名也类似或者提示无法显示或者有相关信息也无法追溯,只追溯到一个域名是国内安全圈的老司机注册的,这位可能是用来做研究 0×02 实施同形异义字钓鱼攻击,钉钉存在安全隐患 前面提到的chrome的漏洞就是浏览器地址栏没有进行Punycode
2.4Punycode转换Punycode是国际化域名(IDN)使用的编码。...本项目采用了一个巧妙的利用浏览器原生API的方法,避免引入庞大的第三方库:展开代码语言:JavaScriptAI代码解释punycode:{encode:function(input){try{//利用...URLAPI自动进行Punycode编码consturl=newURL('http://'+input);returnurl.hostname.replace(/^xn--/,'');}catch(e)
为兼容旧系统,这些域名会被转换为以 xn-- 开头的Punycode格式。问题在于,某些Unicode字符在视觉上与拉丁字母极其相似。...尽管其真实Punycode为 xn--mcrosoftonline-6v9f.com,但现代浏览器默认将其渲染为原始Unicode形式,导致用户误以为是合法域名。...尤其值得警惕的是,部分国产浏览器或邮件客户端对IDN显示策略不够严格,可能默认展示Unicode而非Punycode,进一步放大风险。五、技术深潜:如何防御IDN与零宽字符攻击?...浏览器端:强制Punycode显示或禁用高风险IDN现代浏览器虽支持IDN,但可通过策略限制。...= true,强制显示 xn-- 格式企业可通过MDM或组策略统一配置,确保员工设备默认以Punycode显示混合脚本域名。
Punycode和homoglyphs 在2003年,RFC 3492引入了Punycode(自RFC 5891更新以来); 一种在域名中编码非ASCII字符以支持国际化域名(IDN)的方法。...以下是我们能够找到的该组织所使用的其它域(非完整): Punycode编码 表示 xn—costo-7xa[.]com costċo[.]com xn—superndo-xkb[.]com superındo...Firefox允许用户来决定是否显示Punycode语法。总之只要大家多长点心眼,就完全有可能避免此类欺骗。
在IDNs(国际化域名Internationalized Domain Names)推出以后,为了保证兼容以前的DNS,所以,对IDNs进行punycode转码,转码后的punycode就由26个字母+...其实就是将unicode编码转化成Punycode,而转换后的Punycode在浏览器中显示的是unicode编码后的字符。