Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
bochscpu-python — BochsCPU용 Python 바인딩 | Kitploit
도구/GitHubGitHub/hugsy/bochscpu-python
Dynamic Analysis (Sandboxing)Reverse EngineeringMalware AnalysisBinary Analysis
GitHubhugsy/bochscpu-python

bochscpu-python

BochsCPU용 Python 바인딩

저장소 보기
39431년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

logo3

bochscpu-python

Python 3.8+ Downloads Code style: black Licence MIT Builds

@yrp님의 BochsCPU를 위한 Python 바인딩으로, FFI를 사용해 x86 코드를 쉽고 정확하게 에뮬레이션합니다.

설치

bochscpu-python은 Python 3.8 이상의 환경만 필요합니다.

PyPI를 통해 (권장)

가장 간단하게 실행하는 방법은 PyPI에서 안정적인 패키지 버전을 사용하는 것입니다.

root@kitploit:~
python -m pip install bochscpu-python

생성된 빌드를 통해

저장소의 Github Actions 탭에서 최신 작업 산출물(artifact)을 다운로드하세요. ZIP 파일을 추출한 뒤 wheel 폴더 안에 있는 .whl 파일을 설치하세요.

root@kitploit:~
python -m pip install wheel/bochscpu-$version-$os-$arch.whl

소스 저장소에서

비교적 간단합니다:

root@kitploit:~
python -m pip install .

또는 클론하지 않고

root@kitploit:~
python -m pip install git+https://github.com/hugsy/bochscpu-python.git#egg=bochscpu-python

이 방법은 아래 설명된 대로 필요한 모든 빌드 도구가 설치되어 있어야 합니다.

빌드

요구 사항

  • Python 3.8+ (개발 키트 포함)
  • cmake
  • pip
  • C++20 호환 컴파일러 (Windows용 cl, MacOS용 clang++, Linux용 g++로 테스트됨)

단계

  • BochsCPU, BochsCPU-FFI, BochsCPU-Build를 각각의 페이지 지침에 따라 빌드하세요.
  • ... 또는 Windows/Linux 라이브러리 오브젝트 파일용 BochsCPU-FFI를 build Github Actions에서 다운로드할 수 있습니다.
  • *.lib 파일을 bochscpu/lib/<BuildType>으로 이동하세요 (BuildType은 Debug, Release, RelWithDebInfo 등이 될 수 있습니다).
  • 요구 사항 설치: python -m pip install -r requirements.txt
  • cmake로 빌드하세요. 이 과정은 Python 세션에서 import bochscpu로 가져올 수 있는 bochscpu pyd 파일(및 해당 PDB)을 생성합니다.
  • ... 또는 프로젝트 루트에서 .whl 파일을 생성할 수도 있습니다:
root@kitploit:~
python -m pip wheel .

사용법

bochscpu 모듈을 import하기만 하면 재미가 시작됩니다! 패키지를 설치하면 인터페이스 파일도 함께 설치되어 최신 IDE(VSCode, PyCharm 등)에서 유용한 자동 완성을 제공합니다.

아주 기본적인 템플릿은 다음과 같이 만들 수 있습니다:

root@kitploit:~
import bochscpu, bochscpu.utils, bochscpu.cpu

sess = bochscpu.Session()
sess.missing_page_handler = bochscpu.utils.callbacks.missing_page_cb
state = bochscpu.State()
bochscpu.cpu.set_real_mode(state)
hook = bochscpu.Hook()
bochscpu.utils.callbacks.install_default_callbacks(hook)
sess.run([hook,])

이 코드는 bochscpu 세션을 생성하고, CPU 상태를 리얼 모드로 설정하며, 기본 콜백(실행 시 print만 수행)으로 훅을 미리 채웁니다. 코드 페이지를 할당하지 않았고 레지스터도 이를 가리키도록 올바르게 설정하지 않았으므로 이 샘플은 실제로 아무것도 하지 않는다는 점에 유의하세요.

더 완전한 템플릿은 examples/ 폴더에서 찾을 수 있습니다.

예제 몇 가지

x64 롱 모드에서 Fibonascii 시퀀스 에뮬레이션

https://github.com/hugsy/bochscpu-python/assets/590234/adc5ac5a-a8eb-4982-9537-5ece3f32f8f8

코드

Windows 11 x64 메모리 덤프에서 코드 에뮬레이션

image

코드

16비트 리얼 모드에서 print("hello world")와 유사한 어셈블리 코드 에뮬레이션

https://github.com/hugsy/bochscpu-python/assets/590234/eb06af06-4b10-490e-ae40-a1d0aed333ca

코드

x64에서 Linux Glibc의 rand() 함수 에뮬레이션

https://github.com/hugsy/bochscpu-python/assets/590234/2486adbc-0878-46f5-83ed-3bcf9774fd26

코드

즐기세요 🍻

도구 다운로드