crossdomain.xml Detected

  • PCI 3.2-6.5.1
  • CWE 200
  • CAPEC 152
  • OWASP 2017-A6
  • WASC 33
  • CWE 425
  • WASC 34

Exposed or misconfigured crossdomain.xml files occur when Adobe Flash or similar cross-domain policies are overly permissive or publicly accessible. These files define which external domains are allowed to interact with resources on a server. Misconfigurations can allow unauthorized domains to access sensitive data, perform actions on behalf of users, or exploit application vulnerabilities. Attackers can abuse this to bypass same-origin policies, steal information, or launch cross-domain attacks.

Common patterns leading to crossdomain.xml vulnerabilities:

  • Setting allow-access-from domain="*" in crossdomain.xml, granting access to all domains.
  • Using overly broad permissions in combination with sensitive resources or APIs.
  • Placing crossdomain.xml in public web root without restriction.
  • Legacy Flash applications or other clients relying on permissive cross-domain policies.

Impacts:

  • Cross-Domain Data Access: Unauthorized domains can read sensitive data from the application.
  • Session Hijacking: Attackers may exploit cross-domain requests to access user sessions.
  • Information Disclosure: Confidential resources can be accessed by malicious actors.
  • Facilitates Further Attacks: Knowledge of cross-domain policies can aid in XSS, CSRF, or API abuse.

Detection indicators:

  • Publicly accessible crossdomain.xml file at the root of the domain.
  • Presence of wildcard * in domain permissions.
  • Security scans flagging overly permissive cross-domain policies.
Remediation

Mitigation focuses on restricting access and configuring policies securely:

  1. Restrict Domain Access
    Only allow trusted domains in crossdomain.xml using allow-access-from domain="trusted.com".

  2. Limit Resource Access
    Avoid exposing sensitive files or APIs to cross-domain requests.

  3. Remove Unused Policies
    If Flash or similar clients are no longer used, remove crossdomain.xml entirely.

  4. Use HTTPS
    Ensure resources are accessed over secure channels to prevent interception.

  5. Monitor and Audit Cross-Domain Requests
    Review requests originating from other domains to detect potential abuse.

  6. Security Testing
    Include checks for permissive crossdomain.xml policies in penetration tests.

  7. Educate Developers
    Train teams to understand cross-domain risks and enforce least privilege policies.

References