Bug Bounty, Bug Hunting, Command Injection, Охота за ошибками

#43 Bug Bounty. Command Injection.

Здравствуйте, дорогие друзья.

Введение

Command Injection была очень популярна в свое время, но Вы не найдете ее в современном приложении. Тем не менее, время от времени я нахожу действительно плохие приложения, которые уязвимы для этой уязвимости. Злоумышленники могут использовать эту уязвимость для получения удаленного выполнения кода (RCE) на своей цели.

Command Injection

Иногда приложения принимают пользовательский ввод и передают его в качестве аргумента в командной строке. Передача пользовательского ввода в командную строку всегда плохая идея, и ее следует избегать. В зависимости от операционной системы, Вы можете использовать несколько методов для выполнения дополнительных команд, что позволяет злоумышленнику, чтобы получить RCE.

Пример запуска каждой из этих команд можно найти ниже. Примечание: они были запущены на машине с Linux.

Command injection examples

Если Вы подозреваете, что приложение уязвимо для внедрения команд, Вы можете легко проверить эту уязвимость, используя описанные выше методы. Пример можно найти ниже:

Command injection request and response

Как видите, я ввел команду «echo hi» и получил ответ. Это очень сильный показатель того, что приложение уязвимо для инъекции команд. Однако, подавляющее большинство этих багов слепые, и Вы не увидите результат. При внедрении слепой команды Вы не можете использовать команду «echo» для проверки уязвимости, так как вывод не отображается. Вы можете попытаться пропинговать, выполнить поиск DNS или сделать HTTP-запрос на Вашем компьютере. Затем Вы слушаете на своей машине запрос от цели. Если Вы получите request, то Вы уже знаете, что цель уязвима для слепого внедрения команд. Примечание: для для этого Вам понадобится общедоступный IP-адрес, чтобы Вы могли получить обратный звонок от целевого сервера.

Вывод

Внедрение команд — это более старая уязвимость, которую я редко нахожу. Если Вы найдете эту уязвимость, это, скорее всего, будет слепая инъекция команд. Воздействие этой уязвимости имеет решающее значение, поскольку Вы можете выполнять удаленные команды на сервере, и это легко позволяет Вам делать все, что Вы хотите.

На этом все. Всем хорошего дня!

#1 Bug Bounty. Подготовка к Bug Bounty. Введение.

#2 Bug Bounty. Организация. Введение.

#3 Bug Bounty. Заметки. Введение.

#4 Bug Bounty. Подготовка к охоте. База знаний.

#5 Bug Bounty. RSS-каналы.

#6 Bug Bounty 101. Выбор платформы.

#7 Bug Bounty. Выбор правильной цели.

#8 Bug Bounty. Методология — рабочие процессы.

#9 Bug Bounty. Рабочий процесс GitHub.

#10 Bug Bounty. Гугл Дорки Рабочий процесс.

#11 Bug Bounty. Эксплойты — Рабочий процесс.

#12 Bug Bounty. CMS — Рабочий процесс.

#13 Bug Bounty. Брутфорс — Рабочий процесс.

#14 Bug Bounty. Раздел 2. Разведка.

#15 Bug Bounty. Reverse Whois.

#16 Bug Bounty. Гугл Дорки.

#17 Bug Bounty. Разведка — Фаза 2. Словарь.

#18 Bug Bounty. Перечисление поддоменов.

#19 Bug Bounty. Поисковый движок.

#20 Bug Bounty. Перестановка поддоменов.

#21 Bug Bounty. Разрешения DNS.

#22 Bug Bounty. Wayback Machine crawl data.

#23 Bug Bounty. Проверка файлов JavaScript.

#24 Bug Bounty. Гугл Дорки.

#25 Bug Bounty. Часть 8: Фаза fingerprint.

#26 Bug Bounty. Censys. Nmap. Masscan.

#27 Bug Bounty. Веб-приложение.

#28 Bug Bounty. Этап эксплуатации.

#29 Bug Bounty. GitHub.

#30 Bug Bounty. Неправильно настроенные сегменты облачного хранилища.

#31 Bug Bounty. Облачное хранилище Google.

#32 Bug Bounty. Elastic Search DB.

#33 Bug Bounty. Docker API.

#34 Bug Bounty. Kubernetes API.

#35 Bug Bounty. .git/.svn

#36 Bug Bounty. Эксплуатация CMS. WordPress.

#37 Bug Bounty. Joomla. Drupal. Adobe AEM.

#38 Bug Bounty. Эксплуатация OWASP. XML External Entity (XXE).

#39 Bug Bounty. Межсайтовый скриптинг (XSS).

#40 Bug Bounty. Server Side Request Forgery (SSRF).

#41 Bug Bounty. Cross Site Request Forgery (CSRF).

#42 Bug Bounty. SQL-инъекция (SQLI).