본문 바로가기

리눅스

우분투에서 YARA를 설치하는 방법

반응형

우분투에서 YARA를 설치하는 방법

테스트 환경

$ lsb_release -d
Description:    Ubuntu 22.04.3 LTS

apt로 설치(간단하지만 최신 버전이 아닐 수 있음)

yara 설치 확인

sudo apt update
sudo apt install yara

yara 버전 정보 확인

yara --version
4.1.3

CentOS 7에서 YARA를 설치하는 방법

더보기

---

sudo yum install yara
4.1.3

---

소스에서 빌드하여 설치(최신 버전 사용 가능)

필수 패키지 설치

sudo apt update
sudo apt install -y automake libtool make gcc pkg-config libssl-dev

YARA 소스 다운로드

git clone --recursive https://github.com/VirusTotal/yara.git
cd yara

빌드 및 설치

./bootstrap.sh
./configure
make
sudo make install

yara 버전 정보 확인

yara --version
728x90

YARA 실행 방법

YARA 규칙 파일 만들기

  • KrCERT 룰 일부 발췌 예시
vim bpfdoor.yar
rule Test_BPFDoor_Example {
    meta:
        description = "Example test rule for BPFDoor"
        author = "KrCERT"
        date = "2025-05-06"
    strings:
        $ps1 = { C6 85 ?? ?? FF FF 50 C6 85 ?? ?? FF FF 53 C6 85 ?? ?? FF FF 31 }
    condition:
        uint32(0) == 0x464C457F and $ps1
}

규칙 문법적 확인

yara -C bpfdoor.yar

테스트용 ELF 파일 만들기

  • 더미 ELF 바이너리를 생성합니다.
echo -e '#include<stdio.h>\nint main(){printf("Test\\n");return 0;}' > test.c
gcc -o test_elf test.c

YARA 룰을 테스트용 ELF에 적용

yara bpfdoor.yar ./test_elf

테스트를 위한 바이트 삽입

echo -ne '\xC6\x85\x00\x00\xFF\xFF\x50\xC6\x85\x00\x00\xFF\xFF\x53\xC6\x85\x00\x00\xFF\xFF\x31' >> test_elf

단일 파일 검사

yara bpfdoor.yar ./test_elf

디렉토리 전체 검사

yara -r bpfdoor.yar /usr/bin

로깅 또는 결과 저장

yara -r bpfdoor.yar /usr/bin | tee yara_result.log

 

반응형