github.devotd.
새 소식보안

lief-project/lief 1.0.0 — ELF·PE·Mach-O 바이너리 파싱·수정 라이브러리

ELF·PE·Mach-O 등 실행 파일 형식을 파싱·수정하는 C++ 라이브러리 LIEF의 지원 범위와, 최신 릴리스 1.0.0의 변경 내역이 주어지지 않은 점.

저장소 정보lief-project/lief ↗

ELF·PE·Mach-O 등 실행 파일 형식을 파싱·수정하는 C++ 라이브러리 LIEF의 지원 범위와, 최신 릴리스 1.0.0의 변경 내역이 주어지지 않은 점.

GitHub 설명: LIEF - Library to Instrument Executable Formats (C++, Python, Rust)

스타
★ 5.6K
포크
756
언어
C++
라이선스
Apache-2.0
최신 릴리스
1.0.0
원문 보기 ↗GitHub에서 보기 ↗

LIEF(lief-project/lief)는 ELF·PE·Mach-O 같은 실행 파일 형식을 해석하고 다시 쓰는 C++ 라이브러리다. ELF는 리눅스가, PE는 윈도우가, Mach-O는 macOS가 쓰는 바이너리 형식이고, LIEF는 이 형식들을 하나의 공통 기능으로 추상화한다. 이 저장소의 최신 릴리스는 1.0.0인데, 제시된 정보에는 1.0.0이 무엇을 바꾸었는지가 담겨 있지 않다.

해석만 하는 도구가 아니라 고쳐 쓸 수 있다는 점이 이 라이브러리의 핵심이다. 실행 파일 구조를 분석하고 재작성하는 작업에 직접 쓰이며, README는 ELF·PE·MachO·COFF·OAT·DEX·VDEX·ART 파싱을 지원한다고 밝힌다. 런타임 정보와 디버그 정보(DWARF·PDB), Objective-C 메타데이터, 디스어셈블러·어셈블러 기능, Ghidra·BinaryNinja 플러그인도 함께 제공한다. C++·Python·Rust API를 공식으로 제공하고 Node.js API는 비공식에 그친다. 라이선스는 Apache-2.0이고, GitHub 스타는 5601개이며 프로젝트는 2017년 3월 16일에 시작했다.

다만 근거가 멈추는 지점도 분명하다. 성능 비교 수치와 도입 사례, 릴리스 노트는 주어진 정보에 없다. 신선성·기술·품질 점수는 비어 있고, 모멘텀 점수만 10점 만점에 1.8점으로 낮게 남아 있다. 바이너리 구조를 분석하고 고쳐 쓰는 도구를 직접 만들 때는 검토할 대상이지만, 1.0.0이 무엇을 바꾸었는지는 릴리스 노트를 확인하기 전까지 판단할 수 없다.