{"adoption": {"forks": 361, "observed_at": "2026-08-28T04:06:18.063864+00:00", "stars": 2138}, "canonical_url": "https://ross.abutalabs.com/products/anouarbensaad-vulnx", "card": {"archived": false, "artifact_type": "cli-tool", "description": "vulnx 🕷️ an intelligent Bot, Shell can achieve automatic injection, and help researchers detect security vulnerabilities CMS system. It can perform a quick CMS security detection, information collection (including sub-domain name, ip address, country information, organizational information and time zone, etc.) and vulnerability scanning.", "domain": ["security", "penetration-testing", "crawlers", "web-development"], "enriched": true, "function": ["vulnerability-scanning", "web-scraping", "security", "osint", "cli"], "health_score": 20, "homepage": null, "language": "Python", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "maintenance", "member_repos": ["anouarbensaad/vulnx"], "name": "anouarbensaad/vulnx", "platform": ["windows", "python", "cli"], "pushed_at": "2023-06-07T05:13:46+00:00", "repo": "anouarbensaad/vulnx", "stars": 2138, "tags": ["cms-detector", "auto-exploiter", "shell-injection", "subdomain-enumeration", "dork-search", "pentesting", "wordpress-scanner", "linux", "macos"], "topics": ["crawler", "information-gathering", "cms-detector", "cloudflare-detection", "bot", "pentest", "wp-scanner", "auto-exploiter", "vulnerability", "hacking", "website-vulnerability-scanner", "security-tools", "vulnerability-assessment", "vulnerability-exploit", "vulnerability-detection", "shell-injection", "detects-vulnerabilities", "exploits", "dorks", "subdomains-gathering"], "urls": [], "use_cases": ["scan a website for cms vulnerabilities", "detect what cms a site is running", "gather subdomains and dns info for a target domain", "find exploitable urls with google dorks", "automatically inject a shell into a vulnerable cms", "run a pentest recon on multiple websites"], "what_it_is": "VulnX is a Python CLI tool that detects CMS types (WordPress, Joomla, Drupal, etc.), gathers target information like subdomains and DNS records, and scans websites for known vulnerabilities. It can automatically inject shells into vulnerable targets and search for exploitable URLs via dorks.", "when_to_avoid": ["you need a maintained tool with active development and recent updates", "you require a full-featured commercial-grade vulnerability scanner", "you lack authorization to test the target systems - using this on sites you don't own is illegal"], "when_to_choose": ["you need automated cms detection and vulnerability scanning from the command line", "you want subdomain and dns reconnaissance bundled with vuln scanning", "you're doing authorized penetration testing on cms-based sites"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/anouarbensaad-vulnx", "repo": "anouarbensaad/vulnx", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:51:35.788547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0a56491c796ecdce3e511d356a1f6de8779d5de16ffaacaf486df70343def89a", "fetched_at": "2026-08-28T04:06:18.063864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anouarbensaad/vulnx"}, {"content_hash": "5b44c3104b0633ac545ec7536f4e6c89c0cb1b1de98f7e633da6d41bfad71dbc", "fetched_at": "2026-08-29T10:31:35.062191+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/vulnx/json"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:51:35.788547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0a56491c796ecdce3e511d356a1f6de8779d5de16ffaacaf486df70343def89a", "fetched_at": "2026-08-28T04:06:18.063864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anouarbensaad/vulnx"}, {"content_hash": "5b44c3104b0633ac545ec7536f4e6c89c0cb1b1de98f7e633da6d41bfad71dbc", "fetched_at": "2026-08-29T10:31:35.062191+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/vulnx/json"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:51:35.788547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0a56491c796ecdce3e511d356a1f6de8779d5de16ffaacaf486df70343def89a", "fetched_at": "2026-08-28T04:06:18.063864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anouarbensaad/vulnx"}, {"content_hash": "5b44c3104b0633ac545ec7536f4e6c89c0cb1b1de98f7e633da6d41bfad71dbc", "fetched_at": "2026-08-29T10:31:35.062191+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/vulnx/json"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:51:35.788547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0a56491c796ecdce3e511d356a1f6de8779d5de16ffaacaf486df70343def89a", "fetched_at": "2026-08-28T04:06:18.063864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anouarbensaad/vulnx"}, {"content_hash": "5b44c3104b0633ac545ec7536f4e6c89c0cb1b1de98f7e633da6d41bfad71dbc", "fetched_at": "2026-08-29T10:31:35.062191+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/vulnx/json"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:51:35.788547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0a56491c796ecdce3e511d356a1f6de8779d5de16ffaacaf486df70343def89a", "fetched_at": "2026-08-28T04:06:18.063864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anouarbensaad/vulnx"}, {"content_hash": "5b44c3104b0633ac545ec7536f4e6c89c0cb1b1de98f7e633da6d41bfad71dbc", "fetched_at": "2026-08-29T10:31:35.062191+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/vulnx/json"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:51:35.788547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0a56491c796ecdce3e511d356a1f6de8779d5de16ffaacaf486df70343def89a", "fetched_at": "2026-08-28T04:06:18.063864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anouarbensaad/vulnx"}, {"content_hash": "5b44c3104b0633ac545ec7536f4e6c89c0cb1b1de98f7e633da6d41bfad71dbc", "fetched_at": "2026-08-29T10:31:35.062191+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/vulnx/json"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:18.063864+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:51:35.788547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0a56491c796ecdce3e511d356a1f6de8779d5de16ffaacaf486df70343def89a", "fetched_at": "2026-08-28T04:06:18.063864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anouarbensaad/vulnx"}, {"content_hash": "5b44c3104b0633ac545ec7536f4e6c89c0cb1b1de98f7e633da6d41bfad71dbc", "fetched_at": "2026-08-29T10:31:35.062191+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/vulnx/json"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:51:35.788547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0a56491c796ecdce3e511d356a1f6de8779d5de16ffaacaf486df70343def89a", "fetched_at": "2026-08-28T04:06:18.063864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anouarbensaad/vulnx"}, {"content_hash": "5b44c3104b0633ac545ec7536f4e6c89c0cb1b1de98f7e633da6d41bfad71dbc", "fetched_at": "2026-08-29T10:31:35.062191+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/vulnx/json"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:51:35.788547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0a56491c796ecdce3e511d356a1f6de8779d5de16ffaacaf486df70343def89a", "fetched_at": "2026-08-28T04:06:18.063864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anouarbensaad/vulnx"}, {"content_hash": "5b44c3104b0633ac545ec7536f4e6c89c0cb1b1de98f7e633da6d41bfad71dbc", "fetched_at": "2026-08-29T10:31:35.062191+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/vulnx/json"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:51:35.788547+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0a56491c796ecdce3e511d356a1f6de8779d5de16ffaacaf486df70343def89a", "fetched_at": "2026-08-28T04:06:18.063864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/anouarbensaad/vulnx"}, {"content_hash": "5b44c3104b0633ac545ec7536f4e6c89c0cb1b1de98f7e633da6d41bfad71dbc", "fetched_at": "2026-08-29T10:31:35.062191+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/vulnx/json"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2932, "days_push": 1183, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}