J'essaie de détecter attaques homographes et d'autres attaques lorsqu'un attaquant utilise un nom de domaine usurpé qui ressemble visuellement à un nom de domaine de confiance (par exemple, bankofthevvest.com au lieu de bankofthewest.com).
Existe-t-il un dictionnaire ou une base de données de caractères visuellement similaires pouvant être utilisés par programmation?
Par exemple, si je recherche "l", je voudrais récupérer une liste indiquant que "l" est visuellement similaire à "1" et "i" (au moins dans certaines polices). Si je recherche "w", cela pourrait me dire qu'il est visuellement similaire à "vv" (dans certaines polices). Si je recherche "d", cela pourrait me dire qu'il est visuellement similaire à "cl" (dans certaines polices). Au moins pour l'instant, je me concentre sur la similitude visuelle entre les caractères ASCII. C'est bien d'ignorer Unicode. (Cependant, c'est un bonus supplémentaire s'il y a une liste qui sait également quels caractères Unicode sont visuellement similaire à chaque ASCII caractère.)
Si une telle chose existe déjà, je voudrais éviter de réinventer la roue. Une telle liste existe-t-elle déjà?
Voici ce que j'ai trouvé jusqu'à présent:
J'ai trouvé Existe-t-il un dictionnaire de caractères Unicode visiblement similaires pour le traitement du spam? , mais la question se concentre sur Unicode, et les réponses ne résolvent pas vraiment cette question: ils proposent un mécanisme de détection alternatif.
Les deux articles de recherche suivants conçoivent C-SimList , une liste de caractères visuellement similaires. Cependant, il se concentre sur les caractères Unicode et n'a pas de similitude entre ASCII lettres (par exemple, l vs 1, vv vs w).
Anthony Y. Fu, Xiaotie Deng, Liu Wenyin, Greg Little. La méthodologie et une application pour lutter contre les attaques Unicode . SOUPS 2005.
Anthony Y. Fu, Wan Zhang, Xiaotie Deng, Liu Wenyin. Protection contre les attaques Unicode: génération et applications de UC-SimList . WWW 2006.
Essayez de chercher sous le terme "homoglyphe" au lieu de "homographe".
Par exemple, cela pourrait être ce que vous vouliez:
https://codebox.net/pages/homoglyph-detection
Il contient du code et des dictionnaires.