hacktricks/network-services-pentesting/pentesting-rdp.md
2023-07-07 23:42:27 +00:00

14 KiB
Raw Blame History

3389 - RDPのペンテスト

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

DragonJAR Security Conference es un evento internacional de ciberseguridad con más de una década que se celebrará el 7 y 8 de septiembre de 2023 en Bogotá, Colombia. Es un evento de gran contenido técnico donde se presentan las últimas investigaciones en español que atrae a hackers e investigadores de todo el mundo.
¡Regístrate ahora en el siguiente enlace y no te pierdas esta gran conferencia!:

{% embed url="https://www.dragonjarcon.org/" %}

基本情報

リモートデスクトッププロトコル(RDPは、Microsoftが開発したプロプライエタリなプロトコルで、ユーザーにネットワーク接続を介して別のコンピュータに接続するためのグラフィカルインターフェースを提供します。ユーザーはこの目的のためにRDPクライアントソフトウェアを使用し、他のコンピュータはRDPサーバーソフトウェアを実行する必要があります(ここから)。

デフォルトポート: 3389

PORT     STATE SERVICE
3389/tcp open  ms-wbt-server

列挙

自動的な方法

nmap -p 3389 --script rdp-enum-encryption <target>

このコマンドは、3389ポートで実行されているRDPサービスの暗号化設定を列挙します。

nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-info" -p 3389 -T4 <IP>

利用可能な暗号化とDoSの脆弱性サービスにDoSを引き起こさずにをチェックし、NTLM Windows情報バージョンを取得します。

ブルートフォース

注意してください、アカウントがロックされる可能性があります

パスワードスプレー

注意してください、アカウントがロックされる可能性があります

# 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

既知の資格情報/ハッシュで接続する

To connect with known credentials/hash, you can use the following methods:

  1. Username and Password: If you have the username and password for the RDP service, you can use them to authenticate and establish a connection. Use a Remote Desktop Client to connect to the target system and provide the correct credentials.

  2. NTLM Hash: If you have obtained the NTLM hash of a user's password, you can use it to authenticate and connect to the RDP service. Tools like rdp-sec-check or rdp-sec-check2 can be used to perform offline cracking of the NTLM hash.

  3. Pass-the-Hash: If you have obtained the NTLM hash of a user's password, you can use it to perform a pass-the-hash attack. This involves passing the hash instead of the actual password during the authentication process. Tools like mimikatz can be used to perform pass-the-hash attacks.

Remember to use these methods only in authorized and legal scenarios, such as during penetration testing engagements or with proper consent.

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サービスに対してチェックする

rdp_check.pyはimpacketから提供されており、RDPサービスに対して特定の資格情報が有効かどうかをチェックすることができます。

rdp_check <domain>/<name>:<password>@<IP>

DragonJAR Security Conferenceは国際的なサイバーセキュリティイベントで、2023年9月7日から8日までコロンビアのボゴタで開催されます。このイベントは、スペイン語で最新の研究が発表される技術的な内容のイベントであり、世界中のハッカーや研究者を惹きつけています。 以下のリンクから今すぐ登録し、この素晴らしいカンファレンスをお見逃しなく!:

{% embed url="https://www.dragonjarcon.org/" %}

攻撃

セッションの盗み出し

SYSTEM権限を持つと、オーナーのパスワードを知る必要なく、任意のユーザーの開いているRDPセッションにアクセスすることができます。

開いているセッションを取得する:

query user

選択されたセッションへのアクセス

<p>Once you have identified a target system with RDP enabled, the next step is to gain access to a valid session on that system. There are several techniques that can be used to achieve this:</p>
<p>RDP Cracking: This involves attempting to crack the password of a valid user account on the target system. This can be done using tools like Hydra or Medusa, which can perform brute-force or dictionary attacks.</p>
<p>Session Hijacking: This technique involves intercepting an existing RDP session between a client and the target system. By capturing the session ID and session cookie, an attacker can hijack the session and gain unauthorized access.</p>
<p>Man-in-the-Middle (MitM) Attack: In this attack, the attacker positions themselves between the client and the target system, intercepting and manipulating the RDP traffic. This allows the attacker to capture credentials or perform other malicious activities.</p>
<p>Exploiting Vulnerabilities: If there are known vulnerabilities in the RDP implementation or the target system, an attacker can exploit these vulnerabilities to gain unauthorized access to a session.</p>
<p>Once access to a valid session is obtained, the attacker can perform various actions, such as executing commands, transferring files, or even taking full control of the target system.</p>
<p>It is important to note that gaining unauthorized access to someone else's RDP session is illegal and unethical. These techniques should only be used for legitimate purposes, such as penetration testing or authorized security assessments.</p>
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コンピュータ上でのシャドウ攻撃を自動化するために設計されたPowerShellで作成されたポストエクスプロイテーションフレームワークです。この脆弱性Microsoftによって機能としてリストされていますにより、リモート攻撃者は被害者のデスクトップを彼の同意なしに表示し、さらにオペレーティングシステム自体のネイティブツールを使用して必要に応じて制御することができます。

{% embed url="https://github.com/JoelGMSec/AutoRDPwn" %}

HackTricks自動コマンド

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: |
Remote Desktop Protocol (RDP) is a proprietary protocol developed by Microsoft, which provides a user with a graphical interface to connect to another computer over a network connection. The user employs RDP client software for this purpose, while the other computer must run RDP server software

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}

DragonJAR Security Conferenceは国際的なサイバーセキュリティイベントで、2023年9月7日から8日までコロンビアのボゴタで開催されます。このイベントは、スペイン語で最新の研究が発表される技術的な内容の高いイベントであり、世界中のハッカーや研究者を惹きつけています。 以下のリンクから今すぐ登録し、この素晴らしいカンファレンスをお見逃しなく!:

{% embed url="https://www.dragonjarcon.org/" %}

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥