{"adoption": {"forks": 498, "observed_at": "2026-08-28T04:07:17.431480+00:00", "stars": 2746}, "canonical_url": "https://ross.abutalabs.com/products/hackingthecloud", "card": {"archived": false, "artifact_type": "learning-resource", "description": "An encyclopedia for offensive and defensive security knowledge in cloud native technologies.", "domain": ["security", "cloud-computing", "penetration-testing", "tutorials"], "enriched": true, "function": ["security", "penetration-testing", "documentation"], "health_score": 91, "homepage": "https://hackingthe.cloud", "language": "Dockerfile", "license": "NOASSERTION", "license_family": "other", "maturity": "active", "member_repos": ["Hacking-the-Cloud/hackingthe.cloud"], "name": "Hacking-the-Cloud/hackingthe.cloud", "platform": ["self-hosted"], "pushed_at": "2026-06-16T14:03:34+00:00", "repo": "Hacking-the-Cloud/hackingthe.cloud", "stars": 2746, "tags": ["cloud-security", "aws", "azure", "gcp", "offensive-security", "encyclopedia", "kubernetes", "terraform", "docker-security", "devops", "web-server", "docker"], "topics": ["hacking", "aws", "hacking-cloud", "azure", "gcp", "penetration-testing", "cloud", "cloud-security", "aws-hacking"], "urls": [], "use_cases": ["learn cloud penetration testing techniques", "study AWS privilege escalation attacks", "find cloud security attack references for red team engagements", "defend cloud environments against known attack tactics", "research Azure and GCP security weaknesses", "contribute cloud security writeups to a community resource"], "what_it_is": "Hacking the Cloud is a community-maintained encyclopedia of offensive and defensive security techniques for cloud native technologies, covering AWS, Azure, GCP, and related tooling like Docker, Terraform, and Kubernetes. It is built as a static documentation site with volunteer-contributed articles on attacks, tactics, and cloud security knowledge.", "when_to_avoid": ["you need hands-on labs or guided training courses rather than reference articles", "you need comprehensive Azure or GCP coverage, which is still sparse", "you need a formal certification curriculum or structured learning path"], "when_to_choose": ["you need a free reference of cloud attack techniques for security assessments", "you are a defender studying how attackers exploit cloud environments", "you want community-curated cloud security knowledge across AWS, Azure, and GCP"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/hackingthecloud", "repo": "Hacking-the-Cloud/hackingthe.cloud", "role": "main", "score": 84}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T08:19:02.064849+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d794a938143b76a03f0b118ed9823b0c06b5ec42b7291a30464f7537ae04320d", "fetched_at": "2026-08-28T04:07:17.431480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hacking-the-Cloud/hackingthe.cloud"}, {"content_hash": "7f4b63aa06f9554a83496c255f30a4256cac1cc99c0a97ca8b02a3db4c12e4fc", "fetched_at": "2026-08-29T09:57:02.188237+00:00", "kind": "homepage", "missing": false, "url": "https://hackingthe.cloud"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T08:19:02.064849+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d794a938143b76a03f0b118ed9823b0c06b5ec42b7291a30464f7537ae04320d", "fetched_at": "2026-08-28T04:07:17.431480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hacking-the-Cloud/hackingthe.cloud"}, {"content_hash": "7f4b63aa06f9554a83496c255f30a4256cac1cc99c0a97ca8b02a3db4c12e4fc", "fetched_at": "2026-08-29T09:57:02.188237+00:00", "kind": "homepage", "missing": false, "url": "https://hackingthe.cloud"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T08:19:02.064849+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d794a938143b76a03f0b118ed9823b0c06b5ec42b7291a30464f7537ae04320d", "fetched_at": "2026-08-28T04:07:17.431480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hacking-the-Cloud/hackingthe.cloud"}, {"content_hash": "7f4b63aa06f9554a83496c255f30a4256cac1cc99c0a97ca8b02a3db4c12e4fc", "fetched_at": "2026-08-29T09:57:02.188237+00:00", "kind": "homepage", "missing": false, "url": "https://hackingthe.cloud"}], "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:07:17.431480+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T08:19:02.064849+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d794a938143b76a03f0b118ed9823b0c06b5ec42b7291a30464f7537ae04320d", "fetched_at": "2026-08-28T04:07:17.431480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hacking-the-Cloud/hackingthe.cloud"}, {"content_hash": "7f4b63aa06f9554a83496c255f30a4256cac1cc99c0a97ca8b02a3db4c12e4fc", "fetched_at": "2026-08-29T09:57:02.188237+00:00", "kind": "homepage", "missing": false, "url": "https://hackingthe.cloud"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T08:19:02.064849+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d794a938143b76a03f0b118ed9823b0c06b5ec42b7291a30464f7537ae04320d", "fetched_at": "2026-08-28T04:07:17.431480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hacking-the-Cloud/hackingthe.cloud"}, {"content_hash": "7f4b63aa06f9554a83496c255f30a4256cac1cc99c0a97ca8b02a3db4c12e4fc", "fetched_at": "2026-08-29T09:57:02.188237+00:00", "kind": "homepage", "missing": false, "url": "https://hackingthe.cloud"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T08:19:02.064849+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d794a938143b76a03f0b118ed9823b0c06b5ec42b7291a30464f7537ae04320d", "fetched_at": "2026-08-28T04:07:17.431480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hacking-the-Cloud/hackingthe.cloud"}, {"content_hash": "7f4b63aa06f9554a83496c255f30a4256cac1cc99c0a97ca8b02a3db4c12e4fc", "fetched_at": "2026-08-29T09:57:02.188237+00:00", "kind": "homepage", "missing": false, "url": "https://hackingthe.cloud"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:17.431480+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T08:19:02.064849+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d794a938143b76a03f0b118ed9823b0c06b5ec42b7291a30464f7537ae04320d", "fetched_at": "2026-08-28T04:07:17.431480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hacking-the-Cloud/hackingthe.cloud"}, {"content_hash": "7f4b63aa06f9554a83496c255f30a4256cac1cc99c0a97ca8b02a3db4c12e4fc", "fetched_at": "2026-08-29T09:57:02.188237+00:00", "kind": "homepage", "missing": false, "url": "https://hackingthe.cloud"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T08:19:02.064849+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d794a938143b76a03f0b118ed9823b0c06b5ec42b7291a30464f7537ae04320d", "fetched_at": "2026-08-28T04:07:17.431480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hacking-the-Cloud/hackingthe.cloud"}, {"content_hash": "7f4b63aa06f9554a83496c255f30a4256cac1cc99c0a97ca8b02a3db4c12e4fc", "fetched_at": "2026-08-29T09:57:02.188237+00:00", "kind": "homepage", "missing": false, "url": "https://hackingthe.cloud"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T08:19:02.064849+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d794a938143b76a03f0b118ed9823b0c06b5ec42b7291a30464f7537ae04320d", "fetched_at": "2026-08-28T04:07:17.431480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hacking-the-Cloud/hackingthe.cloud"}, {"content_hash": "7f4b63aa06f9554a83496c255f30a4256cac1cc99c0a97ca8b02a3db4c12e4fc", "fetched_at": "2026-08-29T09:57:02.188237+00:00", "kind": "homepage", "missing": false, "url": "https://hackingthe.cloud"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T08:19:02.064849+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "d794a938143b76a03f0b118ed9823b0c06b5ec42b7291a30464f7537ae04320d", "fetched_at": "2026-08-28T04:07:17.431480+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Hacking-the-Cloud/hackingthe.cloud"}, {"content_hash": "7f4b63aa06f9554a83496c255f30a4256cac1cc99c0a97ca8b02a3db4c12e4fc", "fetched_at": "2026-08-29T09:57:02.188237+00:00", "kind": "homepage", "missing": false, "url": "https://hackingthe.cloud"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 87, "longevity": 100, "rhythm": 70}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2235, "days_push": 78, "days_rel": 120, "gap_med": 83.5, "n_releases_24m": 7}, "score": 84, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}