Записки потомственного it'шника
275 subscribers
509 photos
40 videos
204 files
1.65K links
Краткость — сестра таланта.
Автоматизация — мать порядка.
Ransomware'щики — боги.
Батя — программист over 80+ level.
Мать — бухгалтер, соскачившая с цифр на контдитерские изделия.
Ну а я — бакалавр ИБ по собственной воле.
Update: уже магистр.
Download Telegram
Centos в закрытом контуре.
Выкачиваем
приложение со всеми зависимостями.

Ненавижу закрытый контур.
Это какая-та хрень, спасающая от лохов,
Кому надо, тот пройдет.
А вот для админа это просто адская боль.

Например, попробуйте поставить на centos в закрытом контуре какой-нибудь пакет,
А еще представьте, что у вас есть только ssh доступ к этому серверу.
Что будете делать?
Пытаться подгрузить только нужный пакет?

Почти наверняка центось пошлет вас куда подальше,
И разродиться громный перечнем зависимостей, от которого у вас закружится голова.

Для себя нашел следующий костыль:
Ставим CentOs нужной верси в виртуалку,
Туда ставим yumdownloader:

yum install yumdownloader

Далее

yumdownloader --resolve --alldeps --arch x86_64 --enablerepo elasticsearch --destdir ./ elasticsearch

Запаковыаем пачку, перекидываем на нужную тачку,
Распаковываем, инсталим из распаковванной папки.

sudo yum --skip-broken --disablerepo=* localinstall *


#centos #закрытыйКонтур #linux
Full Packet Capture Arkime

Кстати к чему это я,
Пытаюсь написать документ по работе,
"Анализ скрытых каналов и угроз"
Для этого необходимо отснифить трафик на нескольких нодах одного приложения в течение опеределенного времени.
Решил попробовать для целей снятия трафика и дальнешего анализа софт Arkime.

В одном пакете webUi и сниффер написанный на C.
Можно запускать по отдельности, они не зависят друг от друга.
И то и другое может работает поверх elasticsearch, так что для работы его необходимо настроить на работающую заранее мигрированную под этот софт ноду elstic'а.

https://arkime.com/
https://github.com/arkime/arkime

Установка производится следующим образом:

Для машины сборщика-анализатора:

1. Скачайте собранный пакет arkime версии 2.7.1 под свою операционную систему с https://arkime.com/downloads.

2. Установите пакет на машину с предустановленным ПО elasticsearch версии >= 7.11

3. Сконфигурируйте elasticsearch.

В файле настроек /etc/elasticsearch/elasticsearch.yaml следующим образом:

network.host: 0.0.0.0
http.port: 9200
node.name: node1
cluster.initial_master_nodes: node1
cluster.routing.allocation.disk.watermark.low: 97%
cluster.routing.allocation.disk.watermark.high: 97%
cluster.routing.allocation.disk.watermark.flood_stage: 97%

Запустите скрипт инициализации хранилища Elasticsearch для работы с Arkime:

/data/moloch/db/db.pl http://localhost:9200 init

Перезапустите elasticsearch:

systemctl restart elasticsearch.service

4. Сконфигурируйте Arkime:

sudo /data/moloch/bin/Configure

Ответьте на вопросы следующим образом:

Интерфейс: оставить пустым.
Установка Elasticsearch: Нет.
Elasticsearch url: оставить не тронутым.
Пароль: укажите пароль.
Загрузить гео фалы: да.

Сконфигурируйте arkime WEB-ui для работы на всех интерфейсах в файле /data/moloch/etc/config.ini:

viewHost = 0.0.0.0

Создайте пользователя администратора:

/data/moloch/bin/moloch_add_user.sh admin "Admin User" THEPASSWORD --admin

Запустите Arkime web-ui:

systemctl start molochviewer.service


Для машины сниффера-отправителя:

1. Скачайте собранный пакет arkime версии 2.7.1 под свою операционную систему с https://arkime.com/downloads.

2. Установите пакет на машину, с которой необходимо производить запись трафика.

3. Сконфигурируйте Arkime:

sudo /data/moloch/bin/Configure

Ответьте на вопросы следующим образом:

Интерфейс: укажите все найденные интерфейсы.
Установка Elasticsearch: Нет.
Elasticsearch url: введите
http://ip:port (машины сборщика-анализатора).
Пароль: укажите пароль.
Загрузить гео фалы: да.

Запустите Arkime-сниффер:

systemctl start molochcapture.service

Заметка: Для авторизации в elasticsearch необходимо указать урл следующим образом: http://user:pass@primaryNodeHost:9200

#OpenSource #IDS #IPS #FPC #БПО #tools
Сюда так же буду скидывать и пересылать все что покажется интересным на темы it/sec/dev/ops с других смежных каналов/найденного в сети.
Арсенал тру фаззера.
Part
1.

Нашел неплохую статейка на тему ипользования ffuf.
Крайне шустрый фаззер на go.
https://danielmiessler.com/study/ffuf/

Впомнил, что "Кавычка" скидывал немного текста по вспомогательным инструментам фаззинга.
Еще тогда были мысли дополнить тот пост несколькими своими мыслями.
Переслал пост следующим сообщением.

#fuzz #OpenSource #go #tools #БПО
Forwarded from Кавычка (Bo0oM)
Когда нужно фаззить веб-приложения не только кавычками, на помощь приходят мутирующие фаззеры. На вход они получают пользовательские данные, а на выходе измененные, заведомо некорректные. Это позволяет найти различного рода уязвимости и проверить веб-приложение и используемые там библиотеки на различные исключительные ситуации.

Первый и самый известный, Radamsa

Radamsa производит манипуляции с входными данными множеством разных неожиданных способов, включая чрезмерное повторение, инвертирование разрядов, вставку управляющих символов и т. д. Причем он годится для фаззинга как отдельных строк, так и заголовков, HTTP-запросов.

Второй, это jdam

Создан он для мутации именно json строк, когда нужно сохранить структуру, чтобы пройти валидацию данных. Помимо мутаций данных (по большей части позаимствованных у radamsa) он подмешивает различную полезную нагрузку именно для поиска веб-уязвимостей - вставляет лексемы NoSQL, нагрузку для шаблонизаторов, различные функции и операторы.
Арсенал тру фаззера.
Part
2. Ffuz | radamsa | jdam

Соответвенно в продолжении относительно ffuf, для тех кто не знаком:

Основной инструмент, чем отправлять запросы (фаззить). Идеально работает с предыдущими описанными инструментами.
Весьма шустрый, встроенная функция счётчиков, которую можно легко настраивать на возвращаемые ответы.
Например, статус коды, размер контента и собственные шаблоны...
https://github.com/ffuf/ffuf

Подробная инструкция по самому Ffuf:
https://codingo.io/tools/ffuf/bounty/2020/09/17/everything-you-need-to-know-about-ffuf.html#what-is-ffuf--and-what-is-it-used-for-

Чтобы не быть голословным,
Пара инструкций, как сварить между собой jdam + ffuf || radamsa + ffuf:

У jadm прям на гитхаб страничке есть пример:
https://gitlab.com/michenriksen/jdam#using-jdam-with-ffuf

Для radamsa есть следующий пример:
https://hakin9.org/ffuf-a-fast-web-fuzzer-written-in-go/

Если кому-то так сильно противен go,
Можете воспользоваться аналогмо Ffuf на python,
Производителем заявлено, что по скорости не уступает родителю)
https://github.com/ElSicarius/SuperTruder

#OpenSource #fuzz #go #python #tools #БПО
Background video ai-based changing

На прошедших выходных Младшая Сестра готовилась к конкурсу чтецов. По скольку он проходит на дистанционке, надо было записать видос, как она читает. Читала она отрывок из произведения Булгакова "Записки юного врача".

Отец вместе с ней решили немного покреативить, записали видос и захотели сменить фон. На какой-нибудь морг\реанимационную палату.

Первой попыткой было захромакеить задний фон с помощью sony vegas pro 13. Однако результат оставлял желать лучшего, видео сильно артифактило.

Тут врываюсь я и говорю:
Ща все будет, дай мне 10 минут.
Лезу на github.com, и нахожу сие чудо:

https://github.com/ZHKKKe/MODNet
Is a Green Screen Really Necessary for Real-Time Portrait Matting?
Не уже ли зеленый экран правда так сильно нужен для замены заднего фона налету?
Нет, и не нужен вовсе))
Это репо — обертка вокруг предтренированной модели-AI для замены заднего фона в видосах\картинках\вебкам-потоках.
Сильно вникать не стал, нужны были быстрые результаты.

Не буду много говорить,
Покажу что сделал, чтобы достать на видео только передний фон, а задний сделать белым:

Качаем репо:
git clone https://github.com/ZHKKKe/MODNet.git

Переходим скачаное репо, в папку /pretrained
И скачиваем предренированную модель modnet_webcam_portrait_matting.ckpt из
https://drive.google.com/drive/folders/1umYmlCulvIFNaqPjwod1SayFmSRHziyR

Создаем виртуальное окружение, venv
(мы же не хотим поломать питон, что у нас на системе)))
python3 -m venv env

Активируем установленное вирутальное окружение.
source env/bin/activate

Устанавливаем зависисмости (мы же в виртуальном окружении, верно?)):
pip install -r demo/video_matting/custom/requirements.txt

Запускаем скрипт с путем до вашего видео:
python -m demo.video_matting.custom.run --video YOUR_VIDEO_PATH

Заарифактило только маленький кусочек внизу,
За все четыре минуты видоса косяков больше не было,
На конечном результате просто опустили Мелкую пониже, чтобы этого куска не было видно))

#OpenSource #AI #python #tools
Небольшое упражние-гинастика с systemd-targets 🤸‍♀️🏃🤾

На хабре есть отличная статья на тему:
Systemd: пишем собственные .service и .target

Вкратце,
.target — особый тип unit'ов,
Позволяющий управлять другими юнитами, как группой.
Юнит такого типа должен распологаться в каталоге "/usr/lib/systemd/system" или "/etc/systemd/system" и быть доступным на чтение))
note: юниты, лежащие в "/etc/*" имеют приоритет.

Получение информации о текущем target.
Для этого выполните команду:
systemctl get-default

Вывод списока всех загруженных юнитов
systemctl list-units --type target

Изменение target по умолчанию
systemctl set-default multi-user.target

Проверка результата:
systemctl get-default

Возвращение первоначальной настройки (для десктопа)
systemctl set-default graphical.target

Переключение системы в multi-user.target
systemctl isolate multi-user.target

Переключение системы назад в graphical.target
systemctl isolate graphical.target

#systemd #linux #unix #administration
Debian build tools

Занимаясь перепиливанием всех этих ваших линуксов наткнулся на удивительную ссылочку с потрясающей интерактивной презентацией на тему
"Инструменты сборок debian образа".

Там обзор ~5-ти лучших инструментов с примером запуска,
А так же сравнительная табличка что на чём написано.

Отдельно хотел бы разобрать live-build в следующих постах, инструмент, которым вроде собирают собственно debian.

#linux #debian #build #live
JSON Interoperability

Интересный вектор тестирования приложения, я бы сказал, как один из видов фаззинга, который никогда не приходил мне в голову 🧐

Json формат данных имеет следующий вид:

{ "someVar" : "value", "someVar1" : 1.0, "someVar2" : 9999 }

Вот отправляете вы на какой-нибудь сервак по api подобный payload в штатном режиме.

А как поведет себя тот же сервак, если вдруг ему прийдёт payload следующего вида?)

{ "someVar" : "value", "someVar1" : 1.0, "someVar2" : 9999, "someVar" : "value1", "someVar1" : -1.0 }

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

#fuzz #go #OpenSource #БПО
Для тех, кто вдруг решит стать высококвалифицированным пентестером 😏
Forwarded from Ralf Hacker Channel (Ralf Hacker)
Курс: PEN-300 Evasion Techniques and
Breaching Defenses (Advanced Pentesting Training) 2021

#course #osep #redteam #pentest
Dependency analysis ⛓

Если вы вдруг работаете с безопасной разработкой,
То рано или поздно задумаетесь об анализе тех зависимостей,
Что лежат в корне функциональности вашего приложения.

Старые версии библиотек, уязвимости в них, а так же, возможно, совместимость лицензий, вот это все. На помощь в отслеживании данной проблемы ребята из под начала OWASP запилили супер комбайн.

Dependency-Track - это интеллектуальная платформа анализа компонентов цепочки поставок, которая позволяет организациям идентифицировать и снижать риск от использования сторонних и открытых компонентов на базе OWASP. Инструмент анализирует файлы, содержащие перечень всех зависимостей для проекта, так называемые BOM (bill of material) файлы.
Эти файлы описываются по спецификации cycloneDX BOM
(https://cyclonedx.org/docs/1.1/)

Исходный код: https://github.com/DependencyTrack/dependency-track


Рассмотрим с вами вариант использования "На скорую руку" с помощью Docker:

docker pull owasp/dependency-track
docker volume create --name dependency-track
docker run -d -p 8080:8080 --name dependency-track -v dependency-track:/data owasp/dependency-track

После завершения установки необходимо перейти по адресу развертывания DependencyTrack, в данном случае http://localhost:8080,
ввести в форму авторизации admin admin, изменить пароль на более надежный, создать проект, к которому будут односиться проанализированные зависимости.
Ометить в url UUID проекта.
Перейти в настройки, отметить token для автоматизации.

Для проектов, написанных на java и собираемых Maven'ом необходимо использовать плагин cyclonedx-maven-plugin
https://github.com/CycloneDX/cyclonedx-maven-plugin,
который генерирует необходимые для дальнейшего анализа BOM-файлы при сборке проекта.

Необходимо в корне проекта в файле pom.xml в разделе plugins добавить следующие строки:

<plugins>
<plugin>
<groupId>org.cyclonedx</groupId>
<artifactId>cyclonedx-maven-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>makeAggregateBom</goal>
</goals>
</execution>
</executions>
<configuration>
<projectType>library</projectType>
<schemaVersion>1.1</schemaVersion>
<includeBomSerialNumber>true</includeBomSerialNumber>
<includeCompileScope>true</includeCompileScope>
<includeProvidedScope>true</includeProvidedScope>
<includeRuntimeScope>true</includeRuntimeScope>
<includeSystemScope>true</includeSystemScope>
<includeTestScope>false</includeTestScope>
<includeLicenseText>false</includeLicenseText>
<outputFormat>all</outputFormat>
</configuration>
</plugin>
</plugins>

Для генерации BOM-файлов вручную, можно воспользоваться следующей командой:

mvn -X -DSPDXParser.OnlyUseLocalLicenses=true org.cyclonedx:cyclonedx-maven-plugin:2.1.1:makeBom

Для дальнейшего анализа необходимо загрузить сгенерированные файлы в развернутый контейнер.
Т.к. файлов обычно слишком много, для автоматизации загрузки необходимо воспользоваться следующим скриптом, используя ранее отмеченные UUID проекта и token для автоматизации.

Скрипт:

AUTO_TOKEN=<TOKEN>
NIFI_UUID=<PROJECT_UUID>
DEP_TRACK_URL=<Dependency_Track_url>

find $PWD -type f -name "bom.xml" |
while read -r line
do
echo $line;
curl -X "POST" "$DEP_TRACK_URL" \
-H "X-Api-Key: $AUTO_TOKEN" \
-F "project=$NIFI_UUID" \
-F "bom=@/$line";
done

После выполнения скрипта необходимо открыть web интерфейс, перейти в созданный проект и наслаждаться\ужасаться результатами))

#OpenSource #Dependencies #Analysis #tools #БПО
Defcon archives

Принес вам ссылочку на архивы метриалов с defcon (всех)
Пусть будет, почему нет?))

http://m6rqq6kocsyugo2laitup5nn32bwm3lh677chuodjfmggczoafzwfcad.onion

#defcon #onion #archive #pentest