Эксплуатация уязвимости CVE-2023-21746 LocalPotato

CVE-2023-21746 уязвимости

В этой статье рассмотрим уязвимость CVE-2023-21746. Далее покажу, как использовать экс­пло­ит CVE-2023-21746.

Еще по теме: Эксплуатация уязвимости CVE-2023-0297 в pyLoad

Экс­пло­ит CVE-2023-21746

Итак, все необ­ходимое для эсплуатации уязвимости мож­но най­ти в ре­пози­тории на GitHub.

Статья в образовательных целях, для обучения этичных хакеров. Несанкционированный взлом является незаконным и рассматривается как уголовное преступление. Ни редакция spy-soft.net, ни автор не несут ответственности за ваши действия.

Что­бы вос­поль­зовать­ся экс­пло­итом CVE-2023-21746, сна­чала надо ском­пилиро­вать два фай­ла:

  • SprintCSP.dll. Это недос­тающая DLL, которую мы собира­емся перех­ватить. Код по умол­чанию, пос­тавля­емый с экс­пло­итом, выпол­няет коман­ду whoami и выводит ответ в C:\Program Data\whoamiall.txt. Нам нуж­но изме­нить коман­ду, что­бы дос­тигнуть нашей цели;
  • RpcClient.exe. Эта прог­рамма запус­тит RPC-вызов SvcRebootToFlashingMode. В зависи­мос­ти от вер­сии Windows, на которую нацелен экс­пло­ит, его код может пот­ребовать­ся нем­ного под­пра­вить, пос­коль­ку в раз­ных вер­сиях Windows исполь­зуют­ся раз­ные иден­тифика­торы интерфей­сов для рас­кры­тия SvcRebootToFlashingMode.

Для начала раз­берем­ся с фай­лом RpcClient.exe. Как уже говори­лось, нам пот­ребу­ется изме­нить экс­пло­ит в зависи­мос­ти от вер­сии Windows на целевой машине. Для это­го нуж­но отре­дак­тировать пер­вые стро­ки фай­ла:

Так, что­бы выбира­лась нуж­ная опе­раци­онная сис­тема. Пос­коль­ку моя машина работа­ет под управле­нием Windows Server 2019, я отре­дак­тирую файл сле­дующим обра­зом.

CVE-2023-21746 эксплоит

Это нас­тро­ит экс­пло­ит на исполь­зование кор­рек­тно­го иден­тифика­тора интерфей­са RPC для моей вер­сии Windows. Теперь, ког­да код исправ­лен, ском­пилиру­ем необ­ходимые нам инс­тру­мен­ты.

CVE 2023 21746 эксплоит

Пе­ред ком­пиляци­ей SprintCSP.dll нам нуж­но изме­нить фун­кцию DoStuff() в фай­ле SprintCSP\main.c таким обра­зом, что­бы она добав­ляла нашего текуще­го поль­зовате­ля в груп­пу Administrators. Вот код с нашей заменен­ной коман­дой:

CVE 2023 21746 эксплоит изменить настройки

Те­перь ском­пилиру­ем нашу DLL.

CVE 2023 21746 уязвимость

Эксплуатация уязвимости CVE-2023-21746

Для начала удос­товерим­ся, что наш поль­зователь дей­стви­тель­но не вхо­дит в груп­пу локаль­ных адми­нис­тра­торов.

Уязвимость NTLM аутен­тифика­ции

Для успешной экс­плу­ата­ции StorSvc необ­ходимо ско­пиро­вать SprintCSP.dll в любую дирек­торию текущей PATH. Про­верить PATH мож­но, выпол­нив сле­дующую коман­ду:

Уязвимость NTLM

Мы будем исполь­зовать каталог %SystemRoot%\system32, который рас­ширя­ется до C:\windows\system32. Одна­ко ты можешь исполь­зовать любой из этих двух катало­гов.

Те­перь, ког­да все готово, можем запус­тить LocalPotato:

LocalPotato уязвимость

DLL успешно записа­лась в System32! Теперь мы можем запус­тить RpcClient.exe для запус­ка вызова SvcRebootToFlashingMode, выпол­нив полез­ную наг­рузку в нашей DLL.

LocalPotato.exe

Что­бы удос­товерить­ся, что экс­пло­ит сра­ботал, про­верим, находит­ся ли наш поль­зователь в груп­пе адми­нис­тра­торов.

Windows уязвимость

Пос­ле успешно­го сра­баты­вания экс­пло­ита мы можем выпол­нить любые дей­ствия от лица адми­нис­тра­тора под учет­ной записью поль­зовате­ля user. Нап­ример, запус­тить коман­дную стро­ку.

Windows уязвимость

Windows уязвимость

Защита от уязвимости CVE-2023-21746

Оп­тималь­ная защита от экс­плу­ата­ции этой уяз­вимос­ти (как и дру­гих подоб­ных) — сво­евре­мен­но уста­нав­ливать обновле­ния безопас­ности Microsoft. Тем не менее даже в этом слу­чае некото­рые про­токо­лы, исполь­зующие NTLM в качес­тве метода аутен­тифика­ции, могут быть уяз­вимы для подоб­ных атак.

ПОЛЕЗНЫЕ ССЫЛКИ:

Дима (Kozhuh)

Эксперт в кибербезопасности. Работал в ведущих компаниях занимающихся аналитикой компьютерных угроз. Анонсы новых статей в Телеграме.

Добавить комментарий