135, 593 - Pentesting MSRPC
Reading time: 5 minutes
tip
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- Bize katılın 💬 Discord grubuna veya telegram grubuna veya bizi takip edin Twitter'da 🐦 @hacktricks_live.
- Hacking ipuçlarını paylaşın, HackTricks ve HackTricks Cloud github reposuna PR göndererek.
Temel Bilgiler
Microsoft Uzaktan Prosedür Çağrısı (MSRPC) protokolü, bir programın başka bir bilgisayarda bulunan bir programdan hizmet talep etmesini sağlayan bir istemci-sunucu modelidir ve ağın ayrıntılarını anlamadan çalışır. İlk olarak açık kaynak yazılımlarından türetilmiş ve daha sonra Microsoft tarafından geliştirilip telif hakkı alınmıştır.
RPC uç noktası haritalayıcısına TCP ve UDP port 135, TCP 139 ve 445 üzerinde SMB (boş veya kimlik doğrulamalı oturum ile) ve TCP port 593 üzerinde bir web hizmeti aracılığıyla erişilebilir.
135/tcp open msrpc Microsoft Windows RPC
MSRPC nasıl çalışır?
İstemci uygulaması tarafından başlatılan MSRPC süreci, istemci çalışma zamanı kütüphanesi ile etkileşime giren yerel bir stub prosedürünü çağırmayı içerir ve ardından isteği sunucuya hazırlayıp iletmek için kullanılır. Bu, parametrelerin standart Ağ Veri Temsili formatına dönüştürülmesini içerir. Taşıma protokolü seçimi, sunucu uzaktaysa çalışma zamanı kütüphanesi tarafından belirlenir ve RPC'nin ağ yığını üzerinden iletilmesini sağlar.
Açık RPC Hizmetlerini Belirleme
TCP, UDP, HTTP ve SMB üzerinden RPC hizmetlerinin açığı, RPC yer bulucu hizmeti ve bireysel uç noktalar sorgulanarak belirlenebilir. rpcdump gibi araçlar, IFID değerleri ile belirtilen benzersiz RPC hizmetlerinin tanımlanmasına yardımcı olur ve hizmet detayları ile iletişim bağlarını ortaya çıkarır:
D:\rpctools> rpcdump [-p port] <IP>
**IFID**: 5a7b91f8-ff00-11d0-a9b2-00c04fb6e6fc version 1.0
Annotation: Messenger Service
UUID: 00000000-0000-0000-0000-000000000000
Binding: ncadg_ip_udp:<IP>[1028]
RPC yer bulucu hizmetine erişim, belirli protokoller aracılığıyla etkinleştirilmiştir: ncacn_ip_tcp ve ncadg_ip_udp, port 135 üzerinden erişim için, ncacn_np SMB bağlantıları için ve ncacn_http web tabanlı RPC iletişimi için. Aşağıdaki komutlar, esasen port 135'e odaklanarak, MSRPC hizmetlerini denetlemek ve etkileşimde bulunmak için Metasploit modüllerinin kullanımını örneklemektedir:
use auxiliary/scanner/dcerpc/endpoint_mapper
use auxiliary/scanner/dcerpc/hidden
use auxiliary/scanner/dcerpc/management
use auxiliary/scanner/dcerpc/tcp_dcerpc_auditor
rpcdump.py <IP> -p 135
Tüm seçenekler tcp_dcerpc_auditor
hariç, 135 numaralı portta MSRPC'yi hedef almak için özel olarak tasarlanmıştır.
Dikkate Değer RPC arayüzleri
- IFID: 12345778-1234-abcd-ef00-0123456789ab
- Named Pipe:
\pipe\lsarpc
- Açıklama: Kullanıcıları listelemek için kullanılan LSA arayüzü.
- IFID: 3919286a-b10c-11d0-9ba8-00c04fd92ef5
- Named Pipe:
\pipe\lsarpc
- Açıklama: Alanları ve güven ilişkilerini listelemek için kullanılan LSA Dizin Hizmetleri (DS) arayüzü.
- IFID: 12345778-1234-abcd-ef00-0123456789ac
- Named Pipe:
\pipe\samr
- Açıklama: Kamuya açık SAM veritabanı öğelerine (örneğin, kullanıcı adları) erişmek ve kullanıcı şifrelerini hesap kilitleme politikasına bakılmaksızın zorlamak için kullanılan LSA SAMR arayüzü.
- IFID: 1ff70682-0a51-30e8-076d-740be8cee98b
- Named Pipe:
\pipe\atsvc
- Açıklama: Uzakta komutları yürütmek için kullanılan görev zamanlayıcı.
- IFID: 338cd001-2244-31f1-aaaa-900038001003
- Named Pipe:
\pipe\winreg
- Açıklama: Sistemin kayıt defterine erişmek ve değiştirmek için kullanılan uzak kayıt defteri hizmeti.
- IFID: 367abb81-9844-35f1-ad32-98f038001003
- Named Pipe:
\pipe\svcctl
- Açıklama: Uzakta hizmetleri başlatmak ve durdurmak ve komutları yürütmek için kullanılan hizmet kontrol yöneticisi ve sunucu hizmetleri.
- IFID: 4b324fc8-1670-01d3-1278-5a47bf6ee188
- Named Pipe:
\pipe\srvsvc
- Açıklama: Uzakta hizmetleri başlatmak ve durdurmak ve komutları yürütmek için kullanılan hizmet kontrol yöneticisi ve sunucu hizmetleri.
- IFID: 4d9f4ab8-7d1c-11cf-861e-0020af6e7c57
- Named Pipe:
\pipe\epmapper
- Açıklama: WM aracılığıyla şifre kırma ve bilgi toplama için kullanılan DCOM arayüzü.
IP adreslerini belirleme
https://github.com/mubix/IOXIDResolver kullanarak, Airbus araştırmasından ServerAlive2 yöntemini IOXIDResolver arayüzü içinde kötüye kullanmak mümkündür.
Bu yöntem, HTB kutusundan IPv6 adresi gibi arayüz bilgilerini almak için kullanılmıştır APT. 0xdf APT yazımı için buraya bakın, rpcmap.py kullanarak alternatif bir yöntem içermektedir Impacket ile stringbinding (yukarıya bakın).
Geçerli kimlik bilgileri ile RCE yürütme
Geçerli bir kullanıcının kimlik bilgileri mevcutsa, bir makinede uzaktan kod yürütmek mümkündür dcomexec.py kullanarak impacket framework'ünden.
Farklı mevcut nesnelerle denemeyi unutmayın
- ShellWindows
- ShellBrowserWindow
- MMC20
Port 593
rpctools içindeki rpcdump.exe bu port ile etkileşimde bulunabilir.
Referanslar
- https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/
- https://www.cyber.airbus.com/the-oxid-resolver-part-2-accessing-a-remote-object-inside-dcom/
- https://0xffsec.com/handbook/services/msrpc/
tip
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- Bize katılın 💬 Discord grubuna veya telegram grubuna veya bizi takip edin Twitter'da 🐦 @hacktricks_live.
- Hacking ipuçlarını paylaşın, HackTricks ve HackTricks Cloud github reposuna PR göndererek.