{"adoption": {"forks": 226, "observed_at": "2026-08-28T04:03:32.148405+00:00", "stars": 1086}, "canonical_url": "https://ross.abutalabs.com/products/rogue-jndi", "card": {"archived": false, "artifact_type": "cli-tool", "description": "A malicious LDAP server for JNDI injection attacks", "domain": ["security", "penetration-testing", "developer-tools"], "enriched": true, "function": ["security", "http-server", "cli"], "health_score": 20, "homepage": null, "language": "Java", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["veracode-research/rogue-jndi"], "name": "veracode-research/rogue-jndi", "platform": ["jvm", "cross-platform", "cli"], "pushed_at": "2023-09-28T17:20:20+00:00", "repo": "veracode-research/rogue-jndi", "stars": 1086, "tags": ["jndi-injection", "ldap-server", "exploitation", "rce", "log4shell", "penetration-testing", "java-security"], "topics": [], "urls": [], "use_cases": ["test java applications for jndi injection vulnerabilities", "demonstrate log4shell-style ldap exploitation in a pentest", "simulate malicious ldap server for rce payloads", "verify jndi lookup security fixes on tomcat or websphere", "exploit insecure jndi remote classloading during authorized security assessment"], "what_it_is": "Rogue JNDI is a malicious LDAP and HTTP server written in Java for exploiting insecure JNDI API usage in Java applications. It serves various payloads (remote classloading, unsafe reflection, XXE) to achieve remote code execution during penetration tests.", "when_to_avoid": ["you need a general-purpose LDAP directory server", "you lack authorization to test the target system", "your target runs modern JDKs where remote classloading is disabled and no alternate payload applies"], "when_to_choose": ["you are doing an authorized penetration test of a Java application with JNDI endpoints", "you need ready-made payloads for Tomcat, Groovy, or WebSphere JNDI attack vectors", "you want a lightweight single-jar tool to demonstrate JNDI injection risks"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/rogue-jndi", "repo": "veracode-research/rogue-jndi", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:49:37.501339+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2e6f1a7f3620d6ab386ce771ccdea0c32796e0372045a274f4aa60c99d7554c", "fetched_at": "2026-08-28T04:03:32.148405+00:00", "kind": "readme", "missing": false, "url": "https://github.com/veracode-research/rogue-jndi"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:49:37.501339+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2e6f1a7f3620d6ab386ce771ccdea0c32796e0372045a274f4aa60c99d7554c", "fetched_at": "2026-08-28T04:03:32.148405+00:00", "kind": "readme", "missing": false, "url": "https://github.com/veracode-research/rogue-jndi"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:49:37.501339+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2e6f1a7f3620d6ab386ce771ccdea0c32796e0372045a274f4aa60c99d7554c", "fetched_at": "2026-08-28T04:03:32.148405+00:00", "kind": "readme", "missing": false, "url": "https://github.com/veracode-research/rogue-jndi"}], "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:03:32.148405+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:49:37.501339+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2e6f1a7f3620d6ab386ce771ccdea0c32796e0372045a274f4aa60c99d7554c", "fetched_at": "2026-08-28T04:03:32.148405+00:00", "kind": "readme", "missing": false, "url": "https://github.com/veracode-research/rogue-jndi"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:49:37.501339+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2e6f1a7f3620d6ab386ce771ccdea0c32796e0372045a274f4aa60c99d7554c", "fetched_at": "2026-08-28T04:03:32.148405+00:00", "kind": "readme", "missing": false, "url": "https://github.com/veracode-research/rogue-jndi"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:49:37.501339+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2e6f1a7f3620d6ab386ce771ccdea0c32796e0372045a274f4aa60c99d7554c", "fetched_at": "2026-08-28T04:03:32.148405+00:00", "kind": "readme", "missing": false, "url": "https://github.com/veracode-research/rogue-jndi"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:32.148405+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:49:37.501339+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2e6f1a7f3620d6ab386ce771ccdea0c32796e0372045a274f4aa60c99d7554c", "fetched_at": "2026-08-28T04:03:32.148405+00:00", "kind": "readme", "missing": false, "url": "https://github.com/veracode-research/rogue-jndi"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:49:37.501339+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2e6f1a7f3620d6ab386ce771ccdea0c32796e0372045a274f4aa60c99d7554c", "fetched_at": "2026-08-28T04:03:32.148405+00:00", "kind": "readme", "missing": false, "url": "https://github.com/veracode-research/rogue-jndi"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:49:37.501339+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2e6f1a7f3620d6ab386ce771ccdea0c32796e0372045a274f4aa60c99d7554c", "fetched_at": "2026-08-28T04:03:32.148405+00:00", "kind": "readme", "missing": false, "url": "https://github.com/veracode-research/rogue-jndi"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:49:37.501339+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2e6f1a7f3620d6ab386ce771ccdea0c32796e0372045a274f4aa60c99d7554c", "fetched_at": "2026-08-28T04:03:32.148405+00:00", "kind": "readme", "missing": false, "url": "https://github.com/veracode-research/rogue-jndi"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2485, "days_push": 1070, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}