
"Two-Face" Linux용 Rust 바이너리
대부분의 시간에는 무해한 프로그램을 실행하지만, 특정 대상 호스트에 배포되면 다른 숨겨진 코드를 실행하는 실행 파일입니다.
Linux에서 "Two-Face" Rust 바이너리 만들기 문서를 참조하세요.
예를 들어 rustup에서 구할 수 있는 Rust 빌드 환경이 필요합니다.
nightly 툴체인이 필요합니다 (! "never" 타입을 지원하려면).
test-example 스크립트는 전체 예제를 빌드하고 실행합니다.
저장소에는 다음 패키지가 포함되어 있습니다:
evil_binary: 호스트 데이터가 example/host.json에 설정된 값과 일치할 때 실행되는 "숨겨진" 바이너리의 예시입니다.harmless_binary: 다른 호스트에서 실행될 "일반" 바이너리의 예시입니다.example: 이전 두 바이너리를 모두 패킹하고 호스트에 따라 둘 중 하나로 실행을 분기하는 결과 "Two-Face" 바이너리입니다.twoface: 빌드 타임 및 런타임 기능을 제공하는 라이브러리입니다.