April 17, 2023

Аудит безопасности. Уязвимости

Я обещал вам рассказать про уязвимости, что это и с чем их едят.
Начну, пожалуй, с самого главного: уязвимость = человеческий фактор.

Что такое уязвимость вообще?
В прицнипе, в нашем контексте, значение не отличается от обычного значения этого слова.
Уязвимость = дырка = получение несанкционированного доступа.

В прошлой части мы изучали сервисы, работающие на сервере. Обычно, следующей частью аудита является поиск уязвимостей под текущие версии сервисов

Вообще, если говорить понятными словами, то уязвимость - это часть кода/обьекта правил и тд, в которой присутствуют ошибки.
Они не всегда присутствуют в самом коде приложения/сервиса/обьекта.
Неправильное разграничение прав это тоже уязвимость.

Когда обычный пользователь может выполнять действия, предназначенные для администраторов, либо может смотреть каталоги веб-сервера, не предназначенные для него (.htaccess/index.php и тд)

Как пример нахождения и эксплуатирования уязвимости, я бы хотел привести свой опыт. Приступим.

На дворе 201* какой-то год. Я обучаюсь в IT колледже (из IT там только название). Пары скучные, делать нечего, ничего нового не рассказывают. В процессе чтения новостей, мне попадается статья об интересной, свежей уязвимости EternalBlue. Если вкратце обьяснять что это такое, то EternalBlue - уязвимость прокотола SMB, использование которой заключается в отправке специально сформированного пакета, для получения удаленного доступа.

Почитав об этом подробнее, мне захотелось сразу ощутить себя участником KillNet'а. Использовать shodan/censys для поиска целей мне было неинтересно, ведь я уже являлся частью локальной сети своего колледжа.

Еще немного информации, уязвимость была исключительно в ОС windows XP-Server 2016.
У нас, как раз, все здание было напичкано ПК с виндой. Далее мои действия были таковыми:

- Сканирование локальной сети на наличие уязвимых машин, использовал утилиту nmap с параметром 192.168.1.1/24 (сканирование всей локальной сети по маске) -о (определение ОС) -p 445 (проверка наличия уязвимого сервиса)

- Формирование списка IP-адресов, уязвимых перед EternalBlue Я использовал виртуальную машину с Kali Linux, прокинул мост, чтобы она была в локальной сети. С помощью msfconsole (metasploit framework) начал эксплуатировать уязвимость.

Из всего списка IP-адресов, сработало только на одном ПК, и этот ПК оказался нашего директора =)

Немного порыскал информацию на рабочем столе и подключенном сетевом диске. Нашел вопросы-ответы на различные работы и еще очень много полезной информации.
После всего, я рассказал об этом директору, затем нашему IT отделу и защитил диплом по этой ситуации =)

Как итог, могу сказать, что уязвимости были, есть и будут. Людям свойственно ошибаться и невозможно продумать абсолютно всю.

Следите за новостями и экспериментируйте. Удачи