Skip to content

Fortinet FortiNAC - Arbitrary File Write

ID: CVE-2022-39952

Severity: critical

Author: dwisiswant0

Tags: cve,cve2022,fortinet,fortinac,fileupload,rce,intrusive

Fortinet FortiNAC is susceptible to arbitrary file write. An external control of the file name or path can allow an attacker to execute unauthorized code or commands via specifically crafted HTTP request, thus making it possible to obtain sensitive information, modify data, and/or execute unauthorized operations. Affected versions are 9.4.0, 9.2.0 through 9.2.5, 9.1.0 through 9.1.7, 8.8.0 through 8.8.11, 8.7.0 through 8.7.6, 8.6.0 through 8.6.5, 8.5.0 through 8.5.4, and 8.3.7.

id: CVE-2022-39952
info:
name: Fortinet FortiNAC - Arbitrary File Write
author: dwisiswant0
severity: critical
description: |
Fortinet FortiNAC is susceptible to arbitrary file write. An external control of the file name or path can allow an attacker to execute unauthorized code or commands via specifically crafted HTTP request, thus making it possible to obtain sensitive information, modify data, and/or execute unauthorized operations. Affected versions are 9.4.0, 9.2.0 through 9.2.5, 9.1.0 through 9.1.7, 8.8.0 through 8.8.11, 8.7.0 through 8.7.6, 8.6.0 through 8.6.5, 8.5.0 through 8.5.4, and 8.3.7.
impact: |
Successful exploitation of this vulnerability could lead to unauthorized access, data loss.
remediation: Upgrade to 9.4.1, 9.2.6, 9.2.6, 9.1.8, 7.2.0 or above.
reference:
- https://fortiguard.com/psirt/FG-IR-22-300
- https://www.horizon3.ai/fortinet-fortinac-cve-2022-39952-deep-dive-and-iocs/
- https://github.com/horizon3ai/CVE-2022-39952
- https://nvd.nist.gov/vuln/detail/CVE-2022-39952
- https://github.com/1f3lse/taiE
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-39952
cwe-id: CWE-668,CWE-73
epss-score: 0.96445
epss-percentile: 0.99548
cpe: cpe:2.3:a:fortinet:fortinac:*:*:*:*:*:*:*:*
metadata:
verified: true
max-request: 1
vendor: fortinet
product: fortinac
shodan-query:
- title:"FortiNAC"
- http.title:"fortinac"
fofa-query: title="fortinac"
google-query: intitle:"fortinac"
tags: cve,cve2022,fortinet,fortinac,fileupload,rce,intrusive
variables:
boundaryId: "{{hex_encode(rand_text_alphanumeric(16))}}"
http:
- method: POST
path:
- "{{BaseURL}}/configWizard/keyUpload.jsp"
body: |
--{{boundaryId}}
Content-Disposition: form-data; name="key"; filename="{{to_lower(rand_text_alphanumeric(8))}}.zip"
{{randstr}}
--{{boundaryId}}--
headers:
Content-Type: "multipart/form-data; boundary={{boundaryId}}"
matchers-condition: and
matchers:
- type: word
part: body
words:
- "zipUploadSuccess"
- "SuccessfulUpload"
condition: and
- type: word
part: header
words:
- text/html
- type: status
status:
- 200
# digest: 4a0a00473045022100eafef1c375139825bb3a143b302a377ca50cb7fad95456905507ede139c3d00c02206e8ab574ae18aaf911beb6c35dc0d59b6503f0d748dc9ccc3f10d5a7f667d8ec:922c64590222798bb761d5b6d8e72950

This template is used to detect vulnerabilities in web applications. It can be used with the Nuclei tool to scan for specific patterns or behaviors.

Terminal window
$ nuclei -u "URL" -t "http/cves/2022/CVE-2022-39952.yaml"

View on Github