티스토리 뷰
20년 4월 29일 yara 4.0.0이 업데이트가 됐습니다[1][2]. 크게 새로운 modifier은 base64, base64wide, private가 생겼으며, "pe" 모듈에 pdb_path, export_details, exports_index가 추가되었다. 나머지 항목들은 기존 기능을 개선하거나 버그를 FIX한 형태이므로 언급은 하지 않겠습니다.
Base64 strings
- base64 modifier는 base64 인코딩된 문자열을 검색할 때 사용된다.
- base64wide modifier는 base64 modifier와 동일하게 동작하지만, base64 동작 후 wide 형태로 변환된다.
- base64 및 ba64wide modifier는 text string에서만 지원된다.
- (주의) 16진수 문자 또는 정규식, modifier(xor, fullword, nocase)와 함께 사용하면 컴파일러 오류가 발생한다.
- YARA가 base64 인코딩 후 선행 및 후행 문자를 제거하는 방식 때문에 "Dhis program cannow" 및 "This program cannot"의 base64 인코딩 중 하나가 동일하다.
- 실행은 (Figure 2)의 2번과 같다.
- 아래 룰과 같이 custom alphabet을 지원한다.
rule Base64Example2
{
strings:
$a = "This program cannot" base64("!@#$%^&*(){} [].,|ABCDEFGHIJ\x09LMNOPQRSTUVWXYZabcdefghijklmnopqrstu")
condition:
$a
}
Private strings
- YARA의 모든 문자열은 private로 표시될 수 있으며, 이는 YARA의 출력에 포함되지 않는다. 커맨드라인으로 -s 옵션을 사용하면 탐지된 스트링이 출력된다. 하지만, private을 사용하면 스트링은 출력이 안되지만 룰에 탐지되었다는 표시는 출력된다. (Figure 2)는 yara 4.0.1 버전에서 아래 룰(Base64Example2)을 테스트한 것으로, 1번은 private 키워드를 추가했을 때 나오는 출력화면, 2번은 private을 지웠을 때 나오는 화면이며, 3번은 base64, private modifier를 모두 지웠을 때 나오는 화면이다. 위에서 설명한 것과 같이 private을 적용하면 1번에서 탐지된 룰 이름은 나오지만, 탐지된 오프셋과 내용은 출력되지 않는다.
rule Base64Example3
{
strings:
$a = "This pdrogram cannott" base64 private
condition:
$a
}
위에서는 새롭게 추가된 modifier에 대해 알아보았다. 아래는 PE 모듈에 새롭게 추가된 condition에서 사용할 수 있는 함수이다. exports_index, exports_index, exports_index, pdb_path, export_details가 추가되었다. (해당 함수에 대한 실습은 추후 업로드할 예정)
커맨드라인에서 사용할 수 있는 옵션인 --scan-list가 추가되었다.
참고 :
[1] github.com/VirusTotal/yara
'기타' 카테고리의 다른 글
Yara modifier : XOR strings 정리 (0) | 2020.06.10 |
---|---|
AMSI(AntiMalware Scan Interface) 조사 및 분석 (0) | 2020.04.17 |
[위협정보 공유] Guidance on the North Korean Cyber Threat 번역 (0) | 2020.04.16 |
Cuckoo 샌드박스 기반 가상 회피 악성코드 분석 시뮬레이션 (0) | 2020.03.09 |
CVE-2018-9375(Android’s Personal Dictionary Vulnerability) 분석 및 실습 (0) | 2020.03.09 |
- Total
- Today
- Yesterday
- Cisco Talos
- us-cert
- .wll
- koodous
- 위협정보공유
- Bisonal
- 한글악성코드
- Static Analysis Engine
- 출처 : Do it 안드로이드 프로그래밍
- malware
- 해킹메일
- vuln
- keylogger
- 멋쟁이사자처럼 4기
- 스피어피싱
- CVE-2018-9375
- Kimsuky
- MS-Office
- Decoding
- 비트코인
- AMSI
- CVE-2018-0798
- idapython
- Yara
- infostealer
- Servey
- VirusBulletin
- cuckoo-sandbox
- 악성코드
- Flybits
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |