팁(트러블슈팅)

AFL++ 설치시에 afl-lto 설치 안될때해결

JUNFUTURE 2024. 2. 12. 20:08

afl-lto가 설치되지않는 경우 => llvm 버전 때문일 확률이 높다.

AFL++에서 공식적으로 llvm 버전 11이하에서는 afl-lto가 설치되지 않는다고 공표했다.

 

llvm 버전확인 및 설치하는방법 (링크)

아래 링크를 참고해서 현재 llvm 버전이 몇인지 확인해보자.

https://juntheworld.tistory.com/173

 

Ubuntu LLVM 설치 및 버전확인 방법 (export LLVM_CONFIG)

버전확인 설치된 llvm 버전확인 /usr/lib/ 경로에서 설치된 llvm-N 폴더를 확인하면된다. cd /usr/lib # llvm-N 폴더 여부 확인 현재 설정된 환경변수(LLVM_CONFIG) 값 확인 LLVM을 사용하여 컴파일을 진행할 경

juntheworld.tistory.com

 

LLVM > 12 설치 및 AFL++ 재컴파일 (2024.2)

 

afl++에서 afl-clang-lto를 쓰려면 llvm 12 이상 버전을 써야한다고 공표했다.

LLVM 12 설치

sudo apt-get install -y lld-12 llvm-12 llvm-12-dev clang-12 || sudo apt-get install -y lld llvm llvm-dev clang

 

LLVM_CONFIG 세팅

LLVM_CONFIG가 잘 세팅되면, llvm-mode에서 잘 인식한다.

 

afl-lto 설치 잘 됨!

/usr/lib/llvm-11을 삭제하고, export LLVM_CONFIG="llvm-config-12" 후에 

make distrub

을 하면 아래와 같이

sudo make install