id: wordpress-woo-cart-abandonment-recovery

info:
  name: WooCommerce Cart Abandonment Recovery Detection
  author: ricardomaia
  severity: info
  reference:
    - https://wordpress.org/plugins/woo-cart-abandonment-recovery/
  metadata:
    max-request: 1
    plugin_namespace: woo-cart-abandonment-recovery
    wpscan: https://wpscan.com/plugin/woo-cart-abandonment-recovery
  tags: tech,wordpress,wp-plugin,top-200

http:
  - method: GET
    path:
      - "{{BaseURL}}/wp-content/plugins/woo-cart-abandonment-recovery/readme.txt"

    payloads:
      last_version: helpers/wordpress/plugins/woo-cart-abandonment-recovery.txt

    extractors:
      - type: regex
        part: body
        internal: true
        name: internal_detected_version
        group: 1
        regex:
          - '(?i)Stable.tag:\s?([\w.]+)'

      - type: regex
        part: body
        name: detected_version
        group: 1
        regex:
          - '(?i)Stable.tag:\s?([\w.]+)'

    matchers-condition: or
    matchers:
      - type: dsl
        name: "outdated_version"
        dsl:
          - compare_versions(internal_detected_version, concat("< ", last_version))

      - type: regex
        part: body
        regex:
          - '(?i)Stable.tag:\s?([\w.]+)'

# digest: 4a0a00473045022100c9fd62ec665626dc73d554db4b4ca80cbf5f618be136d002c3f27fe9f47e4e89022062b39db55bfb2a893a5af0b9f54ef25a40b09e391851f7b8c6bdf3a7d873adb7:922c64590222798bb761d5b6d8e72950
