Fuzzing Story – Telegram
Fuzzing Story
60 subscribers
11 photos
1 video
1 file
14 links
Канал разработчка на тему Application Security - фаззинг, статический анализ, уязвимости, реверс 🤙

По всем вопросам пиши @syncerr
Download Telegram
Channel created
Знакомство 🤗

Привет, меня зовут Пётр, рад тебя видеть на моем канале)
Я занимаюсь разработкой примерно с 2022 года, интересуюсь системным программированием, Linux, сетями и информационной безопасностью.

Давно уже хотел начать делиться своими мыслями в сфере Application Security и наконец-то буду это делать тут!

Особенно интересны для меня темы:
- Фаззинг и статический анализ
- Отладка, символьное выполнение
- Анализ исполняемых файлов
- Нахождение уязвимостей
- Написание Proof-Of-Concept
- Оценка критичности уязвимостей

Такой опыт для меня новый и самому пока не ясно как у меня всё это будет получаться)

Подписывайся и будем проходить этот путь вместе ☺️
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝3
Звезды Telegram⭐️

Появилась возможность доната звёзд в телеграм в каналах, авторы контента могут выводить 100% звезд в крипте TON, то есть работает как p2p пересылка

Вывести накопленные в канале звезды можно через 21 день, от 1000 ⭐️ через сервис Fragment.com

Надо бы уже завести свой кошелёк ton в miniApp @wallet

Хочу потом проверить как выводятся звезды и как работает эта система в ботах и мини приложениях, позже поделюсь обзором

#tlg
Please open Telegram to view this post
VIEW IN TELEGRAM
16❤‍🔥2🔥2🕊1
Практический анализ двоичных файлов
[Дэннис Эндриесс] (pdf)

Многие инструменты из этой книги очень полезны при отладке, инструментации и динамическом анализе исполняемых файлов

- разбор форматов PE/ELF
- написание своего загрузчика, libbfd
- динамический анализ
- бинарный патчинг

#book #pdf #bin
🔥5
Удаление русских разработчиков из ядра Linux (open-source)

Грег Кроа-Хартман (Greg Kroah-Hartman), отвечающий за поддержку стабильной ветки ядра Linux, внёс изменение в список мэйнейнеров ядра Linux, в результате которого были удалены 11 разработчиков, предположительно работающих в РОССИЙСКИХ компаниях. В качестве причины удаления упомянуто лишь "выполнение различных требований комплаенса". Так же отмечено, что разработчики могут быть возвращены в список мэйнтейнеров в случае предоставления определённой документации.

Сказать что для меня это было неожиданно?) Это скорее тупой и некрасивый поступок, удалили просто список разработчиков, принимавших участие в разработке ядра Linux, хотя код который они написали оставлен.

"выполнение различных требований комплаенса"

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

какой нахрен документации?
нарушение каких требований?
что за самодурство такое?


Сюр ещё в том, что многие вещи, которые изначально принципиально создавались в open-source "свободными", типо ядра Linux, многих блокченов
(USDT или Tether к примеру) по сути подчиняются санкциям и не децентрализованы.

Думаю если политика будет влиять на ядро Linux, ничего хорошего из этого не выйдет, нельзя нарушать сами принципы open-source, иначе он перестанет быть open ☺️

Подробнее почитать можно тут:
https://www.opennet.ru/opennews/art.shtml?num=62090

Оригинальный коммит:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=6e90b675cf942e50c70e8394dfb5862975c3b3b2

#Linux #kernel
Please open Telegram to view this post
VIEW IN TELEGRAM
😁32❤‍🔥1😱1
Статические библиотеки

static library - обычно используются как цель для сборки разных функций в один файл, они обычно выборочно или полностью входят в состав исполняемых файлов при компоновке, увеличивают их размер


По сути файл libgraphene_chain.a это просто архив объектных файлов some_file.o

Посмотреть список объектных файлов внутри:
ar -t libgraphene_chain.a


Компоновка с ней если она в каталоге:
cc main.o libgraphene_chain.a


Если библиотека находится по стандартному пути - /usr/local/lib:
cc main.o -lgraphene_chain


Вообще, компоновка выполняется утилитой ld, но обычно компоновщик вызывается в конце процесса сборки самим компилятором, поэтому вместо вызова компоновщика, мы можем вызвать компилятор cc и он сам разберётся что нужно сделать)

#fuzz #bin #make
🔥2❤‍🔥11
Разработка на ассемблере

Fasm - freeware flat ассемблер, работает под Linux

Компиляция в объектный файл:
fasm main.asm


Компоновка в исполняемый файл:
ld main.o -o main


Просмотр адресов секций ELF:
nm main


Удаление символьной информации из ELF:
strip main


Общая информация об ELF
readelf -a main


HEX дамп ELF файла:
hexdump main


От каких динамических библиотек зависит ELF:
ldd main


Дизассемблирование (вся инфа об ELF):
objdump -Df main


#asm #make
❤‍🔥1🔥1👀1
Forwarded from Unauth Papaya (Vadim Belous)
Реверс-инжиниринг Docker образа 🧐

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

Прозаично, что эти утилиты также поставляются в формате Docker образов. Собственно, перейдём к практической части. Выполните любую из команд, приведённых ниже, чтобы восстановить Dockerfile:

sudo docker run -v /var/run/docker.sock:/var/run/docker.sock --rm dduvnjak/dockerfile-from-image $IMAGE_ID
sudo docker run -v /var/run/docker.sock:/var/run/docker.sock --rm laniksj/dfimage $IMAGE_ID
sudo docker run -v /var/run/docker.sock:/var/run/docker.sock --rm mrhavens/dedockify $IMAGE_ID


Где $IMAGE_ID - это ID вашего образа, Dockerfile которого вы хотите восстановить

После выполнения команды вы получите листинг с примерным содержимым Dockerfile'а. Эти три утилиты (dockerfile-from-image, dfimage, dedockify) практически идентичны относительно функционала. Единственное отличие в том, что первая написана на Ruby, а вторые две на Python. Под капотом они анализируют слои, которые образовались в ходе сборки образа. Каждая инструкция в Dockerfile создаёт новый слой в конечном артефакте (не все инструкции создают новый слой)

Для пущей автоматизации можно сделать alias, например:

alias dedockify="sudo docker run -v /var/run/docker.sock:/var/run/docker.sock --rm mrhavens/dedockify"


И потом при надобности:

dedockify $IMAGE_NAME


Также обратите внимание на утилиту dive, с помощью которой вы можете полазить по содержимому слоёв внутри Docker образа. Запуск этого инструмента возможен как в формате контейнера, так и в формате статического бинарного файла. Утилита подойдёт для того, чтобы посмотреть ФС образа на каждом этапе сборки. Этот функционал отлично подходит для отладки неполадок

alias dive="sudo docker run -ti --rm  -v /var/run/docker.sock:/var/run/docker.sock wagoodman/dive"


Например

dive nginx:latest


Если вы захотите применить инструмент в конвейере, то используйте следующую конструкцию:

CI=true dive $IMAGE


Канал: @unauth_papaya
Автор: Вадим Белоус
Хэштеги: #bash #trick #shell #devops #docker #ci #dedockify #reverse
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥1🔥1
Forwarded from Unauth Papaya
Конвертация контейнера в виртуальную машину 😮

Нередко на технических собеседованиях на позицию DevOps-инженера задают каверзный вопрос: «В чем отличие контейнера от виртуальной машины?». Большинство кандидатов теряются при ответе на этот вопрос, а некоторые интервьюеры и сами до конца не понимают, какой ответ они хотят услышать от собеседуемого. Чтобы наглядно понять различия и никогда не возвращаться к этому вопросу, я покажу, как превратить контейнер в виртуальную машину и запустить ее в облаке Timeweb Cloud.

Ссылка на статью

Disclaimer: Автор канала не несёт ответственность за неправомерные действия, совершенные на основе изложенного в канале контента

Канал: @unauth_papaya
Автор: Вадим Белоус
Хэштеги: #linux #docker #timeweb #announcement #security #cloud #cont2virt #trick
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥1🔥1
Forwarded from Unauth Papaya (Vadim Belous)
Скрипт для поиска эндпоинтов сайта в HTML коде 🤓

Зайдите в DevTools и выполните в консоли следующий JavaScript код

javanoscript:(function(){var noscripts=document.getElementsByTagName("noscript"),regex=/(?<=(\"|\'|\`))\/[a-zA-Z0-9_?&=\/\-\#\.]*(?=(\"|\'|\`))/g;const results=new Set;for(var i=0;i<noscripts.length;i++){var t=noscripts[i].src;""!=t&&fetch(t).then(function(t){return t.text()}).then(function(t){var e=t.matchAll(regex);for(let r of e)results.add(r[0])}).catch(function(t){console.log("An error occurred: ",t)})}var pageContent=document.documentElement.outerHTML,matches=pageContent.matchAll(regex);for(const match of matches)results.add(match[0]);function writeResults(){results.forEach(function(t){document.write(t+"<br>")})}setTimeout(writeResults,3e3);})();


Disclaimer: Автор канала не несёт ответственность за неправомерные действия, совершенные на основе изложенного в канале контента

Канал: @unauth_papaya
Автор: Вадим Белоус
Хэштеги: #web #pentest #trick #js
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥11🔥1