TGViewer
Хатка бобра Хатка бобра @beaverdreamer · 905 subscribers
Post #170 2.09K
#psexec #nxc
PsExec с низкопривилигированной УЗ

PsExec загружает на удаленный хост исполняемый файл 10-ти летней давности и создает службу, которая его запускает от имени системы - для этого и необходимы права администратора.
Сам файл в свою очередь это бинарь из https://github.com/kavika13/RemCom/, хранимый в виде хекса в Импакете.
При запуске он поднимает пайп RemCom_Communication и после подключения со стороны Импакета к этому пайпу создается еще три: RemCom_stdin*, RemCom_stdout* и RemCom_stderr*, через которые уже и ведется дальнейшее выполнение команд и передача вывода. При нормальном выходе (через exit) будет выполнена зачистка - остановлена служба, удалены файл и служба, в результате чего пайпы удалятся.

Однако если из командной оболочки выйти "классическим" способом через Ctrl+C, то зачистка не происходит - в системе продолжает висеть запущенный сервис и наш бинарь. Будет висеть до следующей перезагрузки компа, поскольку сервис создается без автостарта.

Это можно использовать для повторной компрометации машины с низкопривилегированной УЗ.
Готовый скрипт лежит тут: https://github.com/MzHmO/psexec_noinstall
По сути, мы просто пропускаем этап установки службы и сразу переходим к работе с имеющимися пайпами.

Для обнаружения уязвимых хостов написал модуль для NetExec - https://github.com/beaverdreamer/nxc-modules
Принцип работы прост: мы с предоставленной учеткой запрашиваем доступные пайпы (через IPC$) и выводим сообщение, если в списке видим RemCom_communication.

Стоит подсветить, что это имя пайпа можно изменить, и если оно было изменено, то этот модуль не сработает.

Учитывая, что сервис не поднимается после рестарта ПК, то имеет смысл запускать на инфраструктуре после недавнего пентеста, либо на скоупе постоянно работающих серверов.
GitHub GitHub - kavika13/RemCom: Remote Command Executor: A OSS replacement for PsExec and RunAs - or Telnet without having to install… Remote Command Executor: A OSS replacement for PsExec and RunAs - or Telnet without having to install a server. Take your pick :) - kavika13/RemCom
  • 🔥 13
  • 👍 4
  • 🌚 2
More from @beaverdreamer
  1. Mar 4, 2025Не так давно мы затрагивали тему использования Harbor для взаимодействия с Docker registry…
  2. Feb 18, 2025На прошлой неделе пошумел выход нового скрипта psexecsvc.py, на волне слоупоков давайте ра…
  3. Feb 5, 2025photo post
  4. Feb 5, 2025Форк с ускоренной доставкой🚀 Как утащить сотни образов Docker контейнеров за несколько кл…
  5. Jan 31, 2025Часто ли вы используете VS Code? Представим, что на пентесте вы получаете учетку или досту…
  6. Jan 30, 2025Если вы когда-либо взаимодействовали с вебчиками и находили там swagger, вероятно, вы могл…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →