2020.09.07

윈도우 이벤트 로깅 최적화 통해 공격을 효과적으로 조사하는 방법

Susan Bradley | CSO
해킹이 발생한 후 조사 담당자가 가장 먼저 할 일은 로그 파일 검토다. 그러나 윈도우 시스템의 기본 로깅은 포렌식 아티팩트(Artifact)를 식별하기에 충분한 정보를 캡처하지 않는다. 로깅 설정을 조정하면 공격을 조사하기에 충분한 정보를 얻을 수 있다. 
 
ⓒ Getty Images Bank

먼저 인터넷에 직접 연결된 컴퓨터에 시스템 모니터(Sysmon, 시스몬)를 다운로드, 설치한다. 시스몬은 시스템 재부팅시에도 상주해 시스템 활동을 모니터링하고 윈도우 이벤트 로그에 기록한다. 프로세스 생성, 네트워크 연결, 파일 생성 시간 변경에 대한 자세한 정보를 제공한다. 

시스몬 치트 시트에 명시된대로 최적화한 사용을 위해 시스몬을 조정할 수 있다. 특히 악의적인 활동의 징후인 모니터링 이벤트와 관련해 최적화할 수 있다. 깃허브(GitHub)는 시스몬에 대한 추가 자료를 제공한다. 
 
ⓒ MalwareArchaeology

시스템 침입을 조사하는데 필요한 모든 정보를 캡처하도록 기본 값에서 로깅 설정을 조정한다. 악성코드 고고학(MalwareArchaeology)에는 추가 로깅 설정에 대한 몇 가지 스크립트와 권장 사항이 있으며, 이 가운데 일부는 다음과 같다. 


로그 크기 늘리기

최소 200GB의 하드 드라이브 공간이 없다면 물리적 서버, 가상 서버, 물리적 머신, 가상 머신은 설치하지 않는 것이 좋다. 시간이 지남에 따라 WinSXS 폴더가 커진다. 시스템을 배포하고 새로 고치는 경우, 즉 워크스테이션을 새로 고치는 동안 운영체제와 모든 워크스테이션 애플리케이션을 전체적으로 다시 구축하고 재배포하면, 더 작은 하드 드라이브로 배포할 수 있다. 동일한 이미지를 유지하고 6개월마다 기능 릴리스를 받는 시스템이 있는 경우, 시간이 지나면서 기본 하드 드라이브 공간이 늘어난다. 워크스테이션이나 노트북을 배포할 때, 필자는 항상 속도를 위해 SSD 드라이브를 사용한다. CPU에 상관없이 더 큰 로그 공간을 적절하게 설정해야 한다. 

악성코드 고고학은 특정 로그에 대해 다음과 같이 권장한다. 
 
  • 애플리케이션, 시스템 로그: 최소 256K
  • 파워셸 로그: 최소 256K
  • 보안 로그: 512,000K(1,024,000)

로그파일을 외부 장치 또는 SIEM(Security Information and Event Management) 시스템으로 오프로드하는 기능과 필요성을 평가한다. 오프로드하는 정보가 많을수록 돌아가서 조사를 더 잘할 수 있다. 공격자는 페이로드를 설치하고 즉시 실행하지 않는 경우가 많으므로, 침입을 철저히 조사하려면 이전 이벤트를 살펴봐야 한다. 

 
DNS 및 DHCP 이벤트 기록 

도메인 컨트롤러가 수행하는 작업을 추적하려면 특히 다음과 같은 DNS 및 DHCP 이벤트를 모두 기록하는 것이 좋다.
 
  • 디버깅을 위한 로그 패킷
  • 발신 및 수신
  • UDP 및 TCP
  • 패킷 유형 요청 및 응답
  • 쿼리 / 전송 및 업데이트

서버 2016 이상에는 이미 DNS 로깅 코드가 포함돼 있다. 서버 2012R2는 핫픽스가 있어야 비슷하게 수행한다. 수동으로 활성화하려면 다음과 같다. 
 
  • 관리자 권한 명령 프롬프트에서 "eventvwr.msc"를 입력해 ‘이벤트 뷰어’를 연다. 
  • ‘이벤트 뷰어’에서 [애플리케이션 및 서비스 로그\Microsoft\Windows\DNS-서버]로 이동한다.
  • ‘DNS-서버’를 마우스 오른쪽 버튼으로 클릭한다. 
  • ‘보기’를 가리킨다.
  • ‘분석 및 디버그 로그 표시’를 클릭한다. 분석 로그가 표시된다. 
  • ‘분석’을 마우스 오른쪽 버튼으로 클릭한 다음 ‘속성’을 클릭한다. 
  • ‘최대 이벤트 로그 크기에 도달한 경우’에서 설정을 정한다. 
  • DNS 서버 분석 이벤트 로그를 사용하려면 ‘확인’을 다시 클릭한다. 

DHCP 로깅의 목적은 네트워크에 불량 시스템이 추가됐는지 확인하는 것이다. 로깅을 활성화하고 이벤트 10을 찾는다. 새 IP 주소가 임대됐다. 그래픽 인터페이스 또는 파워쉘 명령 Set-DhcpServerAuditLog에서 DHCP 로깅을 활성화할 수 있다. 


감사 정책 설정

회사에서 설정된 감사 정책을 검토해야 한다. 필요한 감사의 대부분이 윈도우 10에서도 기본으로 설정돼 있지 않다. Log-MD 도구를 사용해 현재 설정을 검토해 악의적인 활동을 검사할 수 있는지 확인한다. 

예를 들어, 필자가 사용중인 기본 서피스 노트북에서 Log-MD는 로깅 설정의 결함을 보고했다. 결과 보고서는 보안 로그가 충분히 크지 않고 파워셸과 애플리케이션 로그 모두 권장되는 만큼 크지 않다는 것을 보여준다. 또한 다운그레이드 공격이 가능하므로 파워셸 v2를 비활성화하도록 권장했다. 
 
ⓒ Susan Bradley
ⓒ Susan Bradley

또한 Log MD는 이와 같은 추가 감사를 사용하도록 권장했다:
‘S’로 나열된 각 항목은 ‘성공’으로 설정돼야 한다. ‘F’로 나열된 설정은 모두 ‘감사 실패’로 설정해야 한다. 항목이 ‘S/F’인 경우, ‘성공 및 실패’를 감사해야 한다. ‘N/A’는 해당 항목이 컴퓨터에 적용되지 않음을 뜻한다. 
 
ⓒ Susan Bradley
ⓒ Susan Bradley

(5) 지정은 CIO 벤치마크, USGCB(United States Government Configuration Baseline), 호주 사이버 보안국(Australian Cyber Security Centre, ACSC)이 감사 항목을 다루지 않음을 의미한다. 

‘기타 객체 액세스 이벤트(Other Object Access Events)’는 말 많은 감사 설정이다. 에지 시스템이나 매우 민감한 시스템의 특정 상황에서는 이 추가 설정을 활성화하는 것이 좋다. 윈도우 고급 로깅 치트 시트의 설명대로 ‘객체 액세스/기타 객체 액세스 이벤트 성공 및 실패’를 활성화해 새롭거나 업데이트된 일정의 작업에 대해 4698과 4792 이벤트를 추가한다. 여기에는 (작업을 만든 사용자, 전체 명령 줄, 일정 세부 정보를 식별하는) 작업의 전체 XML이 포함된다. 

감사해야 할 또 다른 핵심 항목은 외장 또는 USB 플래시 드라이브 사용이다. 이 감사를 사용하려면 ‘이동식 저장소 성공 및 실패에 대한 객체 액세스’를 활성화한다. 이렇게 하면 컴퓨터에서 미디어 장치의 사용 및 제거에 대한 로깅을 활성화하고 플래그를 지정할 수 있다. editor@itworld.co.kr


2020.09.07

윈도우 이벤트 로깅 최적화 통해 공격을 효과적으로 조사하는 방법

Susan Bradley | CSO
해킹이 발생한 후 조사 담당자가 가장 먼저 할 일은 로그 파일 검토다. 그러나 윈도우 시스템의 기본 로깅은 포렌식 아티팩트(Artifact)를 식별하기에 충분한 정보를 캡처하지 않는다. 로깅 설정을 조정하면 공격을 조사하기에 충분한 정보를 얻을 수 있다. 
 
ⓒ Getty Images Bank

먼저 인터넷에 직접 연결된 컴퓨터에 시스템 모니터(Sysmon, 시스몬)를 다운로드, 설치한다. 시스몬은 시스템 재부팅시에도 상주해 시스템 활동을 모니터링하고 윈도우 이벤트 로그에 기록한다. 프로세스 생성, 네트워크 연결, 파일 생성 시간 변경에 대한 자세한 정보를 제공한다. 

시스몬 치트 시트에 명시된대로 최적화한 사용을 위해 시스몬을 조정할 수 있다. 특히 악의적인 활동의 징후인 모니터링 이벤트와 관련해 최적화할 수 있다. 깃허브(GitHub)는 시스몬에 대한 추가 자료를 제공한다. 
 
ⓒ MalwareArchaeology

시스템 침입을 조사하는데 필요한 모든 정보를 캡처하도록 기본 값에서 로깅 설정을 조정한다. 악성코드 고고학(MalwareArchaeology)에는 추가 로깅 설정에 대한 몇 가지 스크립트와 권장 사항이 있으며, 이 가운데 일부는 다음과 같다. 


로그 크기 늘리기

최소 200GB의 하드 드라이브 공간이 없다면 물리적 서버, 가상 서버, 물리적 머신, 가상 머신은 설치하지 않는 것이 좋다. 시간이 지남에 따라 WinSXS 폴더가 커진다. 시스템을 배포하고 새로 고치는 경우, 즉 워크스테이션을 새로 고치는 동안 운영체제와 모든 워크스테이션 애플리케이션을 전체적으로 다시 구축하고 재배포하면, 더 작은 하드 드라이브로 배포할 수 있다. 동일한 이미지를 유지하고 6개월마다 기능 릴리스를 받는 시스템이 있는 경우, 시간이 지나면서 기본 하드 드라이브 공간이 늘어난다. 워크스테이션이나 노트북을 배포할 때, 필자는 항상 속도를 위해 SSD 드라이브를 사용한다. CPU에 상관없이 더 큰 로그 공간을 적절하게 설정해야 한다. 

악성코드 고고학은 특정 로그에 대해 다음과 같이 권장한다. 
 
  • 애플리케이션, 시스템 로그: 최소 256K
  • 파워셸 로그: 최소 256K
  • 보안 로그: 512,000K(1,024,000)

로그파일을 외부 장치 또는 SIEM(Security Information and Event Management) 시스템으로 오프로드하는 기능과 필요성을 평가한다. 오프로드하는 정보가 많을수록 돌아가서 조사를 더 잘할 수 있다. 공격자는 페이로드를 설치하고 즉시 실행하지 않는 경우가 많으므로, 침입을 철저히 조사하려면 이전 이벤트를 살펴봐야 한다. 

 
DNS 및 DHCP 이벤트 기록 

도메인 컨트롤러가 수행하는 작업을 추적하려면 특히 다음과 같은 DNS 및 DHCP 이벤트를 모두 기록하는 것이 좋다.
 
  • 디버깅을 위한 로그 패킷
  • 발신 및 수신
  • UDP 및 TCP
  • 패킷 유형 요청 및 응답
  • 쿼리 / 전송 및 업데이트

서버 2016 이상에는 이미 DNS 로깅 코드가 포함돼 있다. 서버 2012R2는 핫픽스가 있어야 비슷하게 수행한다. 수동으로 활성화하려면 다음과 같다. 
 
  • 관리자 권한 명령 프롬프트에서 "eventvwr.msc"를 입력해 ‘이벤트 뷰어’를 연다. 
  • ‘이벤트 뷰어’에서 [애플리케이션 및 서비스 로그\Microsoft\Windows\DNS-서버]로 이동한다.
  • ‘DNS-서버’를 마우스 오른쪽 버튼으로 클릭한다. 
  • ‘보기’를 가리킨다.
  • ‘분석 및 디버그 로그 표시’를 클릭한다. 분석 로그가 표시된다. 
  • ‘분석’을 마우스 오른쪽 버튼으로 클릭한 다음 ‘속성’을 클릭한다. 
  • ‘최대 이벤트 로그 크기에 도달한 경우’에서 설정을 정한다. 
  • DNS 서버 분석 이벤트 로그를 사용하려면 ‘확인’을 다시 클릭한다. 

DHCP 로깅의 목적은 네트워크에 불량 시스템이 추가됐는지 확인하는 것이다. 로깅을 활성화하고 이벤트 10을 찾는다. 새 IP 주소가 임대됐다. 그래픽 인터페이스 또는 파워쉘 명령 Set-DhcpServerAuditLog에서 DHCP 로깅을 활성화할 수 있다. 


감사 정책 설정

회사에서 설정된 감사 정책을 검토해야 한다. 필요한 감사의 대부분이 윈도우 10에서도 기본으로 설정돼 있지 않다. Log-MD 도구를 사용해 현재 설정을 검토해 악의적인 활동을 검사할 수 있는지 확인한다. 

예를 들어, 필자가 사용중인 기본 서피스 노트북에서 Log-MD는 로깅 설정의 결함을 보고했다. 결과 보고서는 보안 로그가 충분히 크지 않고 파워셸과 애플리케이션 로그 모두 권장되는 만큼 크지 않다는 것을 보여준다. 또한 다운그레이드 공격이 가능하므로 파워셸 v2를 비활성화하도록 권장했다. 
 
ⓒ Susan Bradley
ⓒ Susan Bradley

또한 Log MD는 이와 같은 추가 감사를 사용하도록 권장했다:
‘S’로 나열된 각 항목은 ‘성공’으로 설정돼야 한다. ‘F’로 나열된 설정은 모두 ‘감사 실패’로 설정해야 한다. 항목이 ‘S/F’인 경우, ‘성공 및 실패’를 감사해야 한다. ‘N/A’는 해당 항목이 컴퓨터에 적용되지 않음을 뜻한다. 
 
ⓒ Susan Bradley
ⓒ Susan Bradley

(5) 지정은 CIO 벤치마크, USGCB(United States Government Configuration Baseline), 호주 사이버 보안국(Australian Cyber Security Centre, ACSC)이 감사 항목을 다루지 않음을 의미한다. 

‘기타 객체 액세스 이벤트(Other Object Access Events)’는 말 많은 감사 설정이다. 에지 시스템이나 매우 민감한 시스템의 특정 상황에서는 이 추가 설정을 활성화하는 것이 좋다. 윈도우 고급 로깅 치트 시트의 설명대로 ‘객체 액세스/기타 객체 액세스 이벤트 성공 및 실패’를 활성화해 새롭거나 업데이트된 일정의 작업에 대해 4698과 4792 이벤트를 추가한다. 여기에는 (작업을 만든 사용자, 전체 명령 줄, 일정 세부 정보를 식별하는) 작업의 전체 XML이 포함된다. 

감사해야 할 또 다른 핵심 항목은 외장 또는 USB 플래시 드라이브 사용이다. 이 감사를 사용하려면 ‘이동식 저장소 성공 및 실패에 대한 객체 액세스’를 활성화한다. 이렇게 하면 컴퓨터에서 미디어 장치의 사용 및 제거에 대한 로깅을 활성화하고 플래그를 지정할 수 있다. editor@itworld.co.kr


X