Закрыто

Black Hat Go: программирование на Go для хакеров и пентестеров [Стил, Паттен, Коттманн] - Часть 3 из х

Тема в разделе "Программирование", создана пользователем Ianuaria, 1 авг 2021.

Цена: 20005р.
Взнос: 3585р.
100%

Основной список: 6 участников

Резервный список: 1 участников

Статус обсуждения:
Комментирование ограничено.
  1. 1 авг 2021
    #1
    Ianuaria
    Ianuaria ЧКЧлен клуба (П)

    Складчина: Black Hat Go: программирование на Go для хакеров и пентестеров [Стил, Паттен, Коттманн] - Часть 3 из х

    BHG_frcvr.png

    Black Hat Go
    Программирование на Go для хакеров и пентестеров


    1.png
    3.png
    5.png

    Содержание книги:

    1. Основы и концепции Go
    2. TCP и Go: сканеры и прокси
    3. HTTP-клиенты: удаленное взаимодействие с инструментами
    4. HTTP-серверы: маршрутизация и промежуточное ПО
    5. Эксплуатация DNS (красным выделено содержание третьей части перевода)
    • Разработка DNS-клиентов
    • Получение записей
    • Обработка ответов от структуры Msg
    • Перечисление поддоменов
    • Запрос записей А и CNAME
    • Передача worker-функции
    • Создание сканера с bufio
    • Сбор и вывод результатов
    • Разработка DNS-серверов
    • Настройка лабы из двух виртуальных машин: Windows VM в качестве клиента и Ubuntu VM в качестве сервера (на сервере два инстанса Cobalt Strike под Docker)
    • Создание DNS-сервера и прокси
    • Настройка Cobalt Strike
    • Создание DNS-прокси
    6. Взаимодействие с SMB и NTLM
    • Пакет SMB
    • Разбор SMB
    • Разбор токенов безопасности SMB
    • Настройка сессии SMB
    • Использование смешанного кодирования полей структур
    • Написание кастомного интерфейса для маршалинга и демаршалинга
    • Обертывание интерфейса
    • Принудительное ASN.1 кодирование
    • Разбор полей метаданных и ссылочных полей
    • Разбор реализации SMB
    • Вызов функции parseTags() и создание объекта reflect.StructField
    • Обработка структур
    • Обработка uint16
    • Обработка срезов
    • Подбор паролей SMB
    • Повторное использование паролей с техникой pass-the-hash
    • Восстановление NTLM-паролей
    • Вычисление хеша
    • Восстановление NTLM-хеша
    7. Базы данных и файловые системы: извлечение данных и злоупотребление
    8. Обработка пакетов: жизнь в проводах
    9. Код эксплоитов: написание и портирование
    10. Расширяемые инструменты: использование плагинов Go и LUA
    11. Криптография: реализация и атаки
    12. Windows: взаимодействие с системой и анализ
    13. Стеганография: сокрытие данных
    14. Командование и управление: создание RAT

    Описание:

    В книге Black Hat Go исследуется темная сторона Go, популярного языка программирования, который находится в почете у хакеров за свою простоту, эффективность и надежность. Он предоставляет арсенал практических такт для практикующих специалистов в области безопасности и хакеров, помогая вам тестировать свои системы, создавать и автоматизировать инструменты под свои нужды, а также улучшать набор ваших наступательных навыков. И все это с использование силы Go.

    Мы начнем путешествие с базового обзора синтаксиса и философии Go, а затем приступим к изучению примеров, которые вы сможете применить для разработки инструментов, с использованием популярных сетевых протоколов типа HTTP, DNS и SMB. Далее мы углубимся в различные тактики и проблемы, с которыми сталкиваются пентестеры, включая такие вещи, как извлечение данных, сниффинг пакетов и разработка эксплоитов. Вы будете создавать динамические, модульные инструменты, после чего мы углубимся в криптографию, атаки на Microsoft Windows и реализацию стеганографии.

    Вы научитесь:

    • Создавать производительные инструменты, которые можно будет использовать для ваших собственных проектов в области безопасности
    • Создавать практичные инструменты для взаимодействия с удаленными API
    • Скрейпить произвольные HTML-данные
    • Использовать стандартный пакет Go, net/http, для создания HTTP-серверов
    • Создавать свой собственный DNS сервер и прокси
    • Использовать DNS-туннелирование для установления С2-канала из ограниченной сети наружу
    • Создавать фаззер уязвимостей для обнаружения слабых мест в безопасности приложений
    • Использовать плагины и расширения для современных продуктов
    • Создавать брутфорсер под RC2 и симметричные ключи
    • Имплантировать данные в изображения Portable Network Graphics (PNG)

    Готовы пополнить свой арсенал инструментов безопасности? Тогда вперед!

    Для кого эта книга

    Эта книга предназначена для всех, кто хочет узнать, как разрабатывать свои собственные хакерские инструменты с использованием языка Go. На протяжении наших профессиональных карьер, и особенно в качестве консультантов, мы отстаивали позицию, что программирование является фундаментальным навыком для тестировщиков на проникновение (пентестеров) и специалистов в области безопасности. Если говорить конкретнее, то умение создавать код расширяет ваше понимание того, как программное обеспечение работает, и как может быть нарушено его нормальное функционирование. Кроме того, если вы побываете в шкуре разработчика, то получите более целостное понимание проблем, с которыми они сталкиваются при защите программного обеспечения, и вы сможете воспользоваться своим собственным опытом, чтобы рекомендовать более эффективные способы смягчения последствий угроз безопасности, отсеивать ложноположительные срабатывания и обнаруживать скрытые уязвимости. Программирование зачастую вынуждает вас взаимодействовать со сторонними библиотеками, различными стеками приложений и фреймворками. Для большинства людей (включая и нас, авторов) программирование - это практический опыт и экспериментирование, ведущее нас к максимальному личностному развитию.

    Чем не является эта книга

    Эта книга не является введением в программирование на Go в целом. Она является введением в использование Go для разработки инструментов в области безопасности. В первую очередь мы - хакеры, и лишь затем программисты, именно в таком порядке. Никто из нас, авторов, никогда не работал разработчиком программного обеспечения. Это значит, что мы, как хакеры, делаем особый упор на функционирование, а не на элегантность. Во множестве случаев мы делаем выбор в пользу написания кода так, как это делают хакеры, вне зависимости от определенных идиом или наилучших практик разработки программного обеспечения. У нас, как у консультантов, время всегда в дефиците; разработка простого кода зачастую выполняется быстрее и, как следствие, является более предпочтительной, чем разработка элегантного кода. Когда вам нужно быстро создать решение для проблемы, вопросы стиля отходят на второй план.

    Это наверняка разозлит приверженцев чистоты языка Go, которые скорее всего твитнут по поводу того, что мы не обрабатываем все ошибочные условия изящным образом, что наши примеры могли быть оптимизированы, или что для достижения желаемых результатов доступны более хорошие конструкции или методы. В большинстве случаев мы не заинтересованы в том, чтобы научить вас самым лучшим, самым элегантным и на 100% идиоматическим решениям, если только это не позволит конкретным образом улучшить конечный результат. Несмотря на то, что мы вкратце затронем синтаксис языка, мы сделаем это исключительно ради того, чтобы заложить базовый фундамент, на основе которого мы сможем создавать наши инструменты. В конце концов, это не книга на тему “Учимся программировать на Go элегантно” - это “Black Hat Go”.

    Примеры в этой книге полностью вымышлены. Описываемые инструменты и техники имеют открытый исходный код, а следовательно - доступны публично. Специалисты по безопасности и пентестеры регулярно используют их в своей работе, также как и атакующие. Если вы стали жертвой компьютерного преступления и обнаружили в этой книге демонстрацию техник или инструментов, то это никоим образом не означает, что автору этой книги и переводчику можно инкриминировать любую связь с компьютерным преступлением, содержимое этой книги не дает никаких оснований полагать, что есть какая-либо связь между автором книги/переводчиком и преступниками.

    Любые действия и/или деятельность, связанные с материалом, содержащимся в этой книге, находятся целиком под вашей ответственностью. Неправильное использование информации из этой книги может стать результатом обвинений в совершении уголовного правонарушения в адрес соответствующих лиц. Автор и переводчик не несут никакой ответственности за деяния лиц, использующих информацию из этой книги в преступных целях.

    Эта книга не призывает заниматься хакерством, взломом программного обеспечения и/или пиратством. Вся информация, представленная в книге, предназначена исключительно в образовательных целях. Она призвана помочь организациям защитить свои сети от атакующих, а следователям собрать цифровые улики во время расследования инцидентов.

    Совершение любых попыток по хакингу/взлому систем или тестирование систем на проникновение должно сопровождаться письменным разрешением от владельцев данных систем.
    Авторы: Стил, Паттен, Коттманн
    Оригинальное название: Black Hat Go: Go Programming for Hackers and Pentesters
    Издательство: No Starch Press
    Год издания: 2020
    Объем в оригинале: ~592 стр.
    Объем третьей части перевода: главы 5-6
    Тип перевода: перевод на русский
    Формат: текст, PDF
    Код:
    https://nostarch.com/blackhatgo
     
    Последнее редактирование: 21 ноя 2021
    2 пользователям это понравилось.
  2. Последние события

    1. skladchik.com
      Складчина закрыта.
      21 ноя 2021
    2. skladchik.com
      Складчина доступна.
      31 окт 2021
    3. skladchik.com
      Взнос составляет 3585р.
      9 окт 2021
    4. skladchik.com
      Складчина активна.
      9 окт 2021

    Последние важные события

    1. skladchik.com
      Складчина закрыта.
      21 ноя 2021
    2. skladchik.com
      Складчина доступна.
      31 окт 2021
    3. skladchik.com
      Взнос составляет 3585р.
      9 окт 2021
    4. skladchik.com
      Складчина активна.
      9 окт 2021
  3. Обсуждение
  4. 10 окт 2021
    #2
    NSObject
    NSObject ЧКЧлен клуба
    Подходит данная книга для новеньких в golang'e? Или уже опыт нужен хороший?
     
  5. 11 окт 2021
    #3
    Ianuaria
    Ianuaria ЧКЧлен клуба (П)
    Для кого эта книга

    Эта книга предназначена для всех, кто хочет узнать, как разрабатывать свои собственные хакерские инструменты с использованием языка Go. На протяжении наших профессиональных карьер, и особенно в качестве консультантов, мы отстаивали позицию, что программирование является фундаментальным навыком для тестировщиков на проникновение (пентестеров) и специалистов в области безопасности. Если говорить конкретнее, то умение создавать код расширяет ваше понимание того, как программное обеспечение работает, и как может быть нарушено его нормальное функционирование. Кроме того, если вы побываете в шкуре разработчика, то получите более целостное понимание проблем, с которыми они сталкиваются при защите программного обеспечения, и вы сможете воспользоваться своим собственным опытом, чтобы рекомендовать более эффективные способы смягчения последствий угроз безопасности, отсеивать ложноположительные срабатывания и обнаруживать скрытые уязвимости. Программирование зачастую вынуждает вас взаимодействовать со сторонними библиотеками, различными стеками приложений и фреймворками. Для большинства людей (включая и нас, авторов) программирование - это практический опыт и экспериментирование, ведущее нас к максимальному личностному развитию.

    Чем не является эта книга

    Эта книга не является введением в программирование на Go в целом. Она является введением в использование Go для разработки инструментов в области безопасности. В первую очередь мы - хакеры, и лишь затем программисты, именно в таком порядке. Никто из нас, авторов, никогда не работал разработчиком программного обеспечения. Это значит, что мы, как хакеры, делаем особый упор на функционирование, а не на элегантность. Во множестве случаев мы делаем выбор в пользу написания кода так, как это делают хакеры, вне зависимости от определенных идиом или наилучших практик разработки программного обеспечения. У нас, как у консультантов, время всегда в дефиците; разработка простого кода зачастую выполняется быстрее и, как следствие, является более предпочтительной, чем разработка элегантного кода. Когда вам нужно быстро создать решение для проблемы, вопросы стиля отходят на второй план.

    Это наверняка разозлит приверженцев чистоты языка Go, которые скорее всего твитнут по поводу того, что мы не обрабатываем все ошибочные условия изящным образом, что наши примеры могли быть оптимизированы, или что для достижения желаемых результатов доступны более хорошие конструкции или методы. В большинстве случаев мы не заинтересованы в том, чтобы научить вас самым лучшим, самым элегантным и на 100% идиоматическим решениям, если только это не позволит конкретным образом улучшить конечный результат. Несмотря на то, что мы вкратце затронем синтаксис языка, мы сделаем это исключительно ради того, чтобы заложить базовый фундамент, на основе которого мы сможем создавать наши инструменты. В конце концов, это не книга на тему “Учимся программировать на Go элегантно” - это “Black Hat Go”.
     
Статус обсуждения:
Комментирование ограничено.