{"adoption": {"forks": 382, "observed_at": "2026-08-28T04:03:19.573948+00:00", "stars": 1038}, "canonical_url": "https://ross.abutalabs.com/products/hackazon", "card": {"archived": true, "artifact_type": "application", "description": "A modern vulnerable web app", "domain": ["security", "web-development", "penetration-testing"], "enriched": true, "function": ["security", "web-framework", "http-server"], "health_score": 10, "homepage": null, "language": "HTML", "license": "Apache-2.0", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["rapid7/hackazon"], "name": "rapid7/hackazon", "platform": ["php"], "pushed_at": "2021-03-11T20:02:56+00:00", "repo": "rapid7/hackazon", "stars": 1038, "tags": ["vulnerable-web-app", "security-training", "pentest-target", "sql-injection", "xss", "rest-api", "deliberately-insecure", "linux", "web-server"], "topics": [], "urls": [], "use_cases": ["practice exploiting sql injection on a realistic web app", "test web application security scanners against a vulnerable target", "train security teams on xss and api vulnerabilities", "test rest api security testing tools", "set up a safe vulnerable storefront for pentest practice", "learn to secure shopping cart workflows"], "what_it_is": "Hackazon is a deliberately vulnerable online storefront web application built with PHP, AJAX, and RESTful APIs. It serves as a training and testing ground for IT security professionals to practice discovering vulnerabilities like SQL injection and cross-site scripting.", "when_to_avoid": ["you need a production or secure e-commerce platform", "you require modern PHP versions or actively maintained dependencies", "you want a currently developed project with recent updates"], "when_to_choose": ["you need a realistic vulnerable web application for security testing or training", "you want to evaluate web app scanners and DAST tools against AJAX and REST interfaces", "you are teaching application security with hands-on exploitation exercises"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/hackazon", "repo": "rapid7/hackazon", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:04:18.520681+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6480ed08b0bf8c0f2a4aa56ba96df6678dc8dd78e832d404ae303d0cbc244ec3", "fetched_at": "2026-08-28T04:03:19.573948+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rapid7/hackazon"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:04:18.520681+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6480ed08b0bf8c0f2a4aa56ba96df6678dc8dd78e832d404ae303d0cbc244ec3", "fetched_at": "2026-08-28T04:03:19.573948+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rapid7/hackazon"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:04:18.520681+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6480ed08b0bf8c0f2a4aa56ba96df6678dc8dd78e832d404ae303d0cbc244ec3", "fetched_at": "2026-08-28T04:03:19.573948+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rapid7/hackazon"}], "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:19.573948+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:04:18.520681+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6480ed08b0bf8c0f2a4aa56ba96df6678dc8dd78e832d404ae303d0cbc244ec3", "fetched_at": "2026-08-28T04:03:19.573948+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rapid7/hackazon"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:04:18.520681+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6480ed08b0bf8c0f2a4aa56ba96df6678dc8dd78e832d404ae303d0cbc244ec3", "fetched_at": "2026-08-28T04:03:19.573948+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rapid7/hackazon"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:04:18.520681+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6480ed08b0bf8c0f2a4aa56ba96df6678dc8dd78e832d404ae303d0cbc244ec3", "fetched_at": "2026-08-28T04:03:19.573948+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rapid7/hackazon"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:19.573948+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:04:18.520681+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6480ed08b0bf8c0f2a4aa56ba96df6678dc8dd78e832d404ae303d0cbc244ec3", "fetched_at": "2026-08-28T04:03:19.573948+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rapid7/hackazon"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:04:18.520681+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6480ed08b0bf8c0f2a4aa56ba96df6678dc8dd78e832d404ae303d0cbc244ec3", "fetched_at": "2026-08-28T04:03:19.573948+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rapid7/hackazon"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:04:18.520681+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6480ed08b0bf8c0f2a4aa56ba96df6678dc8dd78e832d404ae303d0cbc244ec3", "fetched_at": "2026-08-28T04:03:19.573948+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rapid7/hackazon"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:04:18.520681+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "6480ed08b0bf8c0f2a4aa56ba96df6678dc8dd78e832d404ae303d0cbc244ec3", "fetched_at": "2026-08-28T04:03:19.573948+00:00", "kind": "readme", "missing": false, "url": "https://github.com/rapid7/hackazon"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4086, "days_push": 2001, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}