bddisasm

(★ 1,084)

bddisasm is a fast, lightweight, x86/x64 instruction decoder. The project also features a fast, basic, x86/x64 instruction emulator, designed specifically to detect shellcode-like behavior.

  • .gitignore
  • .readthedocs.yaml
  • .vsconfig
  • bddisasm.pc.in
  • bddisasm.sln
  • bddisasmConfig.cmake
  • benchmark.sh
  • CHANGELOG.md
  • CMakeLists.txt
  • CMakePresets.json
  • Dockerfile.fuzzing
  • LICENSE
  • Makefile
  • prepare_fuzzing_image.sh
  • README.md
  • SECURITY.md

# 설치 가이드

1. 코드 내려받기
git clone https://github.com/bitdefender/bddisasm

깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.

cd bddisasm

방금 내려받은 프로젝트 폴더 안으로 이동합니다.

2. Docker

쉬움 추천
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Docker Desktop 컨테이너를 빌드하고 실행하려면 필요합니다. 설치 후 실행해서 백그라운드에 켜두세요.
docker build -f Dockerfile.fuzzing -t bddisasm .

Dockerfile을 기반으로 실행 가능한 이미지를 빌드합니다.

docker run -p 8080:80 bddisasm

빌드된 이미지를 실제 컨테이너로 실행합니다.

터미널에 docker compose ps 를 입력해 컨테이너들이 Up 상태인지 확인하세요. README에 포트 번호가 적혀있다면 브라우저에서 http://localhost:포트번호 로 접속해보세요.

3. CMake

보통
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • CMake 빌드 설정을 생성하는 도구입니다.
  • C/C++ 컴파일러 Windows는 Visual Studio(Community 무료), macOS는 Xcode Command Line Tools, Linux는 gcc/g++ 패키지가 필요합니다.
cmake -B build .

이 명령어를 터미널에 그대로 입력해 실행하세요.

cmake --build build

이 명령어를 터미널에 그대로 입력해 실행하세요.

cmake -B build . -DBDD_INCLUDE_TOOL=OFF

이 명령어를 터미널에 그대로 입력해 실행하세요.

cmake --build build --target install

이 명령어를 터미널에 그대로 입력해 실행하세요.

cmake --build build --target isagenerator

이 명령어를 터미널에 그대로 입력해 실행하세요.

build 폴더 안에 실행 파일이 생성됐는지 확인하고, 직접 실행해보세요 (예: ./build/앱이름).

이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.

4. .NET

보통
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • .NET SDK dotnet 명령어를 쓰기 위한 SDK입니다.
dotnet restore

프로젝트에 필요한 패키지를 내려받습니다.

dotnet run

프로젝트를 빌드하고 바로 실행합니다.

dotnet run 실행 후 터미널에 나타나는 안내 메시지나 주소를 확인하세요.

5. Python

쉬움
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Python 3 설치 시 'Add Python to PATH' 옵션을 꼭 체크하세요 (Windows).
⚠️ 이 프로젝트는 규모가 큰 저장소라, 이 방법이 실제 핵심 제품이 아니라 내부 하위 패키지를 가리키는 것일 수 있습니다. README 전체를 함께 확인해보세요.
pip install .

PyPI에 배포된 패키지를 바로 설치합니다. 소스 클론이 필요 없습니다.

python <실행할 파일명>.py # README에서 정확한 실행 파일명을 확인하세요

파이썬 스크립트(또는 모듈)를 실행합니다.

에러 메시지 없이 실행되고 터미널에 안내 문구가 출력되면 정상입니다.

6. Rust

보통
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Rust (rustup) rustup으로 설치하면 cargo도 함께 설치됩니다.
⚠️ 이 프로젝트는 규모가 큰 저장소라, 이 방법이 실제 핵심 제품이 아니라 내부 하위 패키지를 가리키는 것일 수 있습니다. README 전체를 함께 확인해보세요.
cd bindings/rsbddisasm

이 프로젝트의 관련 파일이 하위 폴더 안에 있어서, 먼저 그 폴더로 이동합니다.

cargo build --release

Rust 프로젝트를 컴파일합니다.

cargo run

빌드 후 바로 실행까지 진행합니다.

cargo build가 에러 없이 끝나면 성공입니다. target/ 폴더에 실행 파일이 생성됩니다.

7. Make

보통
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Make Linux/macOS는 보통 기본 설치되어 있습니다. Windows는 별도 설치(예: MSYS2, WSL)가 필요합니다.
make

생성된 빌드 설정을 바탕으로 실제 컴파일을 진행해 실행 파일을 만듭니다.

에러 없이 끝나면 성공입니다. 생성된 실행 파일을 직접 실행해보세요.
// repository documentation