{"adoption": {"forks": 361, "observed_at": "2026-08-28T04:05:27.873354+00:00", "stars": 1723}, "canonical_url": "https://ross.abutalabs.com/products/php_bugs", "card": {"archived": false, "artifact_type": "learning-resource", "description": "PHP代码审计分段讲解", "domain": ["security", "penetration-testing", "education", "tutorials"], "enriched": true, "function": ["security", "penetration-testing", "developer-tools"], "health_score": 20, "homepage": null, "language": "PHP", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["bowu678/php_bugs"], "name": "bowu678/php_bugs", "platform": ["php", "self-hosted"], "pushed_at": "2022-08-29T12:22:01+00:00", "repo": "bowu678/php_bugs", "stars": 1723, "tags": ["php-code-audit", "ctf-challenges", "vulnerability-analysis", "web-security", "security-training", "web-server"], "topics": [], "urls": [], "use_cases": ["learn php code auditing from scratch", "practice ctf web challenges for php vulnerabilities", "understand php sensitive functions and type juggling", "study sql injection bypass techniques like with rollup", "train junior security researchers on vulnerability principles", "set up local vulnerable php apps for static analysis practice"], "what_it_is": "A curated collection of PHP code audit exercises explained step by step, based on CTF-style challenges covering sensitive functions and PHP language quirks. Each example demonstrates a specific vulnerability class such as variable overwrite, SQL injection bypasses, and type-juggling tricks, with source code deployable locally.", "when_to_avoid": ["you need production-ready security tooling or scanners", "you require a maintained project with a license and active releases", "you are not working with PHP or web security"], "when_to_choose": ["you are a beginner learning PHP security auditing", "you want hands-on CTF-style PHP vulnerability exercises", "you need examples of PHP-specific quirks and bypasses"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/php_bugs", "repo": "bowu678/php_bugs", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:33:57.064818+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fafcc37571a88e80e0f56073301d97161b5759c923b1e2591adacfbe0d61268b", "fetched_at": "2026-08-28T04:05:27.873354+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bowu678/php_bugs"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:33:57.064818+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fafcc37571a88e80e0f56073301d97161b5759c923b1e2591adacfbe0d61268b", "fetched_at": "2026-08-28T04:05:27.873354+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bowu678/php_bugs"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:33:57.064818+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fafcc37571a88e80e0f56073301d97161b5759c923b1e2591adacfbe0d61268b", "fetched_at": "2026-08-28T04:05:27.873354+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bowu678/php_bugs"}], "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:05:27.873354+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:33:57.064818+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fafcc37571a88e80e0f56073301d97161b5759c923b1e2591adacfbe0d61268b", "fetched_at": "2026-08-28T04:05:27.873354+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bowu678/php_bugs"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:33:57.064818+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fafcc37571a88e80e0f56073301d97161b5759c923b1e2591adacfbe0d61268b", "fetched_at": "2026-08-28T04:05:27.873354+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bowu678/php_bugs"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:33:57.064818+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fafcc37571a88e80e0f56073301d97161b5759c923b1e2591adacfbe0d61268b", "fetched_at": "2026-08-28T04:05:27.873354+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bowu678/php_bugs"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:27.873354+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:33:57.064818+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fafcc37571a88e80e0f56073301d97161b5759c923b1e2591adacfbe0d61268b", "fetched_at": "2026-08-28T04:05:27.873354+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bowu678/php_bugs"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:33:57.064818+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fafcc37571a88e80e0f56073301d97161b5759c923b1e2591adacfbe0d61268b", "fetched_at": "2026-08-28T04:05:27.873354+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bowu678/php_bugs"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:33:57.064818+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fafcc37571a88e80e0f56073301d97161b5759c923b1e2591adacfbe0d61268b", "fetched_at": "2026-08-28T04:05:27.873354+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bowu678/php_bugs"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:33:57.064818+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fafcc37571a88e80e0f56073301d97161b5759c923b1e2591adacfbe0d61268b", "fetched_at": "2026-08-28T04:05:27.873354+00:00", "kind": "readme", "missing": false, "url": "https://github.com/bowu678/php_bugs"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3282, "days_push": 1465, "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}}