유저랜드 후킹 - 역사
Last updated
Last updated
공격자들은 에서 시작된 파워쉘 열풍 이후 2017년 파워쉘의 몰락을 거쳐 .NET/C#/C++/Nim/Golang 등을 이용해 더 로우-레벨의 툴 제작(Tradecraft)을 시도하고 있다. 이에 발 맞춰 2013년도에 EDR 솔루션이 개발됐고, 2016년도 부터 본격적으로 EDR 솔루션을 도입하는 회사들이 많아짐에 따라 EDR vs. 공격자 구도가 형성됐다.\
이 구도에서 가장 치열했던 창과 방패의 싸움은 2016년~2020년의 유저랜드 후킹과 우회일 것이다. 2021년 기준 많은 EDR 솔루션들이 커널 모드로 다시 돌아가며 다양한 탐지 방법을 만들어내고 있지만, 그 전에 가장 많이 쓰이던 탐지 기법은 바로 유저랜드 후킹이였다.
2022년도 기준 현재 시장에 나와있는 EDR 솔루션들은 다양한 방법을 통해 악성코드 및 악성행위를 탐지한다. 커널 접근이 가능했던 “옛날”과 달리, Kernel Patch Protection (PatchGuard) 이 적용된 이후 보안 솔루션들은 커널 모드에서 벗어나 유저 모드에서 탐지를 진행해야한다. 유저 모드에 있는 탐지 방법 및 데이터 측정 출처 (telemetry sources)의 종류는 많이 있지만, 가장 많이 알려져있는 기법/기술은 다음과 같다.
유저랜드 후킹 (Userland Hooking)
커널 콜백 함수 (Kernel Callbacks)
ETW (Event Tracing for Windows)
미니필터 드라이버 (Mini-Filter Drivers)
파워쉘과 .NET AMSI (AntiMalware-Scanning-Interface)
유저랜드 후킹은 2016년 ~ 2020년 중 EDR 솔루션들이 많이 사용하던 탐지 방법 중 하나다. 물론 현재에도 많이 사용하지만, 요새 트렌드는 다시 또 커널 모드로 돌아가는 추세다. 2,4 번의 경우 커널과 관련된 로우레벨 부분이 존재하고 (실무에서 취약한 커널 드라이버 로드 같은 기법은 사용하기 어렵기도 하고), 3번은 현재 공부 하고 있기 때문에 아직까지는 다루지 않는다.