원격 데스크톱을 인터넷에 직접 노출

원격 데스크톱을 인터넷에 직접 노출

Windows 10을 실행하는 라우터 뒤에 작은 서버가 있습니다. 원격 데스크톱을 인터넷에 직접 설정하고 라우터 구성을 변경하여 필요한 포트를 노출하는 것은 매우 쉽습니다.

질문:이를 언급하는 보안 문제를 알고 있어야 합니까? 내 서버는적어도유효한 사용자 이름/비밀번호 조합을 알고 있는 모든 사람이 액세스할 수 있습니다.

MS는 그냥 말한다

PC에 액세스할 수 있는 사람을 제한하려면 NLA(네트워크 수준 인증)로만 액세스를 허용하도록 선택하세요. 이 옵션을 활성화하면 사용자는 PC에 연결하기 전에 네트워크에 자신을 인증해야 합니다. NLA가 포함된 원격 데스크톱을 실행하는 컴퓨터에서만 연결을 허용하는 것은 악의적인 사용자 및 소프트웨어로부터 컴퓨터를 보호하는 데 도움이 될 수 있는 보다 안전한 인증 방법입니다. NLA 및 원격 데스크톱에 대해 자세히 알아보려면 RDS 연결을 위한 NLA 구성을 확인하세요.

답변1

전문적인 네트워크 관리자는 RDP 서버를 인터넷에 직접 노출하지 않습니다.

구멍/백도어가 있는 경우 시스템 일부(예: 변곡점/점프 박스)에 대한 "게임 종료"일 뿐만 아니라 DoS 공격 및 LAN의 데스크톱 지문 인식 기회가 됩니다. 불필요한 정보를 흘려보내는 것.

RDP 서버와 클라이언트에 따라 MITM(man in the middle) 공격이 가능할 수도 있습니다. 프로토콜을 강제로 다운그레이드하거나 안전하지 않은 암호화를 사용하는 등 다양한 방법으로 이를 수행할 수 있습니다. 당신은 찾을 수 있습니다https://labs.portcullis.co.uk/blog/ssl-man-in-the-middle-attacks-on-rdp/흥미로운.

신중한 운영자는 VPN을 설정하고 이를 통한 원격 RDP 액세스만 허용하여 추가 보안, 액세스 관리, 감사 및 제어 계층을 제공할 수 있습니다.

답변2

Microsoft의 원격 데스크톱은 암호화를 사용하므로연락그러므로 합리적으로 보호됩니다. 약점은 사용자 이름과 비밀번호에 대한 무차별 대입 공격입니다.

해커가 지속적으로 인터넷에서 약점을 검색하는 방식과 현재 알려진(및 알려지지 않은) 악용 사례의 수를 고려하여 가능한 한 많은 보호 장치를 설정하는 것이 훨씬 좋습니다(그러나 시스템을 지나치게 복잡하게 만들지는 않음). 입장).

RDP를 보호하려면 다음을 수행할 수 있습니다.

  1. 원격 데스크톱이 수신 대기하는 기본 포트 변경

  2. 강력한 자격 증명
    기본이 아닌 사용자 이름과 길고 복잡한 비밀번호를 사용하세요.

  3. 제한된 사용자 계정
    secpol.msc다음을 실행 하고 탐색하여 RDP를 사용할 수 있는 사용자를 엄격하게 제한합니다. 로컬 정책 > 사용자 권한 할당, "원격 데스크톱 서비스를 통한 로그온 허용"을 두 번 클릭하고 표시된 모든 그룹을 제거한 다음 한 명의 사용자를 추가하십시오.

  4. 높은 보안 수준
    실행 gpedit.msc 하고 다음으로 이동하세요. 로컬 컴퓨터 정책 > 관리 템플릿 > Windows 구성 요소 > 원격 데스크톱 서비스 > 원격 데스크톱 세션 호스트 > 보안다음을 설정합니다.

    • "클라이언트 연결 암호화 수준 설정" -> 활성화 및 높은 수준, 세션이 128비트 암호화로 보호됩니다.
    • "원격(RDP) 연결을 위해 특정 보안 계층을 사용해야 합니다." -> SSL
    • "네트워크 수준 인증을 사용하여 원격 연결에 대한 사용자 인증 요구" -> 활성화됨
  5. 계정 잠금 정책 설정
    여러 번 잘못된 추측을 한 후 일정 기간 동안 계정을 잠그려면 다음으로 이동하세요.관리 도구 > 로컬 보안 정책 > 계정 정책 > 계정 잠금 정책을 클릭하고 세 가지 옵션 모두에 대한 값을 설정합니다(3분의 잠금 기간으로 3번의 잘못된 시도가 합리적임).

  6. PC 로그인을 추적하세요
    주기적으로 이벤트 뷰어로 이동하세요. 응용 프로그램 및 서비스 로그 > Microsoft > Windows > TerminalServices-LocalSessionManger > 운영, 로그인 정보를 보려면

  7. 높은 UAC 수준 유지

  8. VPN 서버 만들기
    VPN 서버를 설정하는 데까지 갈 수도 있습니다(링크), 이는 또 다른 보안 계층을 추가합니다.

나는 위의 모든 사항을 구현한 포스터를 우리 웹사이트에서 접촉했는데, 그것만으로도 충분한 보호가 되는 것 같습니다. 이러한 모든 예방 조치를 구현하면 무차별 대입 공격은 기본적으로 불가능하므로 남은 위협은 일부 악용뿐입니다. 그러나 VPN 로그인이나 RDP 로그인에서는 익스플로잇이 발견되지 않았으므로 이 설정은 충분히 안전하다고 생각합니다.

답변3

파티에 늦어서 죄송합니다. 하지만 귀하와 다른 사람이 나중에 참고할 수 있도록 관련 문제에 대한 제 경험을 찾아보실 수도 있을 것 같습니다. 그냥 '흥미롭다'로 가겠습니다.

얼마 전 Linux 서버에 OpenVPN을 설정했습니다. Linux에는 IPTables(놀라운 네트워킹 소프트웨어 BTW)를 사용하는 뛰어난 로깅 기능이 있습니다. 인증서를 전송할 수 있도록 SSH 포트를 열었습니다.

그날 밤, 로그를 검토한 결과 외부 행위자가 해당 포트를 라우터에 노출한 후 몇 초 만에 무차별 공격을 시작했다는 사실을 발견했습니다. 그런 다음 세 번의 시도 실패 후 계정이 잠길 수 있다는 것을 알았기 때문에 봇 팜은 동일한 암호를 사용하고 계정 이름을 순환하여 시스템이 동일한 계정 이름에 대한 여러 번의 시도 실패를 인식하지 못하게 했습니다. 그런 다음 IPTables가 동일한 IP 주소에서 실패한 시도를 차단할 수 있다는 것을 깨달았기 때문에 다른 컴퓨터로 이동하기 전에 동일한 IP에서 약 6번의 시도만 시도했습니다.

제가 봇 팜이라고 말하는 이유는 일주일 내내(곧 SSH를 잠갔지만 볼 수 있도록 포트를 열어 두었기 때문입니다. 정말 매료되었습니다.) 소스의 출처인 IP 수가 몇 초마다 반복되지 않았기 때문입니다. , 매분, 매시간 - 동일한 알파벳순 계정 이름 목록에서 6번의 시도와 새로운 IP 주소가 계속해서 나타났습니다.

VPN을 설정하세요. 계정 이름이 아닌 인증서를 사용하십시오. 그리고 비밀번호 생성을 위한 훌륭한 시스템이 있더라도 RDP와 같은 것을 몇 시간 이상 노출하지 마십시오. 하지 마세요. (그런데 내 계정 이름이 그의 목록에 있었고 그가 올바른 비밀번호를 찾기를 기다리고 있었습니다.)

답변4

RDP를 인터넷에 노출하는 것은 일반적으로 권장되지 않는다는 데 동의합니다. 그러나 알려진 원격 고정 IP 주소에서만 RDP 연결을 허용하도록 방화벽을 설정한 후 점프 박스에 액세스하기 위해 몇 번 수행했습니다. 따라서 무차별 대입이나 취약점 악용을 방지할 수 있습니다. Man In the Middle 공격 가능성이 있지만 NLA는 이를 방지하지 않습니다.

SSH와 비슷한 작업을 수행합니다.

관련 정보