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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
scare — 명령줄용 멀티 아키텍처 어셈블리 REPL 및 에뮬레이터. | Kitploit
도구/GitHubGitHub/netspooky/scare
Dynamic Analysis (Sandboxing)Reverse EngineeringShellcodeDebuggersBinary AnalysisLearning & EducationShellcode Generation
GitHubnetspooky/scare

scare

명령줄용 멀티 아키텍처 어셈블리 REPL 및 에뮬레이터.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

scare - 간단한 구성 가능한 어셈블리 REPL && 에뮬레이터

scare는 명령줄용 멀티 아키텍처 어셈블리 REPL이자 에뮬레이터입니다.

현대적인 어셈블리 REPL은 많지 않습니다. 기존에 있는 것들도 불투명한 웹 앱이거나 특정 아키텍처/플랫폼에 묶여 있습니다. scare는 어셈블리 코드를 테스트하고, 실험하고, 가지고 놀고 싶은 사람들을 위해 만들어졌습니다. 어셈블된 모든 코드는 에뮬레이터에서 실행되며, 입력한 코드만 실행합니다. 기반이 되는 scarelib 라이브러리의 멀티 아키텍처 설계는 모듈식으로 되어 있어 새로운 아키텍처를 빠르게 추가할 수 있습니다.

버전 0.3.0은 scare의 첫 공개 릴리스입니다.

주요 기능

  • REPL 환경에서 어셈블리 작성
  • 작성한 프로그램 불러오기 또는 저장
  • 프로그램에서 역방향으로 스텝 실행
  • 테스트용으로 어셈블된 코드를 작은 바이너리로 내보내기

현재 지원되는 아키텍처

  • x86
  • x64
  • arm32
  • arm64
  • mips32

요구 사항

  • python3
  • keystone-engine
  • unicorn
  • capstone

사용법

원하는 아키텍처를 지정하여 명령줄에서 scare를 실행하세요. 그러면 기본 설정으로 REPL 인스턴스가 생성됩니다.

root@kitploit:~
python3 scare.py -a x64

도움말 파일

root@kitploit:~
[x64]400000> /
scare Help

/ /? /help                        -- Open help menu
/x /exit /q /quit                 -- Quit the program

/back n                           -- Go back n number of lines
/dis {0xaddress|$register} NUM    -- Disassemble NUM bytes from 0xaddress or $register
/export FILETYPE FILENAME         -- Export machine code as FILETYPE to the FILENAME
                                     FILETYPE List:
                                     - bin
                                     - elf64
                                     - pe32
/info                             -- Info about the emulator state
/l /list                          -- List the current program
/load file.asm                    -- Load listing from file.asm (overwrites current program)
/read {0xaddress|$register} NUM   -- Read NUM bytes from 0xaddress or $register
/reset                            -- Reset the emulator to a clean state
/run                              -- Run the current program
/save file.asm                    -- Save assembly output to file.asm

[[: Config Commands :]] (Use /c or /config)
NOTE: Run /reset if you are changing emu/* options, otherwise the emulator may not start!

/c               -- Print all config options
/c emu/arch      -- Print Arch Value
/c emu/arch x64  -- Set Arch to x64
/c x86/xmm 1     -- Enable x86/xmm

어셈블리 리스팅에서 뒤로 이동하기

root@kitploit:~
mov eax, 0x5555
mov ebx, 0xaaaa
xor eax, ebx
/l
/back 2
mov ecx, 0xbbbb
add eax, ecx

파일 불러오기, 파일 저장

root@kitploit:~
/load examples/x64/test.asm
/l
/run
/read $rsp 32
pop rdx
/save test2.asm

바이너리로 내보내기: 여기서 실행 시 종료되는 exit55.elf라는 elf64 파일을 얻게 됩니다.

root@kitploit:~
mov eax, 0x3c
mov edi, 55
syscall
/export elf64 exit55.elf

구성 옵션 사용하기

root@kitploit:~
not rax
/c x86/xmm 1
movq xmm4, rax
movaps xmm5, xmm4

갤러리

셸코드 디코딩: screenshot of the tool in a terminal

코드를 elf64로 내보내고 실행하기: screenshot of exporting code and running as an elf64

기여하기

앞으로 추가하면 좋을 것들이 많이 있습니다: 더 많은 아키텍처(잘 알려진 것과 잘 알려지지 않은 것 모두), 더 많은 CPU 모드, 더 나은 환경 에뮬레이션, emu/asm/dis 라이브러리 간 핫 스와핑 등이 있습니다. 에뮬레이터, 어셈블러, 디스어셈블러가 서로 잘 연동되도록 하는 것은 항상 간단하지 않습니다.

일부 기능은 에뮬레이터 구성에 대한 결정이 필요하기 때문에 현재 지원되지 않을 수 있습니다. 이 프로젝트의 목표는 대상 아키텍처를 위한 범용 REPL 및 에뮬레이터 솔루션이 되는 것입니다. 결과적으로 개발 로드맵은 사용과 개발이 쉽도록 유지하면서 "사람들이 제안하는 것들을 추가하는" 방식이 될 것입니다.

아이디어가 있으면 PR을 보내 주세요.

버그를 발견하면 이슈를 등록해 주세요.

감사합니다. 재미있게 사용하세요!

~ netspooky

haunted crew에게 감사 인사를 전합니다.

도구 다운로드