다음의 YARA 룰에 대한 설명으로 가장 적절하지 않은 것은?rule … | [경찰간부후보생 시스템네트워크보안] 26년 1회차 기출문제 상세 페이지
1[경찰간부후보생 시스템네트워크보안] 26년 1회차
다음의 YARA 룰에 대한 설명으로 가장 적절하지 않은 것은?
| rule mal_a{ meta: author = “police” date = “2026-08-01” description = “a 악성코드 탐지” strings: $mal_str1 = “VirtualAllocEx” $mal_str2 = “WriteProcessMemory” $mal_str3 = “cmd.exe /c” nocase $file_header = {4D 5A} condition: $file_header at 0 and 2 of ($mal_str*) and ($mal_str3 > 2) } |
1
파일의 시작이 MZ이다.
2
strings는 텍스트 문자, 16진수, 정규표현식 모두 가능하다.
3
이 YARA 룰은 파일에 포함된 문자 패턴을 탐지한다.
4
문자열 중 2번째 문자인 “WriteProcessMemory”와 “cmd.exe /c”가 2번 이상 나타날 때 탐지한다.
해설
특정 두 문자열이 각각 두 번 이상 나타날 때 탐지한다는 설명이 옳지 않다.
조건의 2 of (mal_str*)는 mal_str로 시작하는 세 문자열 가운데 아무거나 두 개가 존재하면 참이라는 뜻이지, 특정 두 문자열을 지정한 것이 아니다. 또 cmd.exe /c에 대한 비교는 그 문자열의 출현 횟수가 2보다 커야 한다는 별도 조건이다.
- 파일의 시작이 MZ: 16진수 4D 5A는 ASCII로 MZ이고, at 0으로 파일 시작 위치를 지정했다.
- strings 형식: 텍스트 문자열, 16진수 바이트열, 정규표현식을 모두 쓸 수 있다.
- 문자 패턴 탐지: 이 룰은 파일 안의 문자열·바이트 패턴 일치로 악성코드를 탐지한다.
오류나 개정된 내용이 보이면 알려주세요