# 3389 - RDP Pentesting
AWS 해킹을 처음부터 전문가까지 배우세요 htARTE (HackTricks AWS Red Team Expert)! HackTricks를 지원하는 다른 방법: * **회사를 HackTricks에서 광고하거나 HackTricks를 PDF로 다운로드**하고 싶다면 [**구독 요금제**](https://github.com/sponsors/carlospolop)를 확인하세요! * [**공식 PEASS & HackTricks 굿즈**](https://peass.creator-spring.com)를 구매하세요 * [**The PEASS Family**](https://opensea.io/collection/the-peass-family)를 발견하세요, 당사의 독점 [**NFTs**](https://opensea.io/collection/the-peass-family) 컬렉션 * **💬 [Discord 그룹](https://discord.gg/hRep4RUj7f)** 또는 [텔레그램 그룹](https://t.me/peass)에 **가입**하거나 **트위터** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**를 팔로우**하세요. * **HackTricks** 및 **HackTricks Cloud** github 저장소에 PR을 제출하여 **해킹 트릭을 공유**하세요.
**취약점 평가 및 침투 테스트를 위한 즉시 사용 가능한 설정**. 20개 이상의 도구 및 기능으로 어디서든 전체 펜테스트를 실행하고, recon부터 보고서 작성까지 가능합니다. 우리는 펜테스터를 대체하지 않습니다 - 사용자에게 시간을 돌려주기 위해 사용자 정의 도구, 탐지 및 공격 모듈을 개발하여 더 깊이 파고들고, 쉘을 열고 즐길 수 있도록 합니다. {% embed url="https://pentest-tools.com/" %} ## 기본 정보 Microsoft에서 개발된 **원격 데스크톱 프로토콜** (**RDP**)은 네트워크를 통해 컴퓨터 간의 그래픽 인터페이스 연결을 가능케 하는 것을 목적으로 합니다. 이러한 연결을 설정하기 위해 사용자는 **RDP** 클라이언트 소프트웨어를 사용하며, 동시에 원격 컴퓨터는 **RDP** 서버 소프트웨어를 운영해야 합니다. 이 설정을 통해 먼 컴퓨터의 데스크톱 환경을 원격으로 제어하고 액세스할 수 있어 사용자의 로컬 장치로 해당 인터페이스를 가져올 수 있습니다. **기본 포트:** 3389 ``` PORT STATE SERVICE 3389/tcp open ms-wbt-server ``` ## 열거 ### 자동 {% code overflow="wrap" %} ```bash nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-info" -p 3389 -T4 ``` {% endcode %} 사용 가능한 암호화 및 DoS 취약점을 확인하고 (서비스에 DoS를 유발하지 않고) NTLM Windows 정보(버전)를 획득합니다. ### [무차별 대입 공격](../generic-methodologies-and-resources/brute-force.md#rdp) **주의하세요, 계정이 잠길 수 있습니다** ### **비밀번호 스프레이** **주의하세요, 계정이 잠길 수 있습니다** ```bash # 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 ``` ### 알려진 자격 증명/해시로 연결하기 ```bash rdesktop -u rdesktop -d -u -p xfreerdp [/d:domain] /u: /p: /v: xfreerdp [/d:domain] /u: /pth: /v: #Pass the hash ``` ### 알려진 자격 증명을 RDP 서비스에 대해 확인 impacket의 rdp_check.py를 사용하면 일부 자격 증명이 RDP 서비스에 대해 유효한지 확인할 수 있습니다: ```bash rdp_check /:@ ```
**취약점 평가 및 침투 테스트를 위한 즉시 사용 가능한 설정**. 20가지 이상의 도구 및 기능을 사용하여 어디서든 전체 펜테스트를 실행할 수 있으며, 이는 정찰부터 보고서 작성까지 이어집니다. 우리는 펜테스터를 대체하지 않습니다 - 대신, 깊이 파고들고 쉘을 열며 즐길 수 있는 시간을 돌려주기 위해 사용자 정의 도구, 탐지 및 악용 모듈을 개발합니다. {% embed url="https://pentest-tools.com/" %} ## **공격** ### 세션 도용 **SYSTEM 권한**으로 **모든 사용자가 열어 놓은 RDP 세션**에 액세스할 수 있으며, 소유자의 비밀번호를 알 필요가 없습니다. **열린 세션 가져오기:** ``` query user ``` **선택된 세션에 액세스** ```bash tscon /dest: ``` 이제 선택한 RDP 세션 내부에 들어가서 Windows 도구와 기능만을 사용하여 사용자를 흉내 내야합니다. **중요**: 활성 RDP 세션에 액세스하면 사용 중이던 사용자가 로그아웃됩니다. 프로세스 덤프에서 비밀번호를 가져올 수도 있지만, 이 방법은 훨씬 빠르며 사용자의 가상 데스크톱과 상호 작용할 수 있게 해줍니다(디스크에 저장되지 않은 메모장의 비밀번호, 다른 기기에서 열린 다른 RDP 세션 등...) #### **Mimikatz** 이를 수행하기 위해 mimikatz를 사용할 수도 있습니다: ```bash 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](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](../windows-hardening/active-directory-methodology/rdp-sessions-abuse.md) {% endcontent-ref %} ### RDP 그룹에 사용자 추가 ```bash net localgroup "Remote Desktop Users" UserLoginName /add ``` ## 자동 도구 * [**AutoRDPwn**](https://github.com/JoelGMSec/AutoRDPwn) **AutoRDPwn**은 주로 Microsoft Windows 컴퓨터에서 **Shadow** 공격을 자동화하기 위해 설계된 Powershell로 작성된 사후 침투 프레임워크입니다. 이 취약점은 Microsoft에서 기능으로 명시된 것으로, 원격 공격자가 피해자의 데스크톱을 그의 동의 없이 **볼 수 있게** 하며, 심지어 운영 체제 자체의 도구를 사용하여 필요에 따라 제어할 수 있게 합니다. * [**EvilRDP**](https://github.com/skelsec/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/" %}
제로부터 영웅이 될 때까지 AWS 해킹을 배우세요 htARTE (HackTricks AWS Red Team Expert)! HackTricks를 지원하는 다른 방법: * **회사가 HackTricks에 광고되길 원하거나** **PDF 형식의 HackTricks를 다운로드하길 원한다면** [**구독 요금제**](https://github.com/sponsors/carlospolop)를 확인하세요! * [**공식 PEASS & HackTricks 굿즈**](https://peass.creator-spring.com)를 구매하세요 * [**The PEASS Family**](https://opensea.io/collection/the-peass-family)를 발견하세요, 저희의 독점 [**NFTs**](https://opensea.io/collection/the-peass-family) 컬렉션 * **💬 [**디스코드 그룹**](https://discord.gg/hRep4RUj7f)에 가입하거나 [**텔레그램 그룹**](https://t.me/peass)에 가입하거나 **트위터** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks\_live)**를 팔로우하세요.** * **HackTricks** 및 **HackTricks Cloud** github 저장소에 PR을 제출하여 **해킹 트릭을 공유하세요.**