끄적이는 보송

[AWS] Amazon FSx for Windows File Server Audit Log 활성화 및 객체 삭제 관련 감사 로그 본문

STUDY/AWS

[AWS] Amazon FSx for Windows File Server Audit Log 활성화 및 객체 삭제 관련 감사 로그

끄적이는 보송 2022. 10. 24. 18:08
반응형

Amazon FSx for Window File Server 서비스는 Audit이라는 감사 로그를 활성화할 수 있다. 감사 추적이라고도 하는 이 서비스는 이벤트 및 변경 사항을 기록 로그이며, 이름에도 알 수 있듯이 나중에 감사에도 쓰일 수 있다. 아무튼 이 Audit Log는 FSx 서비스를 생성할 때, 혹은 생성한 이후에 'FSx 콘솔 환경 > Administration > Manage' 경로로 접근하여 활성화할 수 있다.

Audit Log를 활성화한다는 것은 발생하는 변경 사항을 기록하고 싶다는 것인데 단순 클라우드 환경에서 Audit Log 활성화로는 모든 Audit Log를 생성하지 않는다는 문제가 있다. 위 단계까지만 한다면 Event ID 5140만 발생하게 된다. 즉, FSx Volume에 파일을 생성하건, 수정을 하건, 삭제를 하건 관련 로그는 하나도 찍히지 않은 채 File Share Access 관련하여 Event ID 5140 로그만 생성된다는 말이다. 이를 해결하기 위해서는 FSx의 드라이브 속성에 접근하여 Audit 기능을 활성화해줘야 한다.

 

 

FSx Audit Log 관련 AWS Document

Audit 로그 활성화 및 각 Event ID의 뜻과 기타 자료가 잘 정리되어 있는 AWS Document를 참고해보자.

[+] https://docs.aws.amazon.com/fsx/latest/WindowsGuide/file-access-auditing.html

 

File access auditing - Amazon FSx for Windows File Server

File access auditing Amazon FSx for Windows File Server supports auditing of end-user accesses on files, folders, and file shares. You can choose to send the audit event logs to a rich set of other AWS services enabling querying, processing, storing and ar

docs.aws.amazon.com

 

 

파일 및 폴더 접근에 대한 Audit Log 활성화

FSx가 마운트 되어 있는 장비에 드라이브의 속성에 접근한다.

속성에 들어가면 'Security > Advanced'를 클릭한다.

'Auditing' 탭에 접근하여 적절한 권한이 있는(Administrator group에 속해있는) 사용자를 추가하면 끝이다. 

관련하여 아래 링크를 통해 자세한 내용을 확인할 수 있으니 참고하자 
[+] https://learn.microsoft.com/en-us/windows/security/threat-protection/auditing/apply-a-basic-audit-policy-on-a-file-or-folder

 

 

Audit Log, 삭제 활동 감사 관련하여 분석해보기  (Event ID 4660 안 찍힘 문제)

사실 이 서비스를 활성화 한 이유는 누가 언제 어떤 파일을 삭제했는지 감사하기 위함이었다. 하지만 여기서도 문제가 있었다. 포스팅 글 위에 남겨둔 AWS Document 링크를 참조해보면 아래와 같이 Even ID 4659는 객체 삭제 요청 로그이며, Event ID 4660은 객체가 삭제되었음을 의미하는 로그이다. 하지만 실제로 테스트해 본 결과, Event ID 4659만 보일 뿐 Event ID 4660은 찾을 수 없었다. 왜 그럴까?

Event ID 4659와 4660 의미

Windows는 Low Lovel 수준에서 파일 삭제하는 여러 가지 방법을 제공하며 각각 다른 종류의  "파일 삭제" 이벤트에 해당된다고 한다. 즉, 어플리케이션이 파일 삭제를 구현하는 방법에 따라 {4659, 4660, 4663} 이벤트 중 하나 또는 이들의 조합이 발생할 수 있다는 의미이다. 4660이 안 찍혔던 것이 여기에 있다.

예를 들어보자. 위 화면처럼 파일 탐색기에서 더미 파일을 준비했고, 나는 dummy3 파일을 삭제할 것이다. 이 경우, 아래와 같은 일이 발생하며 CloudWatch Log Group에도 확인할 수 있다.

삭제할 의도로 개체에 대한 핸들이 요청되었다는 %%1537 값의 Delete Access Type이 찍힌 Event ID 4659가 발생한다. 그러고 나서 파일 탐색기가 파일 정보 읽고 출력했기 때문에 추가적으로 읽기 액세스 권한이 있는 Event ID 4663가 찍히게 될 것이다. 일반적으로 FSx는 Windows에서 생성된 감사 로그를 전달하기만 하며 어떤 삭제 이벤트 ID가 사용되는지 보장할 수 없다고 한다. 그러므로 파일 삭제 이벤트에 대한 로그를 검토할 때 가능한 모든 이벤트 ID를 확인한다는 것이다. (도대체 왜...)

 

 

사용자가 FSx Volume 파일 삭제 시, Audit Log에 발생하는 일

사용자가 FSx Volume에 있는 파일을 삭제했다고 가정하고 일의 발생 순서를 정리해보자.

1. 사용자 FSx Volume에서 파일 삭제 수행.
2. 파일 속성을 읽기 위해 Event ID 4663 발생.
3. 삭제 이벤트가 발생했다고 해서 Event ID 4660이 무조건 생성되지는 않음. 
4. 하지만 사용자 파일 삭제 요청인 %%1537 Access List 값을 포함하고 있는 Event ID 4659는 발생한다. 

Event ID 4663과 4660의 차이는 아래와 같으며 링크를 통해 자세히 확인할 수 있다.
[1] https://learn.microsoft.com/en-us/windows/security/threat-protection/auditing/event-4663
[2] https://learn.microsoft.com/en-us/windows/security/threat-protection/auditing/event-4660 

* Event ID 4663:
  개체에 대해 특정 작업이 수행되었음을 나타낸다.
  개체는 파일 시스템, 커널 또는 레지스트리 개체이거나 이동식 저장소나 장치의 파일 시스템 개체일 수 있다. 
* Event ID 4660:
  이 이벤트는 개체가 삭제될 때 생성됩니다. 개체는 파일 시스템, 커널 또는 레지스트리 개체일 수 있다.

개인적으로 Event ID 4660 발생시켜보려 여러 방법을 해봤지만 구현되지 않았다. 신뢰할 수 있을지 모르겠지만 특정 파일 (MS-Office.tmp 파일) 삭제만 발현된다는 글을 읽었다. 마이크로소프트 도큐먼트에는 파일 유형에 따라 생성될 이벤트 세부 정보를 나타내지 않아 아직까진 추정하고 있는 단계이다. 누군가 아는 사람 있으면 공유 바란다. 
[+] https://community.netapp.com/t5/Network-and-Storage-Protocols/SMB-file-audit-delete-events/m-p/136088#

반응형
Comments