如何检测同形文本,使用node.js进行unicode欺骗

用户可以在我们的网站上获得自己的子网站,以便www.example.com/subsite/gary成为特定的用户子网站。

然而,我担心可能会发生同形/ unicode欺骗攻击,其中恶意用户使用不同的用户名创build帐户,但是unicode字符与其他用户看起来是一样的,这样可以传递一个声称是gary的链接当它实际上是别人。

我看到这个看起来成熟的唯一的解决scheme是UCAPI http://www.casaba.com/products/UCAPI/,但我不想使用它,我想有一些与node.js一起工作。 (如果需要,我宁愿实施自己)

有没有人可以通过node.js检查这种同形/欺骗攻击?

你可以尝试使用Unicode规范化,在Node.js v0.12中可以使用String.prototype.normalize ,但是我怀疑是否需要处理每个可能的攻击向量。

使用UCAPI – 它是为您的确切使用情况而制定的。

等待足够长的时间,有人会为你实现 – https://www.npmjs.com/package/homoglyph-search