{"adoption": {"forks": 258, "observed_at": "2026-08-28T04:05:37.869585+00:00", "stars": 1799}, "canonical_url": "https://ross.abutalabs.com/products/gotestwaf", "card": {"archived": false, "artifact_type": "cli-tool", "description": "An open-source project in Golang to asess different API Security tools and WAF for detection logic and bypasses", "domain": ["security", "penetration-testing", "apis", "web-development"], "enriched": true, "function": ["penetration-testing", "security", "testing", "http-client"], "health_score": 55, "homepage": "https://lab.wallarm.com/test-your-waf-before-hackers/", "language": "Go", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["wallarm/gotestwaf"], "name": "wallarm/gotestwaf", "platform": ["windows", "go", "cli"], "pushed_at": "2025-07-31T14:13:27+00:00", "repo": "wallarm/gotestwaf", "stars": 1799, "tags": ["waf-testing", "api-security", "owasp", "attack-simulation", "bypass-testing", "security-evaluation", "linux", "macos", "docker"], "topics": ["owasp", "api-security", "security", "bugbounty", "security-tools", "waf", "web-application-security", "web-application-firewall", "security-testing", "graphql-security", "grpc-security", "rest-security"], "urls": [], "use_cases": ["test how well my WAF detects OWASP attacks", "evaluate API security proxy detection coverage before deployment", "find bypasses in a web application firewall", "benchmark and compare different WAF solutions", "run regression tests against OWASP Core Rule Set", "generate a PDF report of WAF false negatives", "test GraphQL and gRPC security filtering"], "what_it_is": "GoTestWAF is a Go-based tool that simulates OWASP and API attacks (SQL injection, XSS, etc.) across REST, GraphQL, gRPC, SOAP, and XMLRPC protocols to evaluate WAFs, IPS, API gateways, and API security proxies. It generates encoded malicious payloads placed in various parts of HTTP requests and produces evaluation reports on detection coverage.", "when_to_avoid": ["you need a full dynamic application security testing (DAST) scanner for your application itself", "you want continuous runtime protection rather than point-in-time testing", "you need a managed cloud service instead of a self-run tool"], "when_to_choose": ["you need to assess detection logic and bypass resistance of a WAF, IPS, or API gateway", "you want protocol-specific attack testing across REST, GraphQL, gRPC, SOAP, and XMLRPC", "you need an automated, repeatable security evaluation with reports"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/gotestwaf", "repo": "wallarm/gotestwaf", "role": "main", "score": 41}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:22:18.375972+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e138eddd857878b8d4ddb75384f689ab7da0101e8e9f6707e6b65a292e59ce47", "fetched_at": "2026-08-28T04:05:37.869585+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wallarm/gotestwaf"}, {"content_hash": "c0461559e8eeddc7833c608c909e27ace26565e11b34ff7c6700dfdd88dba79f", "fetched_at": "2026-08-29T11:01:11.360485+00:00", "kind": "homepage", "missing": false, "url": "https://lab.wallarm.com/test-your-waf-before-hackers/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:22:18.375972+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e138eddd857878b8d4ddb75384f689ab7da0101e8e9f6707e6b65a292e59ce47", "fetched_at": "2026-08-28T04:05:37.869585+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wallarm/gotestwaf"}, {"content_hash": "c0461559e8eeddc7833c608c909e27ace26565e11b34ff7c6700dfdd88dba79f", "fetched_at": "2026-08-29T11:01:11.360485+00:00", "kind": "homepage", "missing": false, "url": "https://lab.wallarm.com/test-your-waf-before-hackers/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:22:18.375972+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e138eddd857878b8d4ddb75384f689ab7da0101e8e9f6707e6b65a292e59ce47", "fetched_at": "2026-08-28T04:05:37.869585+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wallarm/gotestwaf"}, {"content_hash": "c0461559e8eeddc7833c608c909e27ace26565e11b34ff7c6700dfdd88dba79f", "fetched_at": "2026-08-29T11:01:11.360485+00:00", "kind": "homepage", "missing": false, "url": "https://lab.wallarm.com/test-your-waf-before-hackers/"}], "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:37.869585+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:22:18.375972+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e138eddd857878b8d4ddb75384f689ab7da0101e8e9f6707e6b65a292e59ce47", "fetched_at": "2026-08-28T04:05:37.869585+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wallarm/gotestwaf"}, {"content_hash": "c0461559e8eeddc7833c608c909e27ace26565e11b34ff7c6700dfdd88dba79f", "fetched_at": "2026-08-29T11:01:11.360485+00:00", "kind": "homepage", "missing": false, "url": "https://lab.wallarm.com/test-your-waf-before-hackers/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:22:18.375972+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e138eddd857878b8d4ddb75384f689ab7da0101e8e9f6707e6b65a292e59ce47", "fetched_at": "2026-08-28T04:05:37.869585+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wallarm/gotestwaf"}, {"content_hash": "c0461559e8eeddc7833c608c909e27ace26565e11b34ff7c6700dfdd88dba79f", "fetched_at": "2026-08-29T11:01:11.360485+00:00", "kind": "homepage", "missing": false, "url": "https://lab.wallarm.com/test-your-waf-before-hackers/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:22:18.375972+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e138eddd857878b8d4ddb75384f689ab7da0101e8e9f6707e6b65a292e59ce47", "fetched_at": "2026-08-28T04:05:37.869585+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wallarm/gotestwaf"}, {"content_hash": "c0461559e8eeddc7833c608c909e27ace26565e11b34ff7c6700dfdd88dba79f", "fetched_at": "2026-08-29T11:01:11.360485+00:00", "kind": "homepage", "missing": false, "url": "https://lab.wallarm.com/test-your-waf-before-hackers/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:37.869585+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:22:18.375972+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e138eddd857878b8d4ddb75384f689ab7da0101e8e9f6707e6b65a292e59ce47", "fetched_at": "2026-08-28T04:05:37.869585+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wallarm/gotestwaf"}, {"content_hash": "c0461559e8eeddc7833c608c909e27ace26565e11b34ff7c6700dfdd88dba79f", "fetched_at": "2026-08-29T11:01:11.360485+00:00", "kind": "homepage", "missing": false, "url": "https://lab.wallarm.com/test-your-waf-before-hackers/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:22:18.375972+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e138eddd857878b8d4ddb75384f689ab7da0101e8e9f6707e6b65a292e59ce47", "fetched_at": "2026-08-28T04:05:37.869585+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wallarm/gotestwaf"}, {"content_hash": "c0461559e8eeddc7833c608c909e27ace26565e11b34ff7c6700dfdd88dba79f", "fetched_at": "2026-08-29T11:01:11.360485+00:00", "kind": "homepage", "missing": false, "url": "https://lab.wallarm.com/test-your-waf-before-hackers/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:22:18.375972+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e138eddd857878b8d4ddb75384f689ab7da0101e8e9f6707e6b65a292e59ce47", "fetched_at": "2026-08-28T04:05:37.869585+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wallarm/gotestwaf"}, {"content_hash": "c0461559e8eeddc7833c608c909e27ace26565e11b34ff7c6700dfdd88dba79f", "fetched_at": "2026-08-29T11:01:11.360485+00:00", "kind": "homepage", "missing": false, "url": "https://lab.wallarm.com/test-your-waf-before-hackers/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:22:18.375972+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e138eddd857878b8d4ddb75384f689ab7da0101e8e9f6707e6b65a292e59ce47", "fetched_at": "2026-08-28T04:05:37.869585+00:00", "kind": "readme", "missing": false, "url": "https://github.com/wallarm/gotestwaf"}, {"content_hash": "c0461559e8eeddc7833c608c909e27ace26565e11b34ff7c6700dfdd88dba79f", "fetched_at": "2026-08-29T11:01:11.360485+00:00", "kind": "homepage", "missing": false, "url": "https://lab.wallarm.com/test-your-waf-before-hackers/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 34, "longevity": 100, "rhythm": 17}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2409, "days_push": 398, "days_rel": 398, "gap_med": 141.0, "n_releases_24m": 3}, "score": 41, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}