{"answers":{"affected":"2 open source packages ship an affected version, including pterodactyl/panel.","exploited":"There is no known exploitation of GHSA-j7f5-gfqm-pcx3 in the wild and no public exploit code.","fix":"Upgrade pterodactyl/panel to 1.12.3 or later.","what":"GHSA-j7f5-gfqm-pcx3 is a vulnerability in pterodactyl/panel, published on 26 Jun 2026. Any signed-in user can exploit it over the network, with no action from the victim."},"fix_prompt":"Check this codebase for GHSA-j7f5-gfqm-pcx3 and fix it if it is affected.\n\nWhat it is: GHSA-j7f5-gfqm-pcx3 is a vulnerability in pterodactyl/panel, published on 26 Jun 2026. Any signed-in user can exploit it over the network, with no action from the victim.\nExploitation: There is no known exploitation of GHSA-j7f5-gfqm-pcx3 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- pterodactyl/panel (Packagist): affected all versions; fixed in 1.12.3\n- pterodactyl/panel (Packagist): affected all versions; fixed in 1.12.3\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/GHSA-j7f5-gfqm-pcx3/ (Markdown: https://insights.sbomify.com/GHSA-j7f5-gfqm-pcx3/index.md)","id":"GHSA-j7f5-gfqm-pcx3","markdown":"https://insights.sbomify.com/GHSA-j7f5-gfqm-pcx3/index.md","name":"GHSA-j7f5-gfqm-pcx3","record":{"aliases":[],"analysis":{"component_type":"web_application","fix_type":"patch","impacts":["data_read"],"network_reachable":"yes","non_default_config":false,"product_category":"Pterodactyl Panel","requires_auth":"low_privilege","summary":"Authenticated users can enumerate registered email addresses via the unprotected email update endpoint, exposing user base information.","user_interaction":"not_required","vuln_class":"information_disclosure"},"analysis_generated_by":"qwen3.8-flash-next","assigner":null,"cpe":[],"cvss":{"score":null,"severity":null,"source":null,"vector":null,"version":null},"cwes":[],"description":"### Summary\nAn unprotected user enumeration vulnerability exists in the account email update endpoint, allowing authenticated users to verify whether email addresses are registered on the panel through automated requests without rate limiting or CAPTCHA protection.\n\n### Details\nThe account settings page allows authenticated users to update their email address through a POST request. Unlike the login and password reset forms which implement reCAPTCHA and rate limiting protections, this endpoint lacks these safeguards entirely.\nAn attacker can capture the email update request (for example, using Burp Suite's proxy) and modify the email field to test arbitrary addresses. The panel's response will confirm whether each tested email is already registered in the system. Because there are no rate limits implemented, attackers can send hundreds or thousands of requests to enumerate the user base.\n\nThis is concerning because:\n\n- The login and password reset pages correctly implement protections against enumeration\n- The account page has no reCAPTCHA option available\n- No rate limiting exists in the panel for this endpoint\n- Authentication is required, but any valid account (including free tier/trial accounts) can exploit this\n\n### PoC\n- Log into the Pterodactyl panel with any valid account\n- Navigate to Account Settings\n- Open Burp Suite (or similar proxy tool) and configure your browser to proxy through it\n- Attempt to change your email address and capture the POST request\n- Send the captured request to Repeater\n- Modify the email field to test different addresses (e.g., admin@example.com, test@example.com)\n- Send multiple requests in rapid succession\n- Observe the response messages which confirm whether each email exists or not \n- Repeat indefinitely without encountering rate limits or CAPTCHA challenges\n\n### Impact\nThis is a user enumeration vulnerability (CWE-204: Observable Response Discrepancy).\n\nWho is impacted:\n\n- All Pterodactyl panel installations are affected\n- Any registered user's email address can be discovered\n- Particularly impacts administrators and high-value accounts\n\nPotential consequences:\n\n- Attackers can build a complete database of registered users\n- Enumerated emails can be used for targeted phishing campaigns\n- Combined with other attacks (credential stuffing, social engineering)\n- Privacy violation for all users on the platform\n- Competitive intelligence gathering (identifying which companies/individuals use specific panels)","ecosystems":["Packagist"],"exploits":{"exploitdb":null,"first_seen":null,"github_poc":null,"max_poc_stars":null,"metasploit":null,"nuclei":null,"refs":[],"tier":null},"has_fix":true,"headline":"Pterodactyl Panel: Client email change endpoint allows enumeration of accounts in system","id":"GHSA-j7f5-gfqm-pcx3","indexable":true,"kev":null,"kind":"advisory","links":{"ecosystem":"Packagist","product":null,"products":[],"type":"information_disclosure","year":"2026"},"n_packages":2,"n_references":null,"packages":[{"ecosystem":"Packagist","fixed":["1.12.3"],"introduced":["0"],"last_affected":[],"package":"pterodactyl/panel","purl":null,"source":"GHSA-j7f5-gfqm-pcx3"},{"ecosystem":"Packagist","fixed":["1.12.3"],"introduced":["0"],"last_affected":[],"package":"pterodactyl/panel","purl":"pkg:composer/pterodactyl/panel","source":"GHSA-j7f5-gfqm-pcx3"}],"products":null,"published":"2026-06-26","related":[],"sources":[{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"}],"ssvc":{"automatable":null,"exploitation":null,"technical_impact":null},"state":null,"updated":null,"vendors":null},"summary":"Authenticated users can enumerate registered email addresses via the unprotected email update endpoint, exposing user base information.","url":"https://insights.sbomify.com/GHSA-j7f5-gfqm-pcx3/"}