{"adoption": {"forks": 75, "observed_at": "2026-08-28T04:03:45.186394+00:00", "stars": 1144}, "canonical_url": "https://ross.abutalabs.com/products/hyacinth", "card": {"archived": false, "artifact_type": "application", "description": "一款java漏洞集合工具", "domain": ["security", "penetration-testing", "developer-tools"], "enriched": true, "function": ["penetration-testing", "security", "gui"], "health_score": 74, "homepage": null, "language": null, "license": null, "license_family": "other", "maturity": "active", "member_repos": ["pureqh/Hyacinth"], "name": "pureqh/Hyacinth", "platform": ["windows", "jvm", "cross-platform"], "pushed_at": "2026-01-13T08:48:28+00:00", "repo": "pureqh/Hyacinth", "stars": 1144, "tags": ["vulnerability-exploitation", "red-team", "webshell-generator", "waf-bypass", "java-deserialization", "macos", "desktop"], "topics": [], "urls": [], "use_cases": ["detect and exploit java deserialization vulnerabilities", "brute force shiro keys", "generate obfuscated webshells to bypass waf", "test struts2 and fast vulnerabilities", "consolidate multiple exploit jars into one gui tool", "red team attack-defense exercise toolkit"], "what_it_is": "Hyacinth is a Java-based GUI tool that bundles detection and exploitation modules for common Java vulnerabilities such as Struts2, Fast, Weblogic, Shiro, Log4j, JBoss, and SpringCloud. It also includes a webshell generation module (Bypass) with payload obfuscation for WAF evasion, designed for red team and attack-defense exercises.", "when_to_avoid": ["you need a stable, licensed, production security product", "you require support for very recent JDK runtimes without quirks", "you need automated CI-based vulnerability scanning rather than manual exploitation"], "when_to_choose": ["you need an all-in-one GUI for common Java vulnerability exploitation during authorized penetration tests", "you want payload obfuscation to evade WAFs", "you work on Windows or macOS and want a ready-to-run jar"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/hyacinth", "repo": "pureqh/Hyacinth", "role": "main", "score": 55}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:34:45.608674+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3fdce5bd4bd4ba06718d1af1b2af4b2b726412ab00cef4c5cbbad974a06db3e0", "fetched_at": "2026-08-28T04:03:45.186394+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pureqh/Hyacinth"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:34:45.608674+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3fdce5bd4bd4ba06718d1af1b2af4b2b726412ab00cef4c5cbbad974a06db3e0", "fetched_at": "2026-08-28T04:03:45.186394+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pureqh/Hyacinth"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:34:45.608674+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3fdce5bd4bd4ba06718d1af1b2af4b2b726412ab00cef4c5cbbad974a06db3e0", "fetched_at": "2026-08-28T04:03:45.186394+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pureqh/Hyacinth"}], "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:45.186394+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:34:45.608674+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3fdce5bd4bd4ba06718d1af1b2af4b2b726412ab00cef4c5cbbad974a06db3e0", "fetched_at": "2026-08-28T04:03:45.186394+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pureqh/Hyacinth"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:34:45.608674+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3fdce5bd4bd4ba06718d1af1b2af4b2b726412ab00cef4c5cbbad974a06db3e0", "fetched_at": "2026-08-28T04:03:45.186394+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pureqh/Hyacinth"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:34:45.608674+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3fdce5bd4bd4ba06718d1af1b2af4b2b726412ab00cef4c5cbbad974a06db3e0", "fetched_at": "2026-08-28T04:03:45.186394+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pureqh/Hyacinth"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:45.186394+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:34:45.608674+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3fdce5bd4bd4ba06718d1af1b2af4b2b726412ab00cef4c5cbbad974a06db3e0", "fetched_at": "2026-08-28T04:03:45.186394+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pureqh/Hyacinth"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:34:45.608674+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3fdce5bd4bd4ba06718d1af1b2af4b2b726412ab00cef4c5cbbad974a06db3e0", "fetched_at": "2026-08-28T04:03:45.186394+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pureqh/Hyacinth"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:34:45.608674+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3fdce5bd4bd4ba06718d1af1b2af4b2b726412ab00cef4c5cbbad974a06db3e0", "fetched_at": "2026-08-28T04:03:45.186394+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pureqh/Hyacinth"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:34:45.608674+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "3fdce5bd4bd4ba06718d1af1b2af4b2b726412ab00cef4c5cbbad974a06db3e0", "fetched_at": "2026-08-28T04:03:45.186394+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pureqh/Hyacinth"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 62, "longevity": 77, "rhythm": 33}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1083, "days_push": 232, "days_rel": 232, "gap_med": 184.5, "n_releases_24m": 3}, "score": 55, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}