
Qiling은 Unicorn Engine을 기반으로 여러 운영체제와 프로세서 구조의 실행 파일을 에뮬레이션하고 분석할 수 있는 파이썬 프레임워크다. 실행 중인 코드에 훅을 걸거나 패치하고, 메모리·레지스터·시스템 호출을 살펴보는 보안 분석 도구를 만들 수 있다.
프로젝트 설명에 따르면 Qiling은 Windows, macOS, Linux, Android, BSD, UEFI, DOS와 MBR을 지원하며, x86·ARM·MIPS·RISC-V·PowerPC 계열 등 여러 아키텍처와 PE·Mach-O·ELF 등의 파일 형식을 다룬다. Windows 드라이버(.sys), Linux 커널 모듈(.ko), macOS 커널(.kext)은 Demigod를 통해 지원한다고 안내한다.
Qiling은 운영체제 맥락 없이 CPU 명령어를 에뮬레이션하는 Unicorn과 달리 실행 파일 로더, 동적 링커, 시스템 호출 및 입출력 처리기를 제공한다. 프로젝트는 이를 통해 대상 바이너리의 네이티브 운영체제가 없어도 실행할 수 있다고 설명한다. QEMU 사용자 모드와 비교해 동적 계측과 실행 중 패치 기능을 제공하며, 운영체제 간 실행도 지원한다고 밝힌다.
간단한 실행 도구인 qltool은 Qiling을 pip로 설치할 때 함께 설치된다. 터미널 UI는 qltool qltui로 실행할 수 있다. 소스 체크아웃에서는 ./qltool을 사용하며, 예제 바이너리와 루트 파일 시스템은 별도로 내려받아야 한다. 설치 방법은 설치 안내에서 확인할 수 있다.
Qiling은 GNU 일반 공중 사용 허가서(GPL) 버전 2 또는 선택에 따라 그 이후 버전으로 배포된다. 자세한 내용은 프로젝트 웹사이트와 GitHub 저장소를 참고하면 된다.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요