
X-Ways Forensics용 네이티브 YARA 스캐너 X-Tension으로, 인-스냅샷 파일 스캐닝, 멀티스레드 RVS 지원, 보고서 테이블 출력, 디스크 쓰기 없음 등을 지원합니다.
이 X-Ways Forensics X-Tension은 X-Ways 내에서 YARA를 기본적으로 사용할 수 있게 합니다. 이를 위해 X-Ways Forensics API와 YARA API를 모두 사용합니다.
참고: 이는 공식적인 CrowdStrike 제품이 아닌 오픈 소스 프로젝트입니다.
명령줄 인터페이스를 통해 YARA를 실행하는 것보다 X-Ways 내에서 YARA를 실행하면 많은 이점이 있습니다.
X-Ways Forensics가 올바르게 설치 및 설정되었다고 가정하면, 릴리스 페이지에서 컴파일된 DLL을 다운로드하여 X-Ways Forensics 설치 폴더 내의 x64 폴더에 복사하기만 하면 됩니다.
X-Tension은 X-Ways Forensics GUI 또는 X-Ways Forensics 명령줄을 통해 실행할 수 있습니다. 이 readme는 GUI 방법에 초점을 맞춥니다.
GUI 내에서 X-Tension을 실행하는 두 가지 방법이 있습니다: Refine Volume Snapshot ("RVS") 메뉴를 통하거나 Directory Browser Context ("DBC") 메뉴를 통하는 것입니다. 어떤 방법을 사용할지는 사용자가 달성하려는 목표에 따라 다릅니다. 일반적으로 사용자가 적절한 최대 파일 크기(예: 25MB)를 지정하면 RVS 메뉴를 통해 YARA를 실행하는 것이 매우 빠릅니다. 사용자가 DBC 메뉴를 통해 더 큰 개별 파일에 대해 YARA를 실행해야 하는 경우, X-Tension은 데이터를 청크(크기는 사용자가 제공)로 분할합니다.
YARA 규칙이 컴파일에 실패하는 경우, X-Ways 메시지 창에 오류가 발생한 줄과 YARA 오류 메시지가 표시됩니다. YARA 규칙 내에서 이러한 오류를 수정하고 다시 시도하세요. YARA 경고 수가 X-Ways 메시지 창에 표시되며, 이러한 경고의 정확한 세부 정보는 X-Ways 케이스 로그에 기록됩니다.
X-Tension은 여러 YARA 규칙 파일의 사용을 지원합니다 (중복 규칙의 경우 YARA가 오류를 발생시키고 컴파일에 실패한다는 점에 유의하세요). 또한 단일한 이미 컴파일된 규칙 파일(.yara/.yar)의 사용도 지원합니다.
참고: 스캔된 데이터가 두 청크/버퍼 경계에 걸쳐 있는 경우 유효한 YARA 적중을 놓칠 위험이 있습니다. 이 문제가 발생하면 버퍼 크기를 늘리거나 X-Ways에서 파일을 복사하여 YARA 명령줄 인터페이스를 사용하여 스캔하세요.
| 방법 -> | RVS | DBC |
|---|---|---|
| 멀티스레드 | 예 | 아니요 |
| 최대 파일 크기 입력 요청 | 예 | 아니요 |
| 스캔 버퍼 크기 입력 요청 | 예* | 예 |
GUI 내에서 이전에 생성했거나 열었던 케이스가 있으면 Specialist -> Refine Volume Snapshot으로 이동합니다. 그런 다음 'Run X-Tensions' 옵션을 선택하고 나타나는 세 개의 점을 클릭합니다. 팝업 메뉴에서 더하기(+) 기호를 클릭하고 이 저장소에서 다운로드한 XT_Yara.dll 파일을 찾은 다음 OK를 누릅니다.
그런 다음 YARA 규칙 파일을 선택하라는 메시지가 표시됩니다. 입력 창이 나타나고 스캔할 최대 파일 크기를 입력하라는 요청을 받습니다. 이는 필수 항목입니다. 예를 들어 맬웨어 샘플이나 웹 셸만 찾는 경우 25-50MB가 적절한 최대 크기일 수 있습니다.
사용자가 100MB보다 큰 최대 파일 크기를 선택한 경우, YARA 스캐너에서 사용할 버퍼 크기를 묻는 두 번째 사용자 입력 프롬프트가 표시됩니다. 최대 2GB까지 문제 없이 테스트되었지만, 메모리 제약 조건과 선택한 스레드 수에 따라 신중하게 선택하세요.
GUI 내에서 이전에 생성했거나 열었던 케이스가 있으면 스캔하려는 파일을 선택한 다음 파일 중 하나를 마우스 오른쪽 버튼으로 클릭하고 'Run X-Tensions...'를 선택합니다. 그런 다음 YARA 규칙 파일을 지정하라는 메시지가 표시됩니다. YARA 스캐너에서 사용할 버퍼 크기를 묻는 사용자 입력 프롬프트가 표시됩니다. 최대 2GB까지 문제 없이 테스트되었지만, 메모리 제약 조건과 선택한 스레드 수에 따라 신중하게 선택하세요.
최대 파일 크기에 대한 프롬프트는 없습니다.
YARA 적중이 있는 파일은 'YARA Hits'라는 보고서 테이블에 추가됩니다. 적중한 정확한 규칙은 X-Ways Forensics 내의 'Comments' 필드에 파일별, 줄별로 추가됩니다.
일반적인 출력은 다음과 같습니다:
[XT] YARA 4.2.2 library initialised
[XT] There were 9 YARA compile warnings. Check the XWF case log for details
[XT] YARA rules compiled successfully
[XT] Operation Complete. Processing time: 0.000000s
[XT] Summary: Found 240 YARA hits
[XT] YARA library finalised