소스 대신 실행 코드 분석
소스 수준에서 확인한 동작이 실제 실행 파일에도 유지되는지 살펴보거나, 소스가 없는 프로그램을 분석할 때 바이너리 분석이 필요하다. BINSEC은 이 층위에서 실행 조건과 동작을 추론하는 기반을 제공한다.
여러 기법의 역할
기호 실행은 입력에 따른 경로 조건을 다루고 추상 해석은 상태를 요약하는 데 쓰인다. SMT 해결은 만들어진 논리 조건을 처리한다. 도구 모음에 기법이 포함되어 있다는 사실과 모든 분석이 그 기능을 동시에 사용하는 것은 다르다.
검사 질문을 정하기
어셈블리 검증이나 난독화 해제, 보안 조건 분석 등 활용 목적에 맞는 구성이 필요하다. 초기 상태와 입력 가정, 검사할 속성을 명확히 해야 결과를 해석할 수 있다. 특정 분석의 성공을 바이너리 전체의 무결점 보장으로 확대하지 않는다.
관련 문서
Angr / S2E / Triton 바이너리 분석 / BAP