{ "info": { "author": "Evyatar Meged", "author_email": "evyatarmeged@gmail.com", "bugtrack_url": null, "classifiers": [], "description": "# Raccoon\n![Racoon](https://image.ibb.co/dkAq4J/raccoon.png)\n\n#### Offensive Security Tool for Reconnaissance and Information Gathering\n![Build Status](https://travis-ci.org/evyatarmeged/Raccoon.svg?branch=master)\n![license](https://img.shields.io/github/license/mashape/apistatus.svg)\n![os](https://img.shields.io/badge/OS-Linux,%20macOS-yellow.svg)\n![pythonver](https://img.shields.io/badge/python-3.5%2B-blue.svg)\n![raccoonver](https://img.shields.io/badge/version-0.8.5-lightgrey.svg)\n\n##### Features\n- [x] DNS details\n- [x] DNS visual mapping using DNS dumpster\n- [x] WHOIS information\n- [x] TLS Data - supported ciphers, TLS versions,\ncertificate details and SANs\n- [x] Port Scan\n- [x] Services and scripts scan\n- [x] URL fuzzing and dir/file detection\n- [x] Subdomain enumeration - uses Google dorking, DNS dumpster queries,\n SAN discovery and bruteforce\n- [x] Web application data retrieval:
\n - CMS detection\n - Web server info and X-Powered-By\n - robots.txt and sitemap extraction\n - Cookie inspection\n - Extracts all fuzzable URLs\n - Discovers HTML forms\n - Retrieves all Email addresses\n - Scans target for vulnerable S3 buckets and enumerates them\n for sensitive files\n- [x] Detects known WAFs\n- [x] Supports anonymous routing through Tor/Proxies\n- [x] Uses asyncio for improved performance\n- [x] Saves output to files - separates targets by folders\nand modules by files\n\n\n##### Roadmap and TODOs\n- [ ] Add more WAFs, better detection\n- [ ] OWASP vulnerabilities scan (RFI, RCE, XSS, SQLi etc.)\n- [ ] Support multiple hosts (read from file)\n- [ ] Rate limit evasion\n- [ ] IP ranges support\n- [ ] CIDR notation support\n- [ ] More output formats (JSON at the very least)\n\n\n### About\nRaccoon is a tool made for reconnaissance and information gathering with an emphasis on simplicity.
It will do everything from\nfetching DNS records, retrieving WHOIS information, obtaining TLS data, detecting WAF presence and up to threaded dir busting and\nsubdomain enumeration. Every scan outputs to a corresponding file.
\n\nAs most of Raccoon's scans are independent and do not rely on each other's results,\nit utilizes Python's asyncio to run most scans asynchronously.
\n\nRaccoon supports Tor/proxy for anonymous routing. It uses default wordlists (for URL fuzzing and subdomain discovery)\nfrom the amazing [SecLists](https://github.com/danielmiessler/SecLists) repository but different lists can be passed as arguments.
\n\nFor more options - see \"Usage\".\n\n### Installation\nFor the latest stable version:
\n```\npip install raccoon-scanner\n# To run:\nraccoon [OPTIONS]\n```\nPlease note Raccoon requires Python3.5+ so may need to use `pip3 install raccoon-scanner`.
\nYou can also clone the GitHub repository for the latest features and changes:
\n```\ngit clone https://github.com/evyatarmeged/Raccoon.git\ncd Raccoon\npython setup.py install # Subsequent changes to the source code will not be reflected in calls to raccoon when this is used\n# Or\npython setup.py develop # Changes to code will be reflected in calls to raccoon. This can be undone by using python setup.py develop --uninstall\n# Finally\nraccoon [OPTIONS] [TARGET]\n```\nFor docker installation:
\n```\n# Build the docker image\ndocker build -t evyatarmeged/raccoon .\n# Run a scan, As this a non-root container we need to save the output under the user's home which is /home/raccoon\ndocker run --name raccoon evyatarmeged/raccoon:latest example.com -o /home/raccoon\n```\n\n##### Prerequisites\nRaccoon uses [Nmap](https://github.com/nmap/nmap) to scan ports as well as utilizes some other Nmap scripts\nand features. It is mandatory that you have it installed before running Raccoon.
\n[OpenSSL](https://github.com/openssl/openssl) is also used for TLS/SSL scans and should be installed as well.\n\n### Usage\n```\n\nUsage: raccoon [OPTIONS] TARGET\n\nOptions:\n --version Show the version and exit.\n -d, --dns-records TEXT Comma separated DNS records to query.\n Defaults to: A,MX,NS,CNAME,SOA,TXT\n --tor-routing Route HTTP traffic through Tor (uses port\n 9050). Slows total runtime significantly\n --proxy-list TEXT Path to proxy list file that would be used\n for routing HTTP traffic. A proxy from the\n list will be chosen at random for each\n request. Slows total runtime\n -c, --cookies TEXT Comma separated cookies to add to the\n requests. Should be in the form of key:value\n Example: PHPSESSID:12345,isMobile:false\n --proxy TEXT Proxy address to route HTTP traffic through.\n Slows total runtime\n -w, --wordlist TEXT Path to wordlist that would be used for URL\n fuzzing\n -T, --threads INTEGER Number of threads to use for URL\n Fuzzing/Subdomain enumeration. Default: 25\n --ignored-response-codes TEXT Comma separated list of HTTP status code to\n ignore for fuzzing. Defaults to:\n 302,400,401,402,403,404,503,504\n --subdomain-list TEXT Path to subdomain list file that would be\n used for enumeration\n -sc, --scripts Run Nmap scan with -sC flag\n -sv, --services Run Nmap scan with -sV flag\n -f, --full-scan Run Nmap scan with both -sV and -sC\n -p, --port TEXT Use this port range for Nmap scan instead of\n the default\n --vulners-nmap-scan Perform an NmapVulners scan. Runs instead of\n the regular Nmap scan and is longer.\n --vulners-path TEXT Path to the custom nmap_vulners.nse script.If\n not used, Raccoon uses the built-in script it\n ships with.\n -fr, --follow-redirects Follow redirects when fuzzing. Default: False\n (will not follow redirects)\n --tls-port INTEGER Use this port for TLS queries. Default: 443\n --skip-health-check Do not test for target host availability\n --no-url-fuzzing Do not fuzz URLs\n --no-sub-enum Do not bruteforce subdomains\n --skip-nmap-scan Do not perform an Nmap scan\n -q, --quiet Do not output to stdout\n -o, --outdir TEXT Directory destination for scan output\n --help Show this message and exit.\n```\n\n### Screenshots\n![poc2](https://image.ibb.co/iyLreJ/aaaaaaaaaaaaa.png)
\n\n**Web application data including vulnerable S3 bucket:**
\n![somepoc](https://image.ibb.co/m6b3Jz/s3.png)\n\n**[HTB](https://www.hackthebox.eu/) challenge example scan:**
\n![poc](https://image.ibb.co/bGKTRy/bbbbbbb.png)
\n\n**Nmap vulners scan results:**
\n![vulnerspoc](https://image.ibb.co/iaOMyU/nmap_vulners_poc.png)
\n\n**Results folder tree after a scan:**
\n![poc3](https://image.ibb.co/iyaCJd/poc3.png)\n\n### Contributing\nAny and all contributions, issues, features and tips are welcome.\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/evyatarmeged/Raccoon", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "raccoon-scanner", "package_url": "https://pypi.org/project/raccoon-scanner/", "platform": "", "project_url": "https://pypi.org/project/raccoon-scanner/", "project_urls": { "Homepage": "https://github.com/evyatarmeged/Raccoon" }, "release_url": "https://pypi.org/project/raccoon-scanner/0.8.5/", "requires_dist": [ "beautifulsoup4", "requests", "dnspython", "lxml", "click", "fake-useragent", "requests[socks]", "xmltodict" ], "requires_python": "", "summary": "Offensive Security Tool for Reconnaissance and Information Gathering", "version": "0.8.5" }, "last_serial": 4338000, "releases": { "0.0.8": [ { "comment_text": "", "digests": { "md5": "6eec2c2a51f43b27f0de52481c3b87ec", "sha256": "cf864b57b329da8fb5bc11db2af7a5a7a90d8d522c7811095c9e5cbee55c3e67" }, "downloads": -1, "filename": "raccoon_scanner-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "6eec2c2a51f43b27f0de52481c3b87ec", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 78225, "upload_time": "2018-08-04T16:04:57", "url": "https://files.pythonhosted.org/packages/ae/5c/b9e1664233deeb6915a954039b45b6ef694bee9dff0e3e7f00b7788e2a46/raccoon_scanner-0.0.8-py3-none-any.whl" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "33fba6acbc1eddd91d695a897dd7b481", "sha256": "ee0c3db875ae638297d34a593fb1367dc6a61596e5b1d956e2904e23249cef21" }, "downloads": -1, "filename": "raccoon_scanner-0.8.1-py3-none-any.whl", "has_sig": false, "md5_digest": "33fba6acbc1eddd91d695a897dd7b481", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 79001, "upload_time": "2018-08-16T15:42:45", "url": "https://files.pythonhosted.org/packages/16/d4/1b5870bc2ebae4a944bd0e2bfc2558b303da123624bb0995a40a065478d0/raccoon_scanner-0.8.1-py3-none-any.whl" } ], "0.8.2": [ { "comment_text": "", "digests": { "md5": "f3aae8263156c2b06d035cc340d53ff9", "sha256": "c778354b0220ae4b56343fd5b1a7b8585b481d8964d32a60044628b194b7233d" }, "downloads": -1, "filename": "raccoon_scanner-0.8.2-py3-none-any.whl", "has_sig": false, "md5_digest": "f3aae8263156c2b06d035cc340d53ff9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 79706, "upload_time": "2018-08-26T16:08:30", "url": "https://files.pythonhosted.org/packages/83/87/8289484215b344adf4441b211a2d5d1d83f843ad1fbef2ef6ce24d7d1477/raccoon_scanner-0.8.2-py3-none-any.whl" } ], "0.8.3": [ { "comment_text": "", "digests": { "md5": "d29764c02c9f09fdf0b883e262af5b42", "sha256": "c338fa8badeecf9b36bc23396d7976001d375e295ea7b822606673b0fe3e5227" }, "downloads": -1, "filename": "raccoon_scanner-0.8.3-py3-none-any.whl", "has_sig": false, "md5_digest": "d29764c02c9f09fdf0b883e262af5b42", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 79748, "upload_time": "2018-09-08T19:18:55", "url": "https://files.pythonhosted.org/packages/ef/00/40b68da853bc44d5e1828d53c2ca0045143704d505c71ac8a23bf642ea61/raccoon_scanner-0.8.3-py3-none-any.whl" } ], "0.8.4": [ { "comment_text": "", "digests": { "md5": "86f54e009ea91473cf701302ebf11515", "sha256": "73d49c4782a908f7eb2a1edf54f0fdc5786530d9743cb2edb374552677ce11ba" }, "downloads": -1, "filename": "raccoon_scanner-0.8.4-py3-none-any.whl", "has_sig": false, "md5_digest": "86f54e009ea91473cf701302ebf11515", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 79864, "upload_time": "2018-09-24T16:19:52", "url": "https://files.pythonhosted.org/packages/d3/4d/d27cba261833dc4586e168448887b5d032324c7a12b638c25aaba0d96798/raccoon_scanner-0.8.4-py3-none-any.whl" } ], "0.8.5": [ { "comment_text": "", "digests": { "md5": "a75ebea7b74a68d7ddd2b005f0a91413", "sha256": "854892c42fb2e61b33a8700cee8297204f7f935761e3d72c424d425223be462f" }, "downloads": -1, "filename": "raccoon_scanner-0.8.5-py3-none-any.whl", "has_sig": false, "md5_digest": "a75ebea7b74a68d7ddd2b005f0a91413", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 80080, "upload_time": "2018-10-03T20:31:05", "url": "https://files.pythonhosted.org/packages/57/26/40f38ff035ed5eacb77371edcec87b1d3c4ab048debb6e6a477deb9f9429/raccoon_scanner-0.8.5-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a75ebea7b74a68d7ddd2b005f0a91413", "sha256": "854892c42fb2e61b33a8700cee8297204f7f935761e3d72c424d425223be462f" }, "downloads": -1, "filename": "raccoon_scanner-0.8.5-py3-none-any.whl", "has_sig": false, "md5_digest": "a75ebea7b74a68d7ddd2b005f0a91413", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 80080, "upload_time": "2018-10-03T20:31:05", "url": "https://files.pythonhosted.org/packages/57/26/40f38ff035ed5eacb77371edcec87b1d3c4ab048debb6e6a477deb9f9429/raccoon_scanner-0.8.5-py3-none-any.whl" } ] }