{"id":17369599,"url":"https://github.com/umair9747/4ofour","last_synced_at":"2025-10-10T16:16:37.252Z","repository":{"id":257822833,"uuid":"863725396","full_name":"umair9747/4oFour","owner":"umair9747","description":"A tech enumeration toolkit focused on 404 Not found pages.","archived":false,"fork":false,"pushed_at":"2024-10-06T12:27:55.000Z","size":228,"stargazers_count":24,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-28T15:05:42.363Z","etag":null,"topics":["bounty","bug-bounty","bugbounty","cybersecurity","cybersecurity-tools","ethical-hacking","infosec","linux","osint","penetration-testing","pentesting","recon","reconnaissance","webappsecurity","websec","websecurity"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/umair9747.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-26T19:52:11.000Z","updated_at":"2025-01-12T18:24:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"fd9abbb9-3abc-4f67-8f22-1a9cc7aa4787","html_url":"https://github.com/umair9747/4oFour","commit_stats":null,"previous_names":["umair9747/4ofour"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umair9747%2F4oFour","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umair9747%2F4oFour/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umair9747%2F4oFour/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/umair9747%2F4oFour/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/umair9747","download_url":"https://codeload.github.com/umair9747/4oFour/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248995101,"owners_count":21195497,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bounty","bug-bounty","bugbounty","cybersecurity","cybersecurity-tools","ethical-hacking","infosec","linux","osint","penetration-testing","pentesting","recon","reconnaissance","webappsecurity","websec","websecurity"],"created_at":"2024-10-16T00:05:47.243Z","updated_at":"2025-10-10T16:16:32.224Z","avatar_url":"https://github.com/umair9747.png","language":"Go","funding_links":["https://www.buymeacoffee.com/umair9747"],"categories":[],"sub_categories":[],"readme":"\n\u003ch1 align=\"center\"\u003e4oFour\u003c/h1\u003e\n\u003cp align=\"center\"\u003e\u003cb\u003eA tech enumeration toolkit for 404 Not found pages.\u003c/b\u003e\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n\u003ca href=\"#description\"\u003eDescription\u003c/a\u003e • \u003ca href=\"#features\"\u003eFeatures\u003c/a\u003e • \u003ca href=\"#installation\"\u003eInstallation\u003c/a\u003e • \u003ca href=\"#usage\"\u003eUsage\u003c/a\u003e • \u003ca href=\"#contactme\"\u003eContact Me\u003c/a\u003e\u003cbr\u003e\u003cbr\u003e\n\u003cimg alt=\"Static Badge\" src=\"https://img.shields.io/badge/Built with-Golang-green?logo=gear\"\u003e\n  \u003ca href=\"https://www.buymeacoffee.com/umair9747\" target=\"_blank\"\u003e\u003cimg src=\"https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png\" alt=\"Buy Me A Coffee\" style=\"height: 21px !important;width: 94px !important;\" \u003e\u003c/a\u003e\n\u003c/p\u003e\n\u003chr\u003e\n\u003cimg src=\"./tool.png\"\u003e\n\u003cbr\u003e\n\u003cdiv id=\"description\"\u003e\n\u003ch2\u003e Description \u003c/h2\u003e\n4oFour is a command-line utility tool written in Go that helps enumerate technology stacks used by a target based on the unique 404 error pages they generate. By analyzing these error pages, 4oFour can identify key tech signatures and provide insights into the underlying infrastructure of a target system.\n\nThe tool currently supports the detection of 18 distinct technology signatures, with plans to expand support to additional technologies in future updates. 4oFour is designed for fast, automated tech stack discovery, offering an efficient way to gain valuable information about a target's environment.\n\u003c/div\u003e\n\u003chr style=\"height: 1px;\"\u003e\n\n\u003cdiv id=\"features\"\u003e\n\u003ch2\u003e Features \u003c/h2\u003e\n\n\u003ch4\u003eTech Stack Enumeration\u003c/h4\u003e\n4oFour analyzes 404 error pages to identify the technologies running on a target system. With support for 18 distinct tech signatures, it provides a detailed overview of the stack based solely on error page characteristics.\n\n\u003ch4\u003eAutomated Detection\u003c/h4\u003e\nSimply input a target URL, and 4oFour will automatically scan for 404 error pages and detect recognizable patterns that reveal technology components, allowing for quick and efficient enumeration of tech stacks.\n\n\u003ch4\u003eSignature Expansion\u003c/h4\u003e\n4oFour's detection capabilities are regularly updated. While it currently supports 18 tech signatures, the tool is designed to evolve with more signatures added soon, ensuring broad coverage of common and emerging technologies.\n\u003c/div\u003e\n\n\u003chr style=\"height: 1px;\"\u003e\n\n\u003cdiv id=\"installation\"\u003e\n\u003ch2\u003e Installation \u003c/h2\u003e\nYou can install Seize by cloning the repository and building it manually using the following steps (Make sure to have \u003ca href=\"https://go.dev/doc/install\"\u003eGo\u003c/a\u003e installed on your system):\u003cbr\u003e\n\n\n```bash\ngit clone https://github.com/umair9747/4oFour.git\ncd 4oFour\ngo build\n```\n\u003c/div\u003e\n\n\u003chr style=\"height: 1px;\"\u003e\n\n\u003cdiv id=\"usage\"\u003e\n\u003ch2\u003e Usage \u003c/h2\u003e\n\n### Basic Usage\n\n```bash\n./4ofour -scan http://127.0.0.1/\n```\n\n### Flags\n\n- `-headers`: Comma-separated custom headers (e.g., 'User-Agent:Go,Accept:*/*')\n- `-scan`: Comma-separated list of targets or file containing targets\n- `-timeout`: Timeout for HTTP requests (default 10s)\n- `-workers`: Number of concurrent workers (default 5)\n\n### Tool Output\nThe tool would produce a JSON output in the below format:\n```\ntype Result struct {\n\tTarget string   `json:\"target\"`\n\tStacks []string `json:\"techs\"`\n}\n\ntype Output struct {\n\tResults []Result `json:\"results\"`\n\tErrors  []string `json:\"errors,omitempty\"`\n}\n```\n### Example Output:\n```\numair@root 4ofour % ./4ofour -scan http://127.0.0.1/\n\n             4     |         |         \n        -----------+---------+-----------\n                   |    O    |         \n        -----------+---------+-----------\n                   |         |    four   \n\nThe tech enumeration toolkit for 404 Not found pages.\n                                - Developed by 0x9747 (inspired by 0xdf)\n\n{\n  \"results\": [\n    {\n      \"target\": \"http://127.0.0.1/somerandompathwhichmightnotexist\",\n      \"techs\": [\n        \"Laravel\"\n      ]\n    }\n  ]\n}\n```\n\n\u003c/div\u003e\n\n\u003chr style=\"height: 1px;\"\u003e\n\n\u003cdiv id=\"credits\"\u003e\n\u003ch2\u003e Credits \u003c/h2\u003e\nI would like to give the credits for the idea to \u003ca href=\"https://x.com/0xdf_\"\u003e0xdf_\u003c/a\u003e! If you haven't checked his amazing work on this research yet, I highly suggest you to go through his \u003ca href=\"https://0xdf.gitlab.io/cheatsheets/404\"\u003eblog\u003c/a\u003e.\n\u003c/div\u003e\n\n\u003chr style=\"height: 1px;\"\u003e\n\n\u003cdiv id=\"contactme\"\u003e\n\u003ch2\u003e Contact Me \u003c/h2\u003e\nHave any suggestions, queries, feedback or just want to connect with me? Feel free to reach out using the below handles:\n\u003cul type=\"disc\"\u003e\n\u003cli\u003e\u003ca href=\"https://www.linkedin.com/in/umair-nehri-49699317a\"\u003eLinkedIn\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://twitter.com/0x9747/\"\u003eTwitter / X\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\nAlso, if you'd like to support me for my future research works, please consider using \u003ca href=\"https://www.buymeacoffee.com/umair9747\"\u003ethis link\u003c/a\u003e for your donations!\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumair9747%2F4ofour","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fumair9747%2F4ofour","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fumair9747%2F4ofour/lists"}