최근 AMSI를 활용해야 할 일이 있었다.
관련되어 정보를 조사하며 느낀 것이 AV 제품이나 샌드박스 분석 플랫폼 등 많은 보안 제품에 활용하기 좋은 기술인데, 아직 해당 기술을 접목한 제품이 많지 않다는 생각을 했다.
본인은 이러한 AMSI에 대한 이해도 향상을 목적으로 포스팅을 해봐야겠다고 생각했다.
🔔 오타 등 작성된 정보에 대한 피드백을 환영합니다.
AMSI(Antimalware Scan Interface)는 응용프로그램, 혹은 서비스가 백신 제품과 통합될 수 있도록 도와주는 다목적 인터페이스이다.
해당 기술은 다양한 상황에서 사용될 수 있다. 예를 들면 개발자가 본인의 프로그램에서 Anti-Virus 제품과 연동을 하려할 때 사용 가능하며, Anti-Virus 제품에서 Fileless형 Malware의 컨텐츠를 획득하기 위해 Third Party를 개발하여 활용할 수도 있다.
이 외에도 활용도는 무궁무진하다.
🔔 AMSI는 Consumer(응용 프로그램, 서비스 등)와 Provider(백신 업체 등)의 연결다리 역할을 수행함
다음은 AMSI Architecture이다.
출처 : https://learn.microsoft.com/ko-kr/windows/win32/amsi/how-amsi-helps
해당 구조를 통해 알 수 있는 가장 중요한 부분은 AMSI는 열려있는 구조라 모든 어플리케이션에서 호출 가능하다는 것이다.
복잡한 과정을 단순화해서 AMSI 동작 방식을 정리해보면 다음과 같다.
🔔 즉, AMSI를 이용하여 파일이나 스크립트의 행위를 즉시 탐지해서 콘텐츠 정보 로깅, 프로세스 차단 등의 행위를 수행 가능함
보안 직무에 있는 한 사람의 관점으로 적용 이점을 풀어보자 한다.
아직 모든 환경에 활용 가능한 것은 아니다. MS는 계속 범위를 확장해 나갈 것이라고 발표했다.
다음 글에선 AMSI Provider를 실제로 구현해보고, Bypass 기술에 대해 설명드리겠습니다.
이상으로 글을 마치겠습니다.