BlackArch Linux полное руководство
Pirnazar
Содержание
- 1 Введение
- 1.1 Обзор
- 1.2 Что такое BlackArch Linux?
- 1.3 История BlackArch Linux
- 1.4 Поддерживаемые платформы
- 1.5 Внести свой вклад
- 2 Руководство пользователя
- 2.1 Установка
- 2.1.1 Установка поверх ArchLinux
- 2.1.2 Установка пакетов
- 2.1.3 Установка пакетов из источника
- 2.1.4 Основы использования Blackman
- 2.1.5 Установка из live-, netinstall- ISO или ArchLinux
- 2.1 Установка
- 3 Руководство разработчика
- Руководство разработчика BlackArch Linux
- 4 Руководство по инструментам
- 4.1 Скоро …
Глава 1
Введение
1.1 Обзор
Руководство по BlackArch Linux разделено на несколько частей:
- Введение – Общий обзор дистрибутива, введение и дополнительная полезная информация
- Руководство пользователя – Всё, что нужно знать обычному пользователю для эффективного использования BlackArch
- Руководство разработчика – Как начать разработку для BlackArch и внести в дистрибутив свой вклад
- Руководство по инструментам – Подробный обзор инструментов с примерами использования (не завершено)
1.2 Что такое BlackArch Linux ?
BlackArch – полноценный дистрибутив Linux для исследователей, работающих в сфере информационной безопасности, а также специалистов, выполняющих тесты на проникновение. Он построен на базе
, поэтому пользователи могут устанавливать компоненты BlackArch отдельно или группами прямо поверх ArchLinux.
Набор инструментов распространяется как
Arch Linux, так что вы можете установить BlackArch поверх любой версии Arch Linux. Пакеты можно устанавливать отдельно, либо по категориям.
Постоянно расширяющийся репозиторий на данный момент включает более
инструментов. Все инструменты проходят тщательное тестирование перед добавлением в базу, чтобы поддерживать качество репозитория на должном уровне.
1.3 История BlackArch Linux
Скоро…
1.4 Поддерживаемые платформы
Скоро…
1.5 Внести свой вклад
Вы можете связаться с командой BlackArch, воспользовавшись следующими способами:
Веб-сайт:
Руководство пользователя
2.1 Установка
Следующие разделы продемонстрируют вам, как настроить репозиторий BlackArch и установить пакеты. BlackArch поддерживает установку из репозитория с помощью бинарных пакетов, а также компилирование и установку из источников.
BlackArch совместим с обычными установками Arch. Он выполняет роль неофициального пользовательского репозитория. Если вам необходим ISO образ, посетите раздел Live ISO.
2.1.1 Установка поверх ArchLinux
Запустите strap.sh от имени root и следуйте инструкциям. Смотрите следующий пример.
2.1.2 Установка пакетов
Теперь вы можете устанавливать инструменты из репозитория blackarch.
1. Чтобы посмотреть список всех доступных инструментов, выполните
Руководство разработчика BlackArch Linux
Содержание
Глава 3
Руководство разработчика BlackArch Linux
3.1 Система билдов и репозиториев Arch
Файлы PKGBUILD – это скрипты для сборки. Каждый их них поясняет makepkg(1), как создать пакет. Файлы PKGBUILD написаны на Bash.
Если вас интересуют подробности, прочитайте (или просмотрите) следующие публикации:
3.2 Стандарты PKGBUILD в Blackarch
Для простоты, наши PKGBUILD похожи на аналоги в AUR, но имеют несколько небольших отличий, указанных ниже. Каждый пакет должен, как минимум, принадлежать blackarch. Кроме этого, некоторые пакеты могут входить сразу в несколько групп.
3.2.1 Группы
Чтобы пользователи могли быстро устанавливать пакеты определённого типа, все они были разделены на группы. Благодаря группам пользователь может просто выполнить команду «pacman -S », чтобы установить сразу множество пакетов.
3.2.1.1 blackarch
Группа blackarch является базовой группой, к которой должны принадлежать все пакеты. С её помощью можно быстро установить все имеющиеся пакеты.
Что должно сюда входить: Всё.
3.2.1.2 blackarch-anti-forensic
Пакеты, использующиеся для противостояния розыскной деятельности, включая шифрование, стеганографию и другие действия, приводящие к изменению атрибутов файлов. Сюда входят инструменты, работающие со всем, что вносит в систему изменения с целью сокрытия информации.
Примеры: luks, TrueCrypt, Timestomp, dd, ropeadope, secure-delete
3.2.1.3 blackarch-automation
Пакеты, использующиеся для автоматизации инструмента или рабочего процесса.
Примеры: blueranger, tiger, wiffy
3.2.1.4 blackarch-backdoor
Пакеты, открывающие бэкдоры в уже уязвимые системы или эксплуатирующие их.
Примеры: backdoor-factory, rrs, weevely
3.2.1.5 blackarch-binary
Пакеты, в той или иной форме работающие с двоичными файлами.
Примеры: binwally, packerid
3.2.1.6 blackarch-bluetooth
Пакеты, эксплуатирующие всё, связанное со стандартом Bluetooth (802.15.1).
Примеры: ubertooth, tbear, redfang
3.2.1.7 blackarch-code-audit
Пакеты, проверяющие существующий исходный код с целью анализа на наличие уязвимостей.
Примеры: flawfinder, pscan
3.2.1.8 blackarch-cracker
Пакеты, используемые для взлома криптографических функций, то есть хэшей.
Примеры: hashcat, john, crunch
3.2.1.9 blackarch-crypto
Пакеты, работающие с криптографией, за исключением взломов.
Примеры: ciphertest, xortool, sbd
3.2.1.10 blackarch-database
Пакеты, связанные с эксплуатацией баз данных на любом уровне.
Пример: metacoretex, blindsql
3.2.1.11 blackarch-debugger
Пакеты, позволяющие пользователю в реальном времени следить за тем, что «делает» определённая программа.
Примеры: radare2, shellnoob
3.2.1.12 blackarch-decompiler
Пакеты, пытающиеся преобразовать скомпилированную программу обратно в исходный код.
Примеры: flasm, jd-gui
3.2.1.13 blackarch-defensive
Пакеты, используемые для защиты пользователя от вредоносного ПО, а так же атак со стороны других пользователей.
Примеры: arpon, chkrootkit, sniffjoke
3.2.1.14 blackarch-disassembler
Данная категория похожа на blackarch-decompiler. Скорее всего, многие программы будут входить в оба этих подраздела. Однако, результатом работы пакетов, относящихся к blackarch-disassembler, является не исходный код, а скомпилированные данные.
Примеры: inguma, radare2
3.2.1.15 blackarch-dos
Пакеты, использующие DoS (отказ в обслуживании) атаки.
Примеры: 42zip, nkiller2
3.2.1.16 blackarch-drone
Пакеты, использующиеся для управления беспилотными дронами.
Пример: meshdeck, skyjack
3.2.1.17 blackarch-exploitation
Пакеты, пользующиеся эксплойтами в других программах или сервисах.
Пример: armitage, metasploit, zarp
3.2.1.18 blackarch-fingerprint
Пакеты, эксплуатирующие биометрическое оборудование, работающее с отпечатками пальцев.
Примеры: dns-map, p0f, httprint
3.2.1.19 blackarch-firmware
Пакеты, эксплуатирующие уязвимости в прошивках.
Примеры: None yet, amend asap.
3.2.1.20 blackarch-forensic
Пакеты, использующиеся для поиска данных на физических дисках или во встроенной памяти.
Примеры: aesfix, nfex, wyd
3.2.1.21 blackarch-fuzzer
Пакеты, использующие принцип фаззингового тестирования, то есть ввод случайных данных и анализ результатов.
Примеры: msf, mdk3, wfuzz
3.2.1.22 blackarch-hardware
Любые пакеты, работающие с аппаратным обеспечением.
Примеры: arduino, smali
3.2.1.23 blackarch-honeypot
Пакеты, играющие роль «горшочков с мёдом», то есть программ, которые притворяются уязвимыми сервисами и заманивают хакеров в ловушку.
Примеры: artillery, bluepot, wifi-honey
3.2.1.24 blackarch-keylogger
Пакеты, записывающие нажатия клавиш в другой системе.
Примеры: None yet, amend asap.
3.2.1.25 blackarch-malware
Пакеты, считающиеся вредоносным ПО или программами для его обнаружения.
Примеры: malwaredetect, peepdf, yara
3.2.1.26 blackarch-misc
Пакеты, которые нельзя отнести к другим категориям.
Примеры: oh-my-zsh-git, winexe, stompy
3.2.1.27 blackarch-mobile
Пакеты для управления мобильными платформами.
Примеры: android-sdk-platform-tools, android-udev-rules
3.2.1.28 blackarch-networking
Пакеты, работающие с IP-сетями.
Примеры: Практически любой пакет
3.2.1.29 blackarch-nfc
Пакеты, использующие nfc (ближнюю бесконтактную связь).
3.2.1.30 blackarch-packer
Пакеты, управляющие упаковщиками или имеющие к ним отношение.
/textifpackers – программы, встраивающие вредоносное ПО в исполняемые файлы других приложений.
3.2.1.31 blackarch-proxy
Пакеты, играющие роль прокси, то есть перенаправляющие трафик через другой узел интернета.
Примеры: burpsuite, ratproxy, sslnuke
3.2.1.32 blackarch-recon
Пакеты, занимающиеся активным поиском уязвимостей. Это скорее общая группа для всех пакетов подобного рода.
Примеры: canri, dnsrecon, netmask
3.2.1.33 blackarch-reversing
Общая группа для всех декомпиляторов, дизассемблеров и других похожих программ.
Примеры: capstone, radare2, zerowine
3.2.1.34 blackarch-scanner
Пакеты, способные сканировать выбранные системы на наличие уязвимостей.
Примеры: scanssh, tiger, zmap
3.2.1.35 blackarch-sniffer
Пакеты, включающие анализ сетевого трафика.
Примеры: hexinject, pytactle, xspy
3.2.1.36 blackarch-social
Пакеты, предназначенные для атаки социальных сетей.
Примеры: jigsaw, websploit
3.2.1.37 blackarch-spoof
Пакеты, старающиеся скрыть злоумышленника так, чтобы он не казался жертве исполнителем атаки.
Примеры: arpoison, lans, netcommander
3.2.1.38 blackarch-threat-model
Пакеты, используемые для записи модели угрозы, изложенной в определённом сценарии.
3.2.1.39 blackarch-tunnel
Пакеты, использующиеся для туннелирования сетевого трафика в определённой сети.
Примеры: ctunnel, iodine, ptunnel
3.2.1.40 blackarch-unpacker
Пакеты, использующиеся для извлечения вредоносного ПО из исполняемых файлов программ.
3.2.1.41 blackarch-voip
Пакеты, работающие с программами и протоколами IP-телефонии.
Примеры: iaxflood, rtp-flood, teardown
3.2.1.42 blackarch-webapp
Пакеты, работающие с веб-приложениями.
Примеры: metoscan, whatweb, zaproxy
3.2.1.43 blackarch-windows
В эту группу входят все нативные пакеты для Windows, работающие через wine.
Пример: 3proxy-win32, pwdump, winexe
3.2.1.44 blackarch-wireless
Пакеты, работающие с беспроводными сетями любого уровня.
Пример: airpwn, mdk3, wiffy
3.3 Структура репозитория BlackArch Linux
Основной git репозиторий BlackArch вы можете найти здесь: https://github.com/BlackArch/blackarch. Кроме этого, существует несколько вторичных репозиториев: https://github.com/BlackArch.
Внутри основного git репозитория находятся три важных директории:
- docs – Документация.
- packages – Файлы PKGBUILD.
- scripts – Полезные маленькие скрипты.
3.3.1 Scripts
Вот список скриптов, которые можно найти в директории scripts/:
- baaur – Скоро будет использоваться для загрузки пакетов в AUR.
- babuild – Сборка пакета.
- bachroot – Управление chroot для тестирования.
- baclean – Очистка репозитория от старых файлов .pkg.tar.xz.
- baconflict – Скоро это заменит scripts/conflicts.
- bad-files – Поиск плохих файлов в собранных пакетах.
- balock – Получение или открытие заблокированного репозитория.
- banotify – Отправка уведомлений об обновлениях пакета через IRC.
- barelease – Выпуск пакетов в репозиторий.
- baright – Вывод информации об авторских правах BlackArch.
- basign – Подписка пакетов.
- basign-key – Подписка ключа.
- blackman – Ведёт себя как pacman, но собирает из git (не путать с Blackman от nrz).
- check-groups – Проверка групп.
- checkpkgs – Проверка пакетов на ошибки.
- conflicts – Поиск конфликтов файлов.
- dbmod – Модификация базы данных пакета.
- depth-list – Создание списка, отсортированного по глубине зависимости.
- deptree – Создание дерева зависимостей, включающего только пакеты из категории blackarch.
- get-blackarch-deps – Получение список зависимостей blackarch для пакета.
- get-official – Получение официальных пакетов для релиза.
- list-loose-packages – Показать список пакетов, не входящих в группы и не зависящих от других пакетов.
- list-needed – Показать список отсутствующих зависимостей.
- list-removed – Показать список пакетов, имеющихся репозитории, но отсутствующих в git.
- list-tools – Показать список инструментов.
- outdated – Найти в репозитории пакеты, устаревшие по отношению к репозиторию git.
- pkgmod – Модифицировать билд пакета.
- pkgrel – Увеличить pkgrel в пакете.
- prep – Очистить форматирование файла PKGBUILD и найти ошибки.
- sitesync – Синхронизировать локальную копию репозитория с удалённой.
- size-hunt – Поиск больших пакетов.
- source-backup – Резервное копирование исходных файлов пакетов.
3.4 Как внести свой вклад в репозиторий
Этот раздел руководства покажет вам, как внести свой вклад в проект BlackArch Linux. Мы принимает реквесты всех размеров, от исправлений опечаток, до новых пакетов. Если у вас есть какие-либо вопросы или предложения, свяжитесь с нами.
Приглашаем всех желающих внести свой вклад. Приветствуется любая помощь.
3.4.1 Необходимые руководства
Прежде чем начинать работу, пожалуйста, прочитайте следующие руководства:
3.4.2 Шаги
Чтобы внести свои изменения в проект BlackArchLinux, следуйте этим шагам:
- Скопируйте репозиторий из https://github.com/fnord0/blackarchlinux
- Откройте нужные файлы, (например, PKGBUILD, файлы .patch и так далее).
- Внесите свои изменения.
- Сохраните внесённые изменения.
- Попросите принять ваши правки. Лучше всего сделать это через запрос на включение изменений.
3.4.3 Пример
Следующий пример демонстрирует добавление нового пакета к проекту BlackArch. Мы воспользуемся yaourt (вы также можете применить pacaur) чтобы получить существующий файл PKGBUILD для nfsshell из AUR, а затем изменить его в соответствии с нашими потребностями.
3.4.3.1 Получение PKGBUILD
Получите файл PKGBUILD, воспользовавшись yaourt или pacaur:
3.4.3.2 Очистка PKGBUILD
Очистите файлы PKGBUILD, чтобы сэкономить немного времени:
3.4.3.3 Изменение PKGBUILD
Измените файл PKGBUILD:
3.4.3.4 Сборка пакета
Соберите свой пакет:
3.4.3.5 Установка и тестирование пакета
Установите и протестируйте пакет:
3.4.3.6 Добавление, сохранение и обновление пакета
Добавьте, сохраните и обновите пакет.
3.4.3.7 Создание запроса на включение изменений
Создайте запрос на включение изменений на github.com
3.4.3.8 Добавление удалённого репозитория
Если вы работаете с копией оригинального репозитория, неплохо будет впоследствии избавится от неё и добавить эту копию как удалённый дополнительный репозиторий для основного.
По умолчанию git должен вносить изменения сразу в оригинал, но убедитесь, что ваша конфигурация git настроена правильно. Не стоит об этом беспокоиться, если у вас нет права вносить коммиты, так как без него всё равно ничего не получится.
Если у вас всё-таки есть соответствующие права, лучше будет воспользоваться git@github.com:blackarch/blackarch.git. В любом случае, решать вам.
3.4.4 Запросы
- Не добавляйте комментарии к файлам PKGBUILD. Вместо этого внесите своё имя в раздел АВТОРЫ руководства по BlackArch.
- Для поддержания единообразия, пожалуйста, соблюдайте общий стиль других файлов PKGBUILD в репозитории и используйте отступ в два символа.
3.4.5 Общие советы
С помощью namcap можно проверять пакеты на ошибки.
Обсуждение BlackArch Linux на нашем форуме в этой теме