DCOM Exec
Try Hard Security Group
MMC20.Application
Aby uzyskać więcej informacji na temat tej techniki, sprawdź oryginalny post z https://enigma0x3.net/2017/01/05/lateral-movement-using-the-mmc20-application-com-object/
Rozproszony Model Obiektów Składowych (DCOM) prezentuje interesującą zdolność do interakcji opartych na sieci z obiektami. Microsoft udostępnia obszerną dokumentację zarówno dla DCOM, jak i dla Modelu Obiektów Składowych (COM), dostępną tutaj dla DCOM i tutaj dla COM. Listę aplikacji DCOM można uzyskać za pomocą polecenia PowerShell:
Obiekt COM, Klasa aplikacji MMC (MMC20.Application), umożliwia skryptowanie operacji wtyczki MMC. Warto zauważyć, że ten obiekt zawiera metodę ExecuteShellCommand
w Document.ActiveView
. Więcej informacji na temat tej metody można znaleźć tutaj. Sprawdź działanie wykonując:
Ta funkcja ułatwia wykonywanie poleceń przez sieć za pośrednictwem aplikacji DCOM. Aby zdalnie korzystać z DCOM jako administrator, można użyć PowerShell w następujący sposób:
To polecenie łączy się z aplikacją DCOM i zwraca instancję obiektu COM. Metoda ExecuteShellCommand może być następnie wywołana, aby uruchomić proces na zdalnym hoście. Proces obejmuje następujące kroki:
Sprawdź metody:
Zdobądź zdalne wykonanie kodu (RCE):
ShellWindows & ShellBrowserWindow
Aby uzyskać więcej informacji na temat tej techniki, sprawdź oryginalny post https://enigma0x3.net/2017/01/23/lateral-movement-via-dcom-round-2/
Obiekt MMC20.Application został zidentyfikowany jako brakujący "LaunchPermissions", domyślnie przyznający dostęp Administratorom. Aby uzyskać więcej szczegółów, można prześledzić wątek tutaj, a zaleca się korzystanie z narzędzia @tiraniddo OleView .NET do filtrowania obiektów bez wyraźnego uprawnienia uruchamiania.
Dwa konkretne obiekty, ShellBrowserWindow
i ShellWindows
, zostały wyróżnione ze względu na brak wyraźnych uprawnień uruchamiania. Brak wpisu rejestru LaunchPermission
pod HKCR:\AppID\{guid}
oznacza brak wyraźnych uprawnień.
ShellWindows
Dla ShellWindows
, który nie ma ProgID, metody .NET Type.GetTypeFromCLSID
i Activator.CreateInstance
ułatwiają instancjonowanie obiektu za pomocą jego AppID. Ten proces wykorzystuje OleView .NET do pobrania CLSID dla ShellWindows
. Po zainstancjonowaniu, interakcja jest możliwa za pomocą metody WindowsShell.Item
, co prowadzi do wywołania metody takiej jak Document.Application.ShellExecute
.
Przykładowe polecenia PowerShell zostały dostarczone do instancjonowania obiektu i zdalnego wykonywania poleceń:
Ruch boczny za pomocą obiektów DCOM Excel
Ruch boczny można osiągnąć, wykorzystując obiekty DCOM Excel. Aby uzyskać szczegółowe informacje, zaleca się przeczytanie dyskusji na temat wykorzystania Excel DDE do ruchu bocznego za pomocą DCOM na blogu Cybereason.
Projekt Empire udostępnia skrypt PowerShell, który demonstruje wykorzystanie Excela do zdalnego wykonania kodu (RCE) poprzez manipulowanie obiektami DCOM. Poniżej znajdują się fragmenty skryptu dostępnego w repozytorium GitHub Empire, prezentujące różne metody nadużywania Excela do RCE:
Narzędzia automatyzujące ruch boczny
Do automatyzacji tych technik wyróżniono dwa narzędzia:
Invoke-DCOM.ps1: Skrypt PowerShell dostarczony przez projekt Empire, który upraszcza wywoływanie różnych metod wykonania kodu na zdalnych maszynach. Skrypt ten jest dostępny w repozytorium GitHub projektu Empire.
SharpLateral: Narzędzie przeznaczone do zdalnego wykonywania kodu, które można użyć za pomocą polecenia:
Narzędzia automatyczne
Skrypt Powershell Invoke-DCOM.ps1 umożliwia łatwe wywołanie wszystkich zakomentowanych sposobów wykonania kodu na innych maszynach.
Możesz również użyć SharpLateral:
Odnośniki
Try Hard Security Group
Last updated