
New releaseJul 21, 2026
angr v9.3.0
강력하고 사용자 친화적인 바이너리 분석 플랫폼!
angr
angr는 플랫폼에 독립적인 바이너리 분석 프레임워크입니다. UC Santa Barbara의 컴퓨터 보안 연구소, 아리조나 주립대학교의 SEFCOM, 이들의 CTF 팀인 Shellphish, 오픈 소스 커뮤니티, 그리고 **@rhelmot**이 제공합니다.
프로젝트 링크
홈페이지: https://angr.io
프로젝트 저장소: https://github.com/angr/angr
API 문서: https://docs.angr.io/en/latest/api.html
angr란 무엇인가?
angr는 바이너리를 로드하고 다양한 멋진 작업을 수행할 수 있는 Python 3 라이브러리 모음입니다:
- 디스어셈블리 및 중간 표현 리프팅
- 프로그램 계측
- 기호 실행
- 제어 흐름 분석
- 데이터 의존성 분석
- 값 집합 분석 (VSA)
- 디컴파일
가장 일반적인 angr 작업은 바이너리 로딩입니다: p = angr.Project('/bin/bash') IPython과 같은 향상된 REPL에서 이 작업을 수행하면 탭 자동 완성을 사용하여 최상위-접근 가능 메서드와 해당 독스트링을 탐색할 수 있습니다.
"angr 설치 방법"의 간단한 버전은 mkvirtualenv --python=$(which python3) angr && python -m pip install angr입니다.
예제
angr는 다양한 바이너리 분석 작업을 수행합니다. 시작을 돕기 위해, CTF 챌린지에서 플래그를 얻기 위한 기호 실행의 간단한 예제를 제공합니다.
import angr
project = angr.Project("angr-doc/examples/defcamp_r100/r100", auto_load_libs=False)
@project.hook(0x400844)
def print_flag(state):
print("FLAG SHOULD BE:", state.posix.dumps(0))
project.terminate_execution()
project.execute()
빠른 시작
- 설치 안내
- HTML 형식의 문서 및 angr Github 저장소의 소스
- 바로 시작하기: 최상위-접근 가능 메서드
- angr로 CTF 챌린지 해결 예제
- API 참조
- awesome-angr 저장소