2020.01.21

'해킹에 강한' 윈도우 네트워크를 만드는 3가지 방법

Susan Bradley | CSO
해커가 네트워크와 기업을 쉽게 넘보지 못하도록 무엇을 할 수 있을까. 어떤 조치를 한다고 해도 공격을 완벽하게 방어할 수는 없지만, 공격자가 목표를 다른 곳으로 돌리게 하는 것은 가능하다. 더 공격하기 어려운 윈도우 네트워크를 만드는 방법을 알아보자.


 

1. 기업이 접속하는 같은 방식을 공격자가 악용 : 원격 액세스 및 관리 액세스 보호

통합 사이버 킬체인 보고서인 마이터 어택(MITRE ATT&CK) 프레임워크는 서버와 워크스테이션에 대한 관리 액세스에 일반적으로 사용되는 방법과 포트 목록을 보여준다. 공격자도 이런 액세스 방법을 알고 있으며 사용자가 네트워크에 접속하는 방법을 목표로 한다. 예를 들어 다음 포트 중 사용하는 게 있고 인터넷에 노출하는 경우, 2020년에 해야 할 작업 목록에 종료, 차단, 이중 인증(2FA)을 추가해야 한다.
 
  • SSH (22/TCP)
  • 텔넷(Telnet) (23/TCP)
  • FTP (21/TCP)
  • NetBIOS / SMB / 삼바(Samba) (139/TCP & 445/TCP)
  • LDAP (389/TCP)
  • Kerberos (88/TCP)
  • RDP / 터미널 서비스(3389/TCP)
  • HTTP/HTTP Management Services (80/TCP & 443/TCP)
  • MSSQL (1433/TCP)
  • 오라클 (1521/TCP)
  • MySQL (3306/TCP)
  • VNC (5900/TCP)

예를 들어 원격 데스크톱 프로토콜(Remote Desktop Protocol, RDP)에 대한 비밀번호 살포(password spraying) 공격은 공격자가 액세스를 시도하는 대표적인 방법이다. 듀오 시큐리티(Duo.com)와 같은 서드파티 플랫폼은 2FA를 추가해 이런 시도를 막을 수 있다. LDAP과 같은 내부 전용 전송도 안전하게 설정했는지 확인하자. 마이크로소프트는 2020년 3월에 LDAP 서명을 시행할 것이라고 최근 발표했으므로, 지금 설정을 검토해 다가올 변경에 준비가 됐는지 확인하자.

특히 기업에서 자격증명정보(credential)의 재사용이 의심되고 도메인 컨트롤러 역할로 도메인을 제어하는 이전 운영체제가 있는 경우, 커버로스(Kerberos) 비밀번호를 재설정해야 할지 검토해야 한다. 서버 2008이나 서버 2008 R2와 같은 이전 운영체제를 최근에 폐기한 경우, RWDC(읽기/쓰기 도메인 컨트롤러) 및 RODC(읽기 전용 도메인 컨트롤러)에 대한 암호를 재설정하는 것이 좋다.
 

2. 자격증명정보 보호 : 더 안전한 암호 선택과 보호

공격자가 액세스하기 위해 사용하는 일반적인 시나리오는 사용자에게 피싱 이메일을 보내 워크스테이션에 액세스하는 것이다. 로컬 관리자 비밀번호가 네트워크에서 같은 값으로 설정돼 있으면, 공격자는 한 시스템의 해시값으로 네트워크 전체에서 사용할 수 있다. 이를 PTH(Pass The Hash) 공격이라고 하는데, 이 작업을 어렵게 만드는 여러 방법이 있다. 일단 네트워크에서 LM 해시 및 NTMLv1을 비활성화하는 것부터 시작하자.

비밀번호 정책 규칙을 검토하고 사용자가 더 긴 암호문을 선택하도록 교육해야 한다. 단 비밀번호를 자주 변경해야 하는 경우 사용자는 더 길고 안전한 것이 아닌 더 쉽고 보안에 취약한 비밀번호를 선택한다는 점을 유의해야 한다. 비밀번호를 얼마나 자주 재사용하는지 파악해야 한다. 비밀번호 관리자 프로그램을 사용하고 복잡한 비밀번호를 선택한다. (프로그램) 공급업체에서 짧은 비밀번호만 제공하는 경우 더 긴 암호를 사용할 수 없는 기술적인 장벽이 무엇인지 확인을 요청하자.

LAPS 툴킷을 사용해 로컬 관리자 계정에 고유한 비밀번호를 설정하면, 공격자가 네트워크에서 종횡무진 활동할 수 없다. 관리자 계정 및 가능한 많은 사용자 계정에서 추가인증(MFA-Multi Factor Authentication, MFA)을 사용해야 한다. 사용자와 공격자 사이에 단 하나의 암호만 있는 경우가 생각보다 훨씬 흔하다. 공격자의 해킹 작업을 훨씬 번거롭게 힘들게 하는 것이 중요하다.

마지막으로, 안전하게 설정되지 않은 계정이 있는지 네트워크를 검토해야 한다. 이를 위해 네트워크에 해시값이 남아있거나, 비밀번호가 공유됐거나, 기타 불안정한 설정이 있는지 감사해야 한다. 액티브 디렉터리 점검을 위해서는, AD 포리스트에서 모든 계정 스캔 및 검토 - 계정 및 비밀번호 위생(Scan And Check All Accounts In AD Forest - Account And Password Hygiene) 스크립트를 사용하고, 리쓰넷(Lithnet)디렉터리 서비스 인터널(DSInternal)용 파워셸(PowerShell) 모듈을 설치한다.
 

3. 브라우저와 이메일은 새로운 진입점

공격자는 사용자 방어의 약한 고리를 알고 있다. 사용자가 클릭하도록 속일 수도 있다. 이 경우 브라우저와 이메일이 네트워크의 주요 진입점이다. 이메일의 경우 룰러(ruler)와 같이 클라이언트 쪽 아웃룩 기능을 악용하고 원격으로 셸(shell)을 얻는 공격 툴을 사용하므로 이들에 대해 알아둘 필요가 있다. 이런 공격에 대응하려면 온프레미스 배포에 낫룰러(notruler) 같은 도구를 사용해 익스체인지 환경이 손상됐는지 조사 및 검토하면 된다.

오피스 365의 경우, 파워셸을 사용해 규칙을 활용하거나 사용자 지정 양식을 주입하는 공격이 설정됐는지 감사 및 검토한다. 브라우저의 경우, 정책을 검토하거나 사용자가 다운로드하고 브라우저에 설치할 수 있는 항목의 경계를 설정한다. 그룹 정책 또는 인튠(Intune)을 사용해 사용자가 브라우저에 설치할 수 있는 항목에 대한 제한을 설정하면 된다. 크로미움 기반 엣지가 1월에 출시되므로 그룹 정책 설정에서도 엣지 정책을 제어할 수 있도록 미리 준비하자. editor@itworld.co.kr



2020.01.21

'해킹에 강한' 윈도우 네트워크를 만드는 3가지 방법

Susan Bradley | CSO
해커가 네트워크와 기업을 쉽게 넘보지 못하도록 무엇을 할 수 있을까. 어떤 조치를 한다고 해도 공격을 완벽하게 방어할 수는 없지만, 공격자가 목표를 다른 곳으로 돌리게 하는 것은 가능하다. 더 공격하기 어려운 윈도우 네트워크를 만드는 방법을 알아보자.


 

1. 기업이 접속하는 같은 방식을 공격자가 악용 : 원격 액세스 및 관리 액세스 보호

통합 사이버 킬체인 보고서인 마이터 어택(MITRE ATT&CK) 프레임워크는 서버와 워크스테이션에 대한 관리 액세스에 일반적으로 사용되는 방법과 포트 목록을 보여준다. 공격자도 이런 액세스 방법을 알고 있으며 사용자가 네트워크에 접속하는 방법을 목표로 한다. 예를 들어 다음 포트 중 사용하는 게 있고 인터넷에 노출하는 경우, 2020년에 해야 할 작업 목록에 종료, 차단, 이중 인증(2FA)을 추가해야 한다.
 
  • SSH (22/TCP)
  • 텔넷(Telnet) (23/TCP)
  • FTP (21/TCP)
  • NetBIOS / SMB / 삼바(Samba) (139/TCP & 445/TCP)
  • LDAP (389/TCP)
  • Kerberos (88/TCP)
  • RDP / 터미널 서비스(3389/TCP)
  • HTTP/HTTP Management Services (80/TCP & 443/TCP)
  • MSSQL (1433/TCP)
  • 오라클 (1521/TCP)
  • MySQL (3306/TCP)
  • VNC (5900/TCP)

예를 들어 원격 데스크톱 프로토콜(Remote Desktop Protocol, RDP)에 대한 비밀번호 살포(password spraying) 공격은 공격자가 액세스를 시도하는 대표적인 방법이다. 듀오 시큐리티(Duo.com)와 같은 서드파티 플랫폼은 2FA를 추가해 이런 시도를 막을 수 있다. LDAP과 같은 내부 전용 전송도 안전하게 설정했는지 확인하자. 마이크로소프트는 2020년 3월에 LDAP 서명을 시행할 것이라고 최근 발표했으므로, 지금 설정을 검토해 다가올 변경에 준비가 됐는지 확인하자.

특히 기업에서 자격증명정보(credential)의 재사용이 의심되고 도메인 컨트롤러 역할로 도메인을 제어하는 이전 운영체제가 있는 경우, 커버로스(Kerberos) 비밀번호를 재설정해야 할지 검토해야 한다. 서버 2008이나 서버 2008 R2와 같은 이전 운영체제를 최근에 폐기한 경우, RWDC(읽기/쓰기 도메인 컨트롤러) 및 RODC(읽기 전용 도메인 컨트롤러)에 대한 암호를 재설정하는 것이 좋다.
 

2. 자격증명정보 보호 : 더 안전한 암호 선택과 보호

공격자가 액세스하기 위해 사용하는 일반적인 시나리오는 사용자에게 피싱 이메일을 보내 워크스테이션에 액세스하는 것이다. 로컬 관리자 비밀번호가 네트워크에서 같은 값으로 설정돼 있으면, 공격자는 한 시스템의 해시값으로 네트워크 전체에서 사용할 수 있다. 이를 PTH(Pass The Hash) 공격이라고 하는데, 이 작업을 어렵게 만드는 여러 방법이 있다. 일단 네트워크에서 LM 해시 및 NTMLv1을 비활성화하는 것부터 시작하자.

비밀번호 정책 규칙을 검토하고 사용자가 더 긴 암호문을 선택하도록 교육해야 한다. 단 비밀번호를 자주 변경해야 하는 경우 사용자는 더 길고 안전한 것이 아닌 더 쉽고 보안에 취약한 비밀번호를 선택한다는 점을 유의해야 한다. 비밀번호를 얼마나 자주 재사용하는지 파악해야 한다. 비밀번호 관리자 프로그램을 사용하고 복잡한 비밀번호를 선택한다. (프로그램) 공급업체에서 짧은 비밀번호만 제공하는 경우 더 긴 암호를 사용할 수 없는 기술적인 장벽이 무엇인지 확인을 요청하자.

LAPS 툴킷을 사용해 로컬 관리자 계정에 고유한 비밀번호를 설정하면, 공격자가 네트워크에서 종횡무진 활동할 수 없다. 관리자 계정 및 가능한 많은 사용자 계정에서 추가인증(MFA-Multi Factor Authentication, MFA)을 사용해야 한다. 사용자와 공격자 사이에 단 하나의 암호만 있는 경우가 생각보다 훨씬 흔하다. 공격자의 해킹 작업을 훨씬 번거롭게 힘들게 하는 것이 중요하다.

마지막으로, 안전하게 설정되지 않은 계정이 있는지 네트워크를 검토해야 한다. 이를 위해 네트워크에 해시값이 남아있거나, 비밀번호가 공유됐거나, 기타 불안정한 설정이 있는지 감사해야 한다. 액티브 디렉터리 점검을 위해서는, AD 포리스트에서 모든 계정 스캔 및 검토 - 계정 및 비밀번호 위생(Scan And Check All Accounts In AD Forest - Account And Password Hygiene) 스크립트를 사용하고, 리쓰넷(Lithnet)디렉터리 서비스 인터널(DSInternal)용 파워셸(PowerShell) 모듈을 설치한다.
 

3. 브라우저와 이메일은 새로운 진입점

공격자는 사용자 방어의 약한 고리를 알고 있다. 사용자가 클릭하도록 속일 수도 있다. 이 경우 브라우저와 이메일이 네트워크의 주요 진입점이다. 이메일의 경우 룰러(ruler)와 같이 클라이언트 쪽 아웃룩 기능을 악용하고 원격으로 셸(shell)을 얻는 공격 툴을 사용하므로 이들에 대해 알아둘 필요가 있다. 이런 공격에 대응하려면 온프레미스 배포에 낫룰러(notruler) 같은 도구를 사용해 익스체인지 환경이 손상됐는지 조사 및 검토하면 된다.

오피스 365의 경우, 파워셸을 사용해 규칙을 활용하거나 사용자 지정 양식을 주입하는 공격이 설정됐는지 감사 및 검토한다. 브라우저의 경우, 정책을 검토하거나 사용자가 다운로드하고 브라우저에 설치할 수 있는 항목의 경계를 설정한다. 그룹 정책 또는 인튠(Intune)을 사용해 사용자가 브라우저에 설치할 수 있는 항목에 대한 제한을 설정하면 된다. 크로미움 기반 엣지가 1월에 출시되므로 그룹 정책 설정에서도 엣지 정책을 제어할 수 있도록 미리 준비하자. editor@itworld.co.kr

X