지난주와 지지난주 Github API로 생성한 C파일들을 Tigress로 난독화 하기 위해 컴파일 가능한 파일들을 분류하는 작업을 해 주었다.
코드는 매우 길어 링크를 올려두도록 하겠다.
https://github.com/sangjun19/Deobfuscator/blob/main/src/obfuscation_helpers/generate_compiled.py
코드는 python으로 작성하였고, 중요한 부분 위주로 설명하도록 하겠다.

이 부분은 gcc로 컴파일 하고 성공 여부를 리턴하고 생성된 파일을 제거하는 코드이다.

이 부분은 Tigress에서 난독화 할때 코드에 있어야 하는 헤더파일을 추가해 주는 부분이다. 이미 헤더파일이 존재한지 has_stdlib_include 함수로 확인 후 임시 파일을 생성하여 저장해 주었다.

실행 결과는 67515개 파일중 347개가 컴파일에 성공한 것을 볼 수 있었다.
가져온 코드들의 컴파일 성공률이 너무 낮은 것 같다.
컴파일 에러 원인을 해결하기에는 에러의 종류가 다양하여 어려운 일인 것 같고, 더 많은 코드를 가져오거나, 다른 언어를 컴파일 해보는 등의 시도를 해볼 수 있을 것 같다.