Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
sharem — SHAREM은 쉘코드 분석 프레임워크로, 45,000개 이상의 WinAPI와 사실상 모든 Windows 시스템 콜을 에뮬레이션할 수 있습니다. 또한 자체 맞춤형 디스어셈블러를 포함하고 있으며, 인코딩된 쉘코드의 디난독화된 디스어셈블리를 보여주거나 에뮬레이션 데이터를 통합하여 디스어셈블리를 향상시키는 등 많은 혁신적인 기능을 제공합니다. | Kitploit
도구/GitHubGitHub/bw3ll/sharem
Dynamic Analysis (Sandboxing)Reverse EngineeringShellcodeDebuggersFuzzingMalware AnalysisBinary AnalysisAI Security
GitHubbw3ll/sharem

sharem

SHAREM은 쉘코드 분석 프레임워크로, 45,000개 이상의 WinAPI와 사실상 모든 Windows 시스템 콜을 에뮬레이션할 수 있습니다. 또한 자체 맞춤형 디스어셈블러를 포함하고 있으며, 인코딩된 쉘코드의 디난독화된 디스어셈블리를 보여주거나 에뮬레이션 데이터를 통합하여 디스어셈블리를 향상시키는 등 많은 혁신적인 기능을 제공합니다.

저장소 보기
49168216개월 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

SHAREM

SHAREM에 오신 것을 환영합니다!

SHAREM은 DEFCON 31의 "Game-Changing Advances in Windows Shellcode Analysis"와 Black Hat USA Arsenal에서 발표되었습니다. Max Kersten이 제공하는 companion Ghidra 플러그인이 (별도로) Trellix를 통해 공개되었습니다. 따라서 원한다면 SHAREM의 기능을 Ghidra로 확장할 수 있습니다.

SHAREM은 궁극적인 Windows 셸코드 도구로 설계되었으며, 45,000개 이상의 WinAPI 에뮬레이션, 거의 모든 사용자 모드 Windows 시스템 콜을 지원하며, 수많은 새로운 기능을 제공합니다. SHAREM은 에뮬레이터, 디스어셈블러, 시간 초월 디버깅(timeless debugging), 무차별 난독 해제(brute-force deobfuscation) 등 다양한 기능을 포함합니다. SHAREM의 에뮬레이터는 완전한 구조체(또는 구조체 내부의 구조체)도 표시할 수 있으며, 인코딩된 셸코드가 스스로 난독 해제되도록 할 수 있습니다. SHAREM은 분석된 모든 WinAPI 및 Windows 시스템 콜의 출력을 기록하고, 각각을 여러 카테고리와 하위 카테고리로 분류합니다. SHAREM의 완전한 코드 커버리지(complete code coverage)는 도달 불가능한 기능도 발견할 수 있게 해줍니다.

SHAREM의 디스어셈블러는 발견된 함수를 디스어셈블리에 통합하여 각각에 레이블을 지정할 수 있습니다. 또한 SHAREM은 인코딩된 셸코드의 복호화된 형태를 디스어셈블러에 표시하므로, 셸코드를 디버깅할 필요가 없습니다.

SHAREM Wiki를 만들었으며, 여기에는 SHAREM 사용에 대한 몇 가지 안내 정보가 제공되지만, 현재 문서화되지 않은 상당 부분과 기능이 있습니다. SHAREM은 2년에 걸쳐 여러 사람이 함께 개발했습니다. SHAREM의 디스어셈블러는 주요 디스어셈블러보다 훨씬 정확합니다. 또한 SHAREM은 에뮬레이션 데이터를 디스어셈블러에 통합하여 거의 완벽에 가까운 디스어셈블리를 얻을 수 있습니다.

SHAREM이 막 출시되었기 때문에 여기의 문서가 다소 부족하다는 점을 양해 부탁드립니다. 앞으로 몇 주 안에 GitHub에 더 많은 정보를 업데이트하겠습니다.

SHAREM이 처음이시라면, 일부 기능을 보여주는 간단한 데모 비디오를 확인해보세요. 이미지를 클릭하면 데모를 볼 수 있습니다: 동영상 보기

최근 업데이트

2026년 3월: SHAREM은 시작 시 최대 61개의 DLL을 로드했지만, 최신 업데이트로 이제 369개의 DLL과 45538개의 고유 WinAPI를 지원할 수 있습니다. 또한 DLL은 필요에 따라 요청 시 로드됩니다. Windows 내부 기능(모듈 목록, flink, blink 등)은 LoadLibraryA 등을 통해 추가 DLL을 로드해야 하는 경우 자동으로 업데이트됩니다. 기능 개선을 위한 수많은 다른 업데이트도 있었습니다. 설치 문제에 대해 제게 보고된 몇 가지 문제를 해결하기 위한 변경 사항이 적용되었습니다.

2026년 3월 22일: 루프 탈출 로직이 더 세분화되어 개선되었습니다. 이 부분은 대부분 다시 작성되고 재테스트되었습니다. 이 기능을 사용하기로 결정한 경우, 일반적으로 config.cfg의 기본값을 변경하지 않는 것을 권장합니다.

2024/2025년: SHAREM은 선택적으로 AI를 사용하여 결과를 분석할 수 있으며, OpenAI 키(사용자 제공)가 필요합니다. SHAREM은 최근 AI 발전 이전에 만들어졌으며, AI 사용은 SHAREM의 초기 분석이 완료된 후에만 발생합니다. 이 선택적 기능을 통해 발견된 내용을 검토하고 MITRE ATT&CK 프레임워크 등에 적용할 수 있습니다.

설치 지침

Windows

SHAREM은 로컬 Python 패키지로 설치되므로, 다른 프로젝트에서 액세스할 수 있습니다. 이를 통해 SHAREM의 일부를 가져올 수 있습니다. 따라서 패키지로 설치해야 합니다. 참고: 일부 설치 문제에 대한 보고를 들었습니다. 최근 변경 사항으로 이 문제가 해결되기를 바랍니다.

  1. SHAREM 설치를 위해서는 Git이 필요합니다. https://git-scm.com/download/win 에서 설치할 수 있습니다. 설치 후 컴퓨터를 다시 시작하고 SHAREM 설치를 계속하십시오. Git은 Windows SSDeep 설치를 자동화하기 위한 것입니다. 직접 수행하는 경우 .bat 파일을 수정하여 SSDeep을 제외할 수도 있습니다. 수동으로 설치하면 Git이 필요하지 않습니다. 참고: Windows의 경우, 이전 버전의 설치 문제를 해결한 Bw3ll 계정의 SSDeep 포크로 이동 중입니다. 이 버전과 이전 버전은 모두 SSDeep의 래퍼였습니다.

  2. .bat 파일을 실행하십시오. setup.py 파일을 호출합니다. Python을 호출하는 방식에 따라 대체 .bat 파일을 호출하거나 비표준 방식을 사용하는 경우 약간 수정해야 할 수도 있습니다.

  3. 다음을 수행하십시오: py -m pip list 또는 python3 -m pip list를 실행하여 SHAREM이 로컬 패키지로 설치되었는지 확인하십시오. 작동하려면 패키지로 설치되어야 합니다. 만약 보이지 않으면 패키지로 설치되지 않은 것이며, SHAREM이 작동하지 않습니다. .bat 파일을 사용하고 있는지, 그리고 installers 디렉토리에서 Windows 명령 프롬프트로 실행하고 있는지 확인하십시오. 작동하지 않으면 오류 메시지를 확인하십시오. 오류가 있으면 수정을 시도하십시오. 몇 번 시도해보십시오. 그래도 작동하지 않으면 이슈를 열고 이 모든 정보를 포함시켜 주시면 문제를 파악하는 데 도움이 됩니다. 일반적으로는 필요하지 않지만 가끔 필요할 수 있습니다. 한 번 제거했다가 다시 설치하기로 결정한 경우 설치 스크립트를 다시 실행해야 할 수 있습니다. py -m pip list를 실행했을 때 sharem이 나타나면 로컬 패키지로 올바르게 설치된 것입니다.

SHAREM이 설치된 후, 처음으로 셸코드를 실행할 때는 sharem_cli 폴더 안에 있어야 합니다. 예를 들어, 해당 디렉토리에서 py main.py -r32 shellcode.bin을 실행할 수 있습니다. 셸코드가 없어도 괜찮습니다. 제가 별도 리포지토리에서 호스팅하는 shellcode samples 리포지토리에서 몇 가지 샘플을 찾을 수 있습니다.

참고: Windows에서 셸코드 에뮬레이션을 처음 시도하면 Windows DLL을 수집하고 인플레이션(inflate)하려고 시도합니다. 이 과정은 셸코드를 처음 에뮬레이션하려고 할 때 자동으로 시작됩니다. DLL을 복사하여 복사된(그리고 나중에 인플레이션된) DLL을 SHAREM 디렉토리로 이동합니다. 추가 단계가 있지만, 이 전체 초기 과정은 몇 분이 걸리거나 매우 오래된 CPU의 경우 10-15분까지 걸릴 수 있습니다. 완료된 후에는 다시 수행할 필요가 없습니다. 이 작업은 32비트 및 64비트 셸코드 각각에 대해 별도로 수행해야 합니다. sharem/sharem/sharem/sharem/DLLs/x86으로 이동하면 DLL이 천천히 나타나는 것을 볼 수 있습니다. 이 DLL은 OS에서 가져와서 OS가 수행할 작업을 에뮬레이션하도록 수정되어 이 디렉토리에 저장됩니다. 약 60개 이상이 있을 것입니다. 그 정도의 DLL이 보이고 더 이상 저장되는 DLL이 없으면 아마도 멈춘 것일 수 있습니다. Enter를 다시 누르십시오. 그래도 실패하면 다시 시작하고 에뮬레이션을 다시 시도하십시오. DLL이 저장되면 다시 할 필요가 없습니다. CPU 속도에 따라 처음에만 기다리는 시간이 걸릴 수 있습니다. 완료되면 다양한 WinAPI 또는 Windows 시스템 콜의 열거와 같은 에뮬레이션 결과가 표시되어야 합니다.

파일 확장자가 .txt로 끝나면 셸코드가 순수 16진수가 아닌 16진수의 ASCII 표현이라고 가정하고 그렇게 해석합니다. 이는 온라인에서 찾은 것과 함께 작동합니다. 16진수의 ASCII 표현을 사용하는 경우 파일 이름이 .txt로 끝나야 합니다.

Linux

  1. chmod +x linux_installer.sh 설치 프로그램 실행 권한 부여
  2. sudo ./linux_installer.sh 설치 프로그램 실행
  3. DLL 파일 추가

Windows DLL 파일을 추가해야 합니다. 현재 Linux 사용자를 위한 별도 다운로드는 제공되지 않습니다. 현재로서는 Windows를 통해 설치하여 수집해야 합니다. (참고: 이 DLL은 SHAREM에 의해 반드시 인플레이션되어야 합니다. 인플레이션되지 않은 DLL은 사용할 수 없습니다. 대부분은 적절한 양만큼 인플레이션되지 않으면 실패할 것입니다.) 추후 몇 주 안에 별도 다운로드를 제공할 수도 있습니다. 하지만 그때까지는 Windows 단계를 따라 생성한 후 Linux로 이동하여 sharem\sharem\sharem\DLLs\x64 및 sharem\sharem\sharem\DLLs\x86에 배치할 수 있습니다. 또한 foundDLLAddresses32.json과 FoundDLLAddresses64.json이 필요하며, 이 파일들은 sharem\sharem\sharem에 있어야 합니다.

OpenAI

2024년에 SHAREM은 OpenAI 지원을 추가하여 AI를 활용하여 일부 분석 작업을 자동화할 수 있습니다. 이 기능은 메인 메뉴에서 A - "leverage AI"를 통해 활성화할 수 있습니다. 이를 위해서는 OpenAI 키가 있어야 하며, config.cfg 파일(sharem/sharem/sharem/sharem/config.cfg에 위치)에 입력해야 합니다. 또한 AI를 활용하려면 먼저 셸코드를 에뮬레이션해야 합니다. 현재 이것이 AI를 사용하는 유일한 방법입니다(헤드리스 방식으로는 작동하지 않음). 하지만 누군가 헤드리스 방식이 필요하다면 이슈를 열어주십시오. config를 통해 선택할 수 있는 또 다른 옵션으로 지원을 추가하겠습니다. 이미 SHAREM을 설치했고 업데이트된 버전을 받은 경우, 수동으로 OpenAI를 설치할 수 있습니다(예: pip install openai). 초기 설치 스크립트 실행 시 활성화되는 setup.py 파일의 requirements에도 추가했습니다.

Ghidra 스크립트

Max Kersten의 훌륭한 Ghidra 스크립트(2023년 8월 Black Hat 및 DEFCON에서 발표)는 다음에서 찾을 수 있습니다: https://github.com/advanced-threat-research/GhidraScripts/blob/main/Sharem.java Max의 일부 지침은 다음에 있습니다: https://github.com/advanced-threat-research/GhidraScripts/ 이 Ghidra 플러그인은 Trellix 제공입니다! SHAREM을 계속 사용해야 합니다. 이 플러그인은 SHAREM이 생성한 JSON 출력을 가져와 Ghidra에 유용한 형식으로 변환합니다. Max 자신에 대한 더 많은 정보는 https://maxkersten.nl/에서 확인할 수 있습니다.

문서

문서는 SHAREM Wiki에서 확인할 수 있으며, SHAREM 사용에 대한 몇 가지 안내 정보를 제공하지만, 현재 문서화되지 않은 상당 부분과 기능이 있습니다.

도구 다운로드