{"id":27210686,"url":"https://github.com/lachlan2k/phatcrack","last_synced_at":"2026-01-22T12:20:01.280Z","repository":{"id":125880503,"uuid":"562768216","full_name":"lachlan2k/phatcrack","owner":"lachlan2k","description":"Modern web-based distributed hashcracking solution, built on hashcat","archived":false,"fork":false,"pushed_at":"2026-01-19T18:55:21.000Z","size":12248,"stargazers_count":189,"open_issues_count":12,"forks_count":14,"subscribers_count":4,"default_branch":"main","last_synced_at":"2026-01-19T19:38:21.906Z","etag":null,"topics":["distributed-computing","golang","gpu-computing","hacking","hashcat","hashcracking","infosec","pentesting","security-tools","vue"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lachlan2k.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-11-07T08:10:18.000Z","updated_at":"2026-01-19T12:59:54.000Z","dependencies_parsed_at":"2023-09-27T09:57:24.985Z","dependency_job_id":"1433417b-a0eb-443c-95f2-71539b3ea577","html_url":"https://github.com/lachlan2k/phatcrack","commit_stats":null,"previous_names":[],"tags_count":30,"template":false,"template_full_name":null,"purl":"pkg:github/lachlan2k/phatcrack","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lachlan2k%2Fphatcrack","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lachlan2k%2Fphatcrack/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lachlan2k%2Fphatcrack/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lachlan2k%2Fphatcrack/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lachlan2k","download_url":"https://codeload.github.com/lachlan2k/phatcrack/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lachlan2k%2Fphatcrack/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28662961,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T01:17:37.254Z","status":"online","status_checked_at":"2026-01-22T02:00:07.137Z","response_time":144,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["distributed-computing","golang","gpu-computing","hacking","hashcat","hashcracking","infosec","pentesting","security-tools","vue"],"created_at":"2025-04-10T01:02:11.249Z","updated_at":"2026-01-22T12:20:01.274Z","avatar_url":"https://github.com/lachlan2k.png","language":"Go","funding_links":[],"categories":["Go","vue"],"sub_categories":[],"readme":"# Phatcrack\n\nPhatcrack is a modern solution for distributed hash cracking, designed for hackers and other information security professionals.\n\nKey features include:\n* Built on [Hashcat](https://hashcat.net), supporting most common Hashcat attacks and almost all hash types.\n* Excellent UX for managing projects, configuring attack settings, and viewing results.\n* Distributes attacks, allowing both dictionary-based and mask-based attacks to be split across multiple workers.\n* Automatically synchronises wordlists \u0026 rulefiles to all workers. Low-privileged users can be granted permission to upload wordlists \u0026 rulefiles.\n* Modern web-interface, with multi-user support and project-based access control.\n\n![image](https://github.com/lachlan2k/phatcrack/assets/4683714/b10df9ec-ed5a-4678-9442-89003636bbce)\n\n### Deployment\n\n#### Server\nDocker is the only supported deployment method for the server. The following instructions assume you already have [Docker installed on your server](https://docs.docker.com/engine/install/), and are logged in as root (`sudo su`).\n\n```sh\n# Ideally the container processes should be run rootless, so we'll create an unprivileged user.\nuseradd --system --create-home --home-dir /opt/phatcrack-server phatcrack-server\n\ncd /opt/phatcrack-server\n\nwget https://github.com/lachlan2k/phatcrack/releases/download/v0.7.0/docker-compose.yml\n\n# Update your hostname here:\necho \"HOST_NAME=phatcrack.lan\" \u003e\u003e .env\necho \"DB_PASS=$(openssl rand -hex 16)\" \u003e\u003e .env\necho \"PHATCRACK_USER=$(id -u phatcrack-server):$(id -g phatcrack-server)\" \u003e\u003e .env\nchmod 600 .env\n\n# If you chose a hostname that is publicly accessible and expose this to the world (not recommended), Caddy will automatically deploy TLS.\n\n## Otherwise, use the following for self-signed TLS\n# echo \"TLS_OPTS=tls internal\" \u003e\u003e .env\n\n## If you want to supply custom certificates, place them in a directory called `certs`\n## And add ./certs:/etc/caddy/certs:ro as a mount in docker-compose.prod.yml for \n# echo \"TLS_OPTS=tls /etc/caddy/certs/cert.pem /etc/caddy/certs/key.pem\" \u003e\u003e .env\n\n# Make a directory to persist files in\nmkdir filerepo\nchown phatcrack-server:phatcrack-server filerepo\n\ndocker compose up -d\n```\n\nYou can then visit your local installation. The default credentials are `admin:changeme`.\n\n#### Agents\n\nTo enroll an agent, visit the admin GUI, and click \"Register Agent\". The web interface will provide a script that you can run on the agent to enroll it.\n\nHowever, if you want to set up an agent manually, you can do so with the following commands. You will need to replace `REGISTRATION_KEY_FROM_SERVER_HERE` with the key from the server.\n\n```sh\n# Create a user for the phatcrack agent\nuseradd --system --create-home --home-dir /opt/phatcrack-agent phatcrack-agent\n\n# Depending on your distro, you may need to the phatcrack-agent to a group\nusermod -aG video phatcrack-agent\n\ncd /opt/phatcrack-agent\n\n# Download the phatcrack-agent program from the local server\nwget https://phatcrack.lan/agent-assets/phatcrack-agent\n# Or, you can download from https://github.com/lachlan2k/phatcrack/releases/download/v0.7.0/phatcrack-agent\n\nchmod +x ./phatcrack-agent\n# Optionally add -disable-tls-verification if you are using self-signed certs\n./phatcrack-agent install -defaults -api-endpoint https://phatcrack.lan/api/v1 -registration-key REGISTRATION_KEY_FROM_SERVER_HERE \n\nsystemctl enable phatcrack-agent\nsystemctl start phatcrack-agent\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flachlan2k%2Fphatcrack","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flachlan2k%2Fphatcrack","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flachlan2k%2Fphatcrack/lists"}