{ "info": { "author": "Jos\u00e9 Ignacion Escribano & Miguel Hern\u00e1ndez & Alfonso Mu\u00f1oz", "author_email": "deep.confusables@gmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Console", "Intended Audience :: Other Audience", "Intended Audience :: System Administrators", "License :: OSI Approved :: BSD License", "Operating System :: MacOS", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Programming Language :: Python :: 3" ], "description": "

DeepConfusables

\n\n

\n \n

\n\n> Visual Unicode attacks with deep learning\n\n> `deep-confusables` is the first tool that uses Deep Learning, especially Transfer Learning, to automatically create new variations of inputs using Unicode characters. It is a typical visual attack but in this case the tool uses the power of the machines to select the most similar characters between all possibles.\n\n## Demo\n\n![demo](./images/demo.gif)\n\n\n## Prerequisites\n\nPython>=3.5\n\n## Installing\n\n```\npip3 install deep-confusables\n```\n\n## Getting started\n\n### Quick example\n\n```\n$ deep-confusables -d example.org -m 10 -c -v\n\n __ ___ ___ __ __ __ ___ __ __ ___ __\n| \\ |__ |__ |__) __ / ` / \\ |\\ | |__ | | /__` /\\ |__) | |__ /__`\n|__/ |___ |___ | \\__, \\__/ | \\| | \\__/ .__/ /~~\\ |__) |___ |___ .__/\n\n Visual Unicode attacks with Deep Learning\n Version 1.1.1\n Created by:\n - Jos\u00e9 Ignacio Escribano Pablos (@jiep)\n - Miguel Hern\u00e1ndez Boza (@Miguel000)\n - Alfonso Mu\u00f1oz Mu\u00f1oz (@mindcrypt)\n\nSimilar domains to example.org\ncxamp1\u0205.org\ncxamp1o.org\ncxamp1\u0255.org\ncxamp1\u0188.org\ncxamp1\u0254.org\ncxamp1c.org\ncxamp1e.org\ncxamp1\u01dd.org\ncxamp1\u0258.org\ncxamp1\u0207.org\nChecking if domains are up\nThe domain cxamp1\u0205.org does not exist\nThe domain cxamp1o.org does not exist\nThe domain cxamp1\u0255.org does not exist\nThe domain cxamp1\u0188.org does not exist\nThe domain cxamp1\u0254.org does not exist\nThe domain cxamp1c.org does not exist\nThe domain cxamp1e.org does not exist\nThe domain cxamp1\u01dd.org does not exist\nThe domain cxamp1\u0258.org does not exist\nThe domain cxamp1\u0207.org does not exist\nTotal similar domains to example.org: 10\n```\n#### Note\n\n> Sometimes the output isn't render, that is because the terminal needs the font, but if you copy the text is correct.\n\n### Getting help\n\n```\n$ deep-confusables -h\n\n __ ___ ___ __ __ __ ___ __ __ ___ __\n| \\ |__ |__ |__) __ / ` / \\ |\\ | |__ | | /__` /\\ |__) | |__ /__`\n|__/ |___ |___ | \\__, \\__/ | \\| | \\__/ .__/ /~~\\ |__) |___ |___ .__/\n\n Visual Unicode attacks with Deep Learning\n Version 1.1.1\n Created by:\n - Jos\u00e9 Ignacio Escribano Pablos (@jiep)\n - Miguel Hern\u00e1ndez Boza (@Miguel000)\n - Alfonso Mu\u00f1oz Mu\u00f1oz (@mindcrypt)\n\nusage: deep-confusables [-h] [-d DOMAIN] [-v] [-c] [-w] [-vt] [-m MAX]\n [-t 75,80,85,90,95,99] [-key API] [-o OUTPUT]\n [-i FILEINPUT]\n\ndeep-confusables-cli: Visual Unicode attacks with Deep Learning - System based\non the similarity of the characters unicode by means of Deep Learning. This\nprovides a greater number of variations and a possible update over time\n\noptional arguments:\n -h, --help show this help message and exit\n -d DOMAIN, --domain DOMAIN\n check similar domains to this one\n -v, --verbose\n -c, --check check if this domain is alive\n -w, --whois check whois\n -vt, --virustotal check Virus Total\n -m MAX, --max MAX maximum number of similar domains\n -t 75,80,85,90,95,99, --threshold 75,80,85,90,95,99\n Similarity threshold\n -key API, --api-key API\n VirusTotal API Key\n -o OUTPUT, --output OUTPUT\n Output file\n -i FILEINPUT, --input FILEINPUT\n List of targets. One input per line.\n\n\nExamples:\n\n>$ deep-confusables -d example.com -o dominionsexample.txt\n>$ deep-confusables --domain example.com -m 100 -t 85\n>$ deep-confusables -i fileexample.txt -c -w -v\n\n```\n\n## Contributing\n\nAny collaboration is welcome!\n\nThere're many tasks to do.You can check the [Issues](https://github.com/next-security-lab/deep-confusables-cli/issues) and send us a Pull Request.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details.\n\n## Authors\n\n* Jos\u00e9 Ignacio Escribano Pablos - [@jiep](https://github.com/jiep)\n* Miguel Hern\u00e1ndez Boza - [@Miguel000](https://github.com/Miguel000)\n* Alfonso Mu\u00f1oz Mu\u00f1oz - [@mindcrypt](https://github.com/mindcrypt)\n\n\n

\n \n

\n

Made with \u2764\ufe0f by BBVA Next Technologies

\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/next-security-lab/deep-confusables-cli", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "deep-confusables", "package_url": "https://pypi.org/project/deep-confusables/", "platform": "", "project_url": "https://pypi.org/project/deep-confusables/", "project_urls": { "Homepage": "https://github.com/next-security-lab/deep-confusables-cli" }, "release_url": "https://pypi.org/project/deep-confusables/1.1.1/", "requires_dist": [ "tqdm", "colorama", "python-whois", "requests", "virustotal-api", "flake8 ; extra == 'dev'" ], "requires_python": ">3.5.0", "summary": "deep-confusables - cli generates new variations of an input based on similarity matrix generated by deep-confusables-similarity.", "version": "1.1.1" }, "last_serial": 4850031, "releases": { "1.1.0": [ { "comment_text": "", "digests": { "md5": "649945545826446daa613b5b38c880ba", "sha256": "d011c06c6209637939d4f6ce902ec52a86563c4100902802fadf84065aee278e" }, "downloads": -1, "filename": "deep_confusables-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "649945545826446daa613b5b38c880ba", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">3.5.0", "size": 14246, "upload_time": "2019-02-21T11:26:57", "url": "https://files.pythonhosted.org/packages/12/e0/d9bd244512ba5058a8313f7b15fb5aa311af503e34ca5a0a7949476a8e71/deep_confusables-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "58c73d7ea63373aa5c6296fc67c037f9", "sha256": "6b10746a59815a41a9f24e8235b030ee722774810ccddd955c9c9c2d2e724b6b" }, "downloads": -1, "filename": "deep-confusables-1.1.0.tar.gz", "has_sig": false, "md5_digest": "58c73d7ea63373aa5c6296fc67c037f9", "packagetype": "sdist", "python_version": "source", "requires_python": ">3.5.0", "size": 7268, "upload_time": "2019-02-21T11:26:59", "url": "https://files.pythonhosted.org/packages/7f/ff/fdb684222714dfb852636f5986e1aa15f041e7c0acd248269131a14e334b/deep-confusables-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "b81cfd4007d2601010859b38aa18e5e0", "sha256": "6c0fe6f9e8dce66dd95636df7671c14bfc1c74785563feb5b7fca1648c5c94ce" }, "downloads": -1, "filename": "deep_confusables-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "b81cfd4007d2601010859b38aa18e5e0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">3.5.0", "size": 14358, "upload_time": "2019-02-21T12:45:59", "url": "https://files.pythonhosted.org/packages/02/04/4f8cbbd7b021974e5b02f9e39663e8035621147a4dad0fb16c44a14bedf7/deep_confusables-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "02cad8425196ac4badc4aebbd630e754", "sha256": "7aa7e28eea657b1dfba26d089141b94c8947f1d436d41b3e706e77eb3be23b33" }, "downloads": -1, "filename": "deep-confusables-1.1.1.tar.gz", "has_sig": false, "md5_digest": "02cad8425196ac4badc4aebbd630e754", "packagetype": "sdist", "python_version": "source", "requires_python": ">3.5.0", "size": 7287, "upload_time": "2019-02-21T12:46:00", "url": "https://files.pythonhosted.org/packages/30/d8/b4d94f866de44716286c0c4126b9c9b456366133a0ce4bcd81bcefb2acff/deep-confusables-1.1.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b81cfd4007d2601010859b38aa18e5e0", "sha256": "6c0fe6f9e8dce66dd95636df7671c14bfc1c74785563feb5b7fca1648c5c94ce" }, "downloads": -1, "filename": "deep_confusables-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "b81cfd4007d2601010859b38aa18e5e0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">3.5.0", "size": 14358, "upload_time": "2019-02-21T12:45:59", "url": "https://files.pythonhosted.org/packages/02/04/4f8cbbd7b021974e5b02f9e39663e8035621147a4dad0fb16c44a14bedf7/deep_confusables-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "02cad8425196ac4badc4aebbd630e754", "sha256": "7aa7e28eea657b1dfba26d089141b94c8947f1d436d41b3e706e77eb3be23b33" }, "downloads": -1, "filename": "deep-confusables-1.1.1.tar.gz", "has_sig": false, "md5_digest": "02cad8425196ac4badc4aebbd630e754", "packagetype": "sdist", "python_version": "source", "requires_python": ">3.5.0", "size": 7287, "upload_time": "2019-02-21T12:46:00", "url": "https://files.pythonhosted.org/packages/30/d8/b4d94f866de44716286c0c4126b9c9b456366133a0ce4bcd81bcefb2acff/deep-confusables-1.1.1.tar.gz" } ] }