바이너리에서 분석 시작하기
SymCC는 컴파일 과정에서 분석 코드를 넣지만 SymQEMU는 바이너리를 에뮬레이션하며 기호 실행 기능을 제공한다. 따라서 소스 재컴파일 여부가 두 도구를 구분하는 중요한 차이다. 분석할 파일의 형식과 실행 환경은 별도로 맞춰야 한다.
분기 조건으로 입력 만들기
실행하면서 입력에 따라 달라지는 조건을 분석하고 다른 동작을 유도하는 입력을 생성한다. SymCC의 설정과 퍼징 보조 도구를 활용하는 혼합 퍼징 경로도 있다. 입력 생성 기능은 실행 환경과 런타임의 지원 범위 안에서 해석해야 한다.
아키텍처 지원 확인
대표 빌드 구성은 64비트 x86 사용자 모드이며 AArch64는 실험적 지원으로 안내된다. 다른 비트 폭이나 아키텍처가 자동으로 같은 수준에서 동작한다고 가정하면 안 된다. QEMU 기반이라는 사실과 모든 QEMU 대상을 지원한다는 주장은 구분한다.
관련 문서
SymCC / S2E / Angr / Triton 바이너리 분석