{"adoption": {"forks": 620, "observed_at": "2026-08-28T04:06:53.560448+00:00", "stars": 2464}, "canonical_url": "https://ross.abutalabs.com/products/mhn", "card": {"archived": false, "artifact_type": "application", "description": "Modern Honey Network", "domain": ["security", "self-hosted", "monitoring", "networking"], "enriched": true, "function": ["security", "monitoring", "logging", "http-server", "api-framework"], "health_score": 20, "homepage": null, "language": "Python", "license": "LGPL-2.1", "license_family": "copyleft", "maturity": "maintenance", "member_repos": ["pwnlandia/mhn"], "name": "pwnlandia/mhn", "platform": ["python", "self-hosted"], "pushed_at": "2024-11-30T10:33:08+00:00", "repo": "pwnlandia/mhn", "stars": 2464, "tags": ["honeypot", "intrusion-detection", "snort", "threat-intelligence", "flask", "sensor-management", "linux"], "topics": ["hacktoberfest"], "urls": [], "use_cases": ["deploy honeypot sensors quickly across multiple servers", "centralize collection of honeypot attack logs", "manage and download Snort rules from a web UI", "view recent attacks against my network", "set up a honeypot management server on Ubuntu", "collect intrusion detection events from Cowrie, Dionaea, or Glastopf"], "what_it_is": "Modern Honey Network (MHN) is a centralized Flask-based server for managing honeypot sensors and collecting their attack data. It exposes an HTTP API for sensor registration, deploy script distribution, Snort rule management, and intrusion detection log collection, viewable through a web interface.", "when_to_avoid": ["you need a modern, actively developed platform (the project is in partial rewrite/maintenance)", "you are not on a supported Linux distribution like Ubuntu 16.04/18.04 or CentOS 6", "you need honeypot software itself rather than a management server"], "when_to_choose": ["you want a centralized dashboard and API for multiple honeypot sensors", "you need automated honeypot deployment scripts and Snort rule management", "you run Ubuntu/CentOS servers and want self-hosted threat data collection"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/mhn", "repo": "pwnlandia/mhn", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:29:16.187330+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ec3889ae5fa7da7c3a63b9782152013e195c4ea78dc1ac9bd98d70c50626e067", "fetched_at": "2026-08-28T04:06:53.560448+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pwnlandia/mhn"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:29:16.187330+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ec3889ae5fa7da7c3a63b9782152013e195c4ea78dc1ac9bd98d70c50626e067", "fetched_at": "2026-08-28T04:06:53.560448+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pwnlandia/mhn"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:29:16.187330+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ec3889ae5fa7da7c3a63b9782152013e195c4ea78dc1ac9bd98d70c50626e067", "fetched_at": "2026-08-28T04:06:53.560448+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pwnlandia/mhn"}], "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:53.560448+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:29:16.187330+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ec3889ae5fa7da7c3a63b9782152013e195c4ea78dc1ac9bd98d70c50626e067", "fetched_at": "2026-08-28T04:06:53.560448+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pwnlandia/mhn"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:29:16.187330+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ec3889ae5fa7da7c3a63b9782152013e195c4ea78dc1ac9bd98d70c50626e067", "fetched_at": "2026-08-28T04:06:53.560448+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pwnlandia/mhn"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:29:16.187330+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ec3889ae5fa7da7c3a63b9782152013e195c4ea78dc1ac9bd98d70c50626e067", "fetched_at": "2026-08-28T04:06:53.560448+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pwnlandia/mhn"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:53.560448+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:29:16.187330+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ec3889ae5fa7da7c3a63b9782152013e195c4ea78dc1ac9bd98d70c50626e067", "fetched_at": "2026-08-28T04:06:53.560448+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pwnlandia/mhn"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:29:16.187330+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ec3889ae5fa7da7c3a63b9782152013e195c4ea78dc1ac9bd98d70c50626e067", "fetched_at": "2026-08-28T04:06:53.560448+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pwnlandia/mhn"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:29:16.187330+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ec3889ae5fa7da7c3a63b9782152013e195c4ea78dc1ac9bd98d70c50626e067", "fetched_at": "2026-08-28T04:06:53.560448+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pwnlandia/mhn"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:29:16.187330+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ec3889ae5fa7da7c3a63b9782152013e195c4ea78dc1ac9bd98d70c50626e067", "fetched_at": "2026-08-28T04:06:53.560448+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pwnlandia/mhn"}], "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": 4480, "days_push": 641, "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}}