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
Выкачиваем приложение со всеми зависимостями.
Ненавижу закрытый контур.
Это какая-та хрень, спасающая от лохов,
Кому надо, тот пройдет.
А вот для админа это просто адская боль.
Например, попробуйте поставить на 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 следующим образом:
Для машины сниффера-отправителя:
1. Скачайте собранный пакет arkime версии 2.7.1 под свою операционную систему с https://arkime.com/downloads.
2. Установите пакет на машину, с которой необходимо производить запись трафика.
3. Сконфигурируйте Arkime:
#OpenSource #IDS #IPS #FPC #БПО #tools
Кстати к чему это я,
Пытаюсь написать документ по работе,
"Анализ скрытых каналов и угроз"
Для этого необходимо отснифить трафик на нескольких нодах одного приложения в течение опеределенного времени.
Решил попробовать для целей снятия трафика и дальнешего анализа софт 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
Arkime
An open-source, large-scale, full packet capturing, indexing, and database system. Stop using slow tools to dissect and search your packets, let Arkime do the grunt work for you!
Сюда так же буду скидывать и пересылать все что покажется интересным на темы it/sec/dev/ops с других смежных каналов/найденного в сети.
Арсенал тру фаззера.
Part 1.
Нашел неплохую статейка на тему ипользования ffuf.
Крайне шустрый фаззер на go.
https://danielmiessler.com/study/ffuf/
Впомнил, что "Кавычка" скидывал немного текста по вспомогательным инструментам фаззинга.
Еще тогда были мысли дополнить тот пост несколькими своими мыслями.
Переслал пост следующим сообщением.
#fuzz #OpenSource #go #tools #БПО
Part 1.
Нашел неплохую статейка на тему ипользования ffuf.
Крайне шустрый фаззер на go.
https://danielmiessler.com/study/ffuf/
Впомнил, что "Кавычка" скидывал немного текста по вспомогательным инструментам фаззинга.
Еще тогда были мысли дополнить тот пост несколькими своими мыслями.
Переслал пост следующим сообщением.
#fuzz #OpenSource #go #tools #БПО
Danielmiessler
A ffuf Primer
ffuf is an acronym for “fuzz faster you fool!”, and it’s a cli-based web attack tool written in Go. Veteran web testers might think of it as B
Forwarded from Кавычка (Bo0oM)
Когда нужно фаззить веб-приложения не только кавычками, на помощь приходят мутирующие фаззеры. На вход они получают пользовательские данные, а на выходе измененные, заведомо некорректные. Это позволяет найти различного рода уязвимости и проверить веб-приложение и используемые там библиотеки на различные исключительные ситуации.
Первый и самый известный, Radamsa
Radamsa производит манипуляции с входными данными множеством разных неожиданных способов, включая чрезмерное повторение, инвертирование разрядов, вставку управляющих символов и т. д. Причем он годится для фаззинга как отдельных строк, так и заголовков, HTTP-запросов.
Второй, это jdam
Создан он для мутации именно json строк, когда нужно сохранить структуру, чтобы пройти валидацию данных. Помимо мутаций данных (по большей части позаимствованных у radamsa) он подмешивает различную полезную нагрузку именно для поиска веб-уязвимостей - вставляет лексемы NoSQL, нагрузку для шаблонизаторов, различные функции и операторы.
Первый и самый известный, 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 #БПО
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 #БПО
GitHub
GitHub - ffuf/ffuf: Fast web fuzzer written in Go
Fast web fuzzer written in Go. Contribute to ffuf/ffuf development by creating an account on GitHub.
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
На прошедших выходных Младшая Сестра готовилась к конкурсу чтецов. По скольку он проходит на дистанционке, надо было записать видос, как она читает. Читала она отрывок из произведения Булгакова "Записки юного врача".
Отец вместе с ней решили немного покреативить, записали видос и захотели сменить фон. На какой-нибудь морг\реанимационную палату.
Первой попыткой было захромакеить задний фон с помощью 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
GitHub
GitHub - ZHKKKe/MODNet: A Trimap-Free Portrait Matting Solution in Real Time [AAAI 2022]
A Trimap-Free Portrait Matting Solution in Real Time [AAAI 2022] - ZHKKKe/MODNet
Небольшое упражние-гинастика с systemd-targets 🤸♀️🏃🤾
На хабре есть отличная статья на тему:
Systemd: пишем собственные .service и .target
Вкратце,
.target — особый тип unit'ов,
Позволяющий управлять другими юнитами, как группой.
Юнит такого типа должен распологаться в каталоге "
note: юниты, лежащие в "
Получение информации о текущем target.
Для этого выполните команду:
На хабре есть отличная статья на тему:
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.targetsystemctl isolate multi-user.target
Переключение системы назад в graphical.targetsystemctl isolate graphical.target
#systemd #linux #unix #administrationХабр
Systemd: пишем собственные .service и .target
У меня появился Linux на домашнем компьютере, и я поспешил обжиться в новой ОС. Она была установлена с systemd init process. Это было мое первое знакомство с эти...
Debian build tools
Занимаясь перепиливанием всех этих ваших линуксов наткнулся на удивительную ссылочку с потрясающей интерактивной презентацией на тему
"Инструменты сборок debian образа".
Там обзор ~5-ти лучших инструментов с примером запуска,
А так же сравнительная табличка что на чём написано.
Отдельно хотел бы разобрать live-build в следующих постах, инструмент, которым вроде собирают собственно debian.
#linux #debian #build #live
Занимаясь перепиливанием всех этих ваших линуксов наткнулся на удивительную ссылочку с потрясающей интерактивной презентацией на тему
"Инструменты сборок debian образа".
Там обзор ~5-ти лучших инструментов с примером запуска,
А так же сравнительная табличка что на чём написано.
Отдельно хотел бы разобрать live-build в следующих постах, инструмент, которым вроде собирают собственно debian.
#linux #debian #build #live
people.linaro.org
The many methods of build an debian image
Using LAVA for bisecting bugs
JSON Interoperability
Интересный вектор тестирования приложения, я бы сказал, как один из видов фаззинга, который никогда не приходил мне в голову 🧐
Json формат данных имеет следующий вид:
А как поведет себя тот же сервак, если вдруг ему прийдёт payload следующего вида?)
#fuzz #go #OpenSource #БПО
Интересный вектор тестирования приложения, я бы сказал, как один из видов фаззинга, который никогда не приходил мне в голову 🧐
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 Я все исправил к худшему (alekum)