위키득계정 ↗
기술

Qiling

Qiling기술
분류
바이너리 에뮬레이션 프레임워크
CPU 실행 기반
Unicorn
구현 기반
Python
환경 구성
로더 시스템 호출 파일시스템 모델
Qiling은 CPU 에뮬레이션에 실행 파일 로딩과 운영체제 환경 모델을 더한 바이너리 분석 프레임워크다. Unicorn 위에서 다양한 플랫폼의 프로그램 실행을 구성한다.

CPU 실행 이상의 환경

실행 파일은 명령만으로 동작하지 않고 로더와 라이브러리, 시스템 호출 등의 지원을 필요로 한다. Qiling은 이런 높은 수준의 환경을 제공하는 방향의 프레임워크다. 원래 운영체제에서 실행하는 것과 환경을 모델로 제공하는 것은 다르다.

관찰 가능한 실행

명령과 기본 블록, 메모리 접근, 시스템 호출 등 여러 수준에 훅을 연결할 수 있다. 실행 상태 저장과 복원도 분석 구성에 활용할 수 있다. Python API로 필요한 행동을 관찰하고 사용자 정의 분석을 구성한다.

지원 목록의 해석

플랫폼과 아키텍처, 파일 형식의 조합에 따라 실제 지원은 달라질 수 있다. 특정 운영체제 이름이 있다는 사실만으로 모든 라이브러리와 기능이 동일하게 재현되는 것은 아니다. 대상이 필요로 하는 외부 자원과 모델 범위를 함께 확인한다.

관련 문서

Unicorn / Miasm / SymQEMU / Frida