Анализируем трояны в популярных SSH-клиентах

Весной 2022 года северокорейская хакерская группировка Lazarus начала распространение троянизированных SSH клиентов с открытым исходным кодом для создания бэкдоров в сферах развлечения, обороны и медицины. Жертвами первой волны этой атаки стали инженер…

Архитектура PostgreSQL. Часть 0. Старт программы

Postgres — один из крупнейших open source проектов. Он создавался многие года. Кодовая база накопилась огромная. Мне, как программисту, всегда было интересно как он работает под капотом. Но не про SQL пойдет речь, а про язык на котором он написан. Про …

Через две недели: эмулятор Сферы, часть 3

Привет, Хабр!После долгого перерыва — снова Сфера. Прошлые статьи (раз, два) были про то, как войти в игру и в ней остаться на всю жизнь. Гулять по миру, конечно, интересно, но быстро надоедает: делать в нем нечего, монстров и NPC нет, даже в озере уто…

Reverse-инжиниринг “чёрного ящика”: зачем поддержке исходный код?

Всем привет! Мы команда сопровождения GlowByte, занимаемся решением багов в различных системах крупного бизнеса. В статье на примере use-кейса расскажем, как разбирать закрытую систему по кусочкам в поисках решений сложных багов. Однажды к нам пришёл п…

Rust’ерзание краба. Пробуем реверсить Rust удобно

Rust как язык программирования только набирает обороты и находит своих почитателей. Он не только предлагает множество надстроек для безопасности кода, но с недавнего времени еще и появился в ядре Linux.В этой статье мы посмотрим на него с «обратно…

[recovery mode] RE Crypto Part#2

Наверное самое популярное действие, которое приходится выполнять для исследования криптографии сегодня это процедура анализа зловредного кода, который блокирует чьи-то данные с использованием кастомного или общепринятого алгоритма. Попробуем в этой ста…

[recovery mode] RE Crypto Part#1

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

Cнова про llvm

Исследования любого приложения достаточно рутинный и длительный процесс. Без использования инструментов и автоматизации разобрать даже самые простые алгоритмы написанные на некоторых языках программирования практически невозможно. (Go рантайм без симво…

Обход средств защиты в iOS-приложениях

В прошлой статье мы рассмотрели базовые уязвимости и способы их обнаружения. Но что делать, если в приложении используются дополнительные средства защиты (например, Jailbreak Detection или SSL-pinning), которые не позволяют нам изучить его? В этой стат…

*Нет связи*: эмулятор Сферы, часть 2

Привет, Хабр!Продолжаем собирать эмулятор Сферы на коленке. В прошлой части мы справились с логином и выбором персонажа, на очереди: вход в игру, загрузка инвентаря, пинг. Научимся оставаться в игровом мире дольше чем на 10 секунд после запуска и попро…