14 KiB
135, 593 - MSRPCのペンテスト
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- サイバーセキュリティ企業で働いていますか? HackTricksで会社を宣伝したいですか?または、最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロードしたいですか?SUBSCRIPTION PLANSをチェックしてください!
- The PEASS Familyを見つけてください。独占的なNFTのコレクションです。
- 公式のPEASS&HackTricksのグッズを手に入れましょう。
- 💬 Discordグループまたはtelegramグループに参加するか、Twitterでフォローしてください🐦@carlospolopm。
- ハッキングのトリックを共有するには、PRを hacktricks repo と hacktricks-cloud repo に提出してください。
HackenProofはすべての暗号バグバウンティの場所です。
遅延なしで報酬を受け取る
HackenProofのバウンティは、顧客が報酬予算を入金した後にのみ開始されます。バグが検証された後に報酬を受け取ることができます。
Web3ペンテストの経験を積む
ブロックチェーンプロトコルとスマートコントラクトは新しいインターネットです!上昇期のWeb3セキュリティをマスターしましょう。
Web3ハッカーレジェンドになる
各検証済みのバグごとに評判ポイントを獲得し、週間リーダーボードのトップを制覇しましょう。
HackenProofでサインアップして、ハッキングから報酬を得ましょう!
{% embed url="https://hackenproof.com/register" %}
基本情報
Microsoft Remote Procedure Call(MSRPC)は、クライアントサーバーモデルを使用して、プログラムが他のコンピュータ上のプログラムにサービスを要求するためのプロトコルです。MSRPCはもともとオープンソースソフトウェアから派生していましたが、Microsoftによってさらに開発され、著作権が保護されています。
ホストの設定によっては、RPCエンドポイントマッパーはTCPおよびUDPポート135を介してアクセスでき、SMBを介してヌルまたは認証済みセッション(TCP 139および445)でアクセスでき、TCPポート593でリッスンするWebサービスとしても利用できます。
135/tcp open msrpc Microsoft Windows RPC
MSRPCの動作原理は?
MSRPCプロセスはクライアント側で始まります。クライアントアプリケーションは、手続きを実装するコードの代わりにローカルスタブ手続きを呼び出します。クライアントスタブコードは、必要なパラメータをクライアントアドレススペースから取得し、それらをクライアントランタイムライブラリに渡します。その後、クライアントランタイムライブラリはパラメータを標準のネットワークデータ表現形式に変換してサーバに送信します。
クライアントスタブは、RPCクライアントランタイムライブラリの関数を呼び出してリクエストとパラメータをサーバに送信します。サーバがリモートにある場合、ランタイムライブラリは適切なトランスポートプロトコルとエンジンを指定し、RPCをネットワークスタックに渡してサーバに転送します。
ここから:https://www.extrahop.com/resources/protocols/msrpc/
書籍「ネットワークセキュリティ評価 第3版」からの画像
公開されたRPCサービスの特定
書籍「ネットワークセキュリティ評価 第3版」からの抜粋
RPCロケーターサービスと個々のRPCエンドポイントをクエリすることで、TCP、UDP、HTTP、およびSMB(名前付きパイプを介して)で実行されている興味深いサービスをカタログ化することができます。このプロセスで収集された各IFID値は、RPCサービスを示します(例:5a7b91f8-ff00-11d0-a9b2-00c04fb6e6fcはMessengerインターフェースです)。
Todd Sabinのrpcdumpおよびifids Windowsユーティリティは、RPCロケーターと特定のRPCエンドポイントにクエリを実行してIFID値のリストを表示します。rpcdumpの構文は次のとおりです:
D:\rpctools> rpcdump [-p port] 192.168.189.1
IfId: 5a7b91f8-ff00-11d0-a9b2-00c04fb6e6fc version 1.0
Annotation: Messenger Service
UUID: 00000000-0000-0000-0000-000000000000
Binding: ncadg_ip_udp:192.168.189.1[1028]
RPCロケーターサービスには、以下の4つのプロトコルシーケンスを使用してアクセスできます:
- ncacn_ip_tcpおよびncadg_ip_udp(TCPおよびUDPポート135)
- ncacn_np(SMB経由の\pipe\epmapperという名前のパイプ)
- ncacn_http(TCPポート80、593などを介したRPC over HTTP)
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
上記のオプションから、tcp_dcerpc_auditor
以外は、ポート135のmsrpcに対してのみ実行できます。
注目すべきRPCインターフェース
IFID値 | 名前付きパイプ | 説明 |
---|---|---|
12345778-1234-abcd-ef00-0123456789ab | \pipe\lsarpc | ユーザーの列挙に使用されるLSAインターフェース |
3919286a-b10c-11d0-9ba8-00c04fd92ef5 | \pipe\lsarpc | ドメインと信頼関係の列挙に使用されるLSAディレクトリサービス(DS)インターフェース |
12345778-1234-abcd-ef00-0123456789ac | \pipe\samr | 公開SAMデータベース要素(ユーザー名など)にアクセスし、アカウントロックアウトポリシーに関係なくユーザーパスワードを総当たり攻撃するために使用されるLSA SAMRインターフェース Oreilly library |
1ff70682-0a51-30e8-076d-740be8cee98b | \pipe\atsvc | コマンドをリモートで実行するために使用されるタスクスケジューラ |
338cd001-2244-31f1-aaaa-900038001003 | \pipe\winreg | システムレジストリにアクセスするために使用されるリモートレジストリサービス |
367abb81-9844-35f1-ad32-98f038001003 | \pipe\svcctl | サービスコントロールマネージャーおよびサーバーサービスをリモートで開始および停止し、コマンドを実行するために使用される |
4b324fc8-1670-01d3-1278-5a47bf6ee188 | \pipe\srvsvc | サービスコントロールマネージャーおよびサーバーサービスをリモートで開始および停止し、コマンドを実行するために使用される |
4d9f4ab8-7d1c-11cf-861e-0020af6e7c57 | \pipe\epmapper | WMIをサポートするDCOMインターフェース |
IPアドレスの特定
https://github.com/mubix/IOXIDResolverを使用すると、_IOXIDResolverインターフェース内のServerAlive2_メソッドを悪用することができます。
このメソッドは、HTBボックス_APT_からIPv6アドレスのインターフェース情報を取得するために使用されました。0xdfのAPT解説についてはこちらを参照してください。rpcmap.pyを使用した代替方法については、Impacketの_stringbinding_を使用しています(上記を参照)。
参考文献:
- 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/
ポート593
rpctoolsのrpcdump.exeを使用して、このポートと対話することができます。
HackenProofはすべての暗号バグバウンティの場所です。
遅延なしで報酬を受け取る
HackenProofのバウンティは、顧客が報酬予算を入金した後に開始されます。バグが検証された後に報酬を受け取ることができます。
Web3ペントestingの経験を積む
ブロックチェーンプロトコルとスマートコントラクトは新しいインターネットです!成長段階のweb3セキュリティをマスターしましょう。
Web3ハッカーレジェンドになる
各検証済みのバグで評判ポイントを獲得し、週間リーダーボードのトップを制覇しましょう。
HackenProofでサインアップしてハッキングから報酬を得ましょう!
{% embed url="https://hackenproof.com/register" %}
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- サイバーセキュリティ企業で働いていますか? HackTricksで会社を宣伝したいですか?または、PEASSの最新バージョンやHackTricksのPDFをダウンロードしたいですか?SUBSCRIPTION PLANSをチェックしてください!
- The PEASS Familyを見つけて、独占的なNFTのコレクションを発見してください。
- 公式のPEASS&HackTricksグッズを手に入れましょう。
- 💬 DiscordグループまたはTelegramグループに参加するか、Twitter 🐦@carlospolopmをフォローしてください。
- ハッキングのトリックを共有するには、 hacktricks repo と hacktricks-cloud repo にPRを提出してください。