Экономика безопасности кода или почему Rust не нужен
Прочитал статью Параллелизм с общим состоянием в Rust и обратил внимание, что её общий смысл можно выразить известной фразой: “делай как нужно, а как не нужно, делать не нужно”. Другими словами, это точно такой же совет, какой можно дать разработчику любого другого языка программирования, например...
Как я писал сервис авторизации на Rust…
Работая над одним своим проектом я задумался о необходимости авторизации для его публичного запуска. В самом проекте я всем этим заниматься не стал, а решил разработать отдельный сервис авторизации на Rust, который в дальнейшем можно будет «прикручивать» к разным проектам с небольшими доработками....
Защита LLM за 3ms: как я построил open-source иммунную систему для AI
340% рост AI-атак за 2025 год, а защита LLM всё ещё — «закиньте промпт в облако, подождите 200ms». Я построил альтернативу: SENTINEL — open-source стек из C, Rust и Python, который фильтрует jailbreak за...
Скрываем данные от стандартного режима exiftool прямо в чанках PNG
В настоящий момент, exiftool является мощным инструментом для анализа и изменения различной информации о файлах. Недавно, экспериментируя с файлами формата PNG и exiftool, я обнаружил одну занятную вещь, связанную с тем, что exiftool в стандартном режиме не считывает кастомные чанки PNG. В данной...
Разработка eBPF на Rust (aya-rs). С чего начать?
Привет, Хабр! Сейчас только ленивый не пишет про eBPF. Получается — теперь пишет. Я Саша Лысенко, техлид DevSecOps в К2 Кибербезопасность. Как ИБ-специалиста, меня просто приводит в восторг идея, предлагаемая технологией eBPF. Произвольная программа в контексте ядра операционной системы — и все это...
Что за зверь такой — Pinokio? Досконально разбираем его подкапотную
Что же такое - Pinokio? Почему о его исходном коде известно так мало, что стоит за непонятным кодом на github, и правда ли, что автор что-то скрывает? Читать далее...
Один на один с Rust
Всем привет! Я Влад Лунин, занимаюсь анализом сложных угроз в экспертном центре безопасности Positive Technologies. В последнее время часто приходится сталкиваться с вредоносным ПО (ВПО), написанном на Rust, поэтому хочу поделиться своим опытом реверса исполняемых файлов, написанном на этом языке....
[Перевод] Rust: объясняем Владение и Субструктурные типы на пальцах
Системы типов помогают разработчикам создавать надежные и безопасные программы. Однако такие термины, как «субструктурные типы» или «владение», нередко кажутся сложными и трудными для понимания, особенно для тех, кто не сталкивался с теорией типов в академической среде. Новый перевод от команды...
Как мы ускорили ванильную FreeIPA в 20 раз!!! (почти)
В статье речь пойдет об ALD Pro (Astra Linux Domain Pro). Один заказчик попросил предоставить инструмент нагрузки LDAP-запросов, да не простой, а с GUI и графиками. Наша команда в своей работе активно использует open source инструмент нагрузочного тестирования Locust (англ. Саранча). Сам по себе...
Rust: безопасность памяти без потерь в скорости
Язык Rust является высокопроизводительным языком программирования, обеспечивающим безопасную работу с памятью. Другие компилируемые языки программирования, например C, могут работать быстро и с минимальным количеством сбоев, но им не хватает функциональных возможностей для обеспечения надлежащего...
[Перевод] Портируем декодер AV1 с С на Rust для повышения быстродействия и безопасности
AV1 становится всё более значимым видеоформатом, которому требуется безопасный и производительный декодер. Исходя из этой идеи, мы в тандеме с командой из Immutant создали rav1d, портировав на Rust написанный на С декодер dav1d. Перед вами первая из двух статей, посвящённых решению этой задачи. —...
Библиотека RustCrypto: симметричное и асимметричное шифрование
Сегодня рассмотрим такую библиотеку в Rust, как RustCrypto. RustCrypto — это набор библиотек, реализующих различные криптографические алгоритмы, такие как AES, RSA, SHA, и многие другие. Читать далее...
Вскрываем средства для DDoS-атак на российскую ИТ-инфраструктуру. Часть вторая
По разным источникам, в 2023 году было зафиксировано несколько миллионов DDoS-атак на российские информационные системы. И судя по статистике, их количество только растёт. В связи с этим, а также по многочисленным просьбам коллег мы решили углубить наше исследование и более подробно разобрать...
Реализация Streebog256 и Streebog512 на языке RUST
Как и планировалось, следом за реализацией семейства хэш-функций SHA, появляется Стрибог и тоже в двух версиях, для 256 и 512 бит на выходе. Надеюсь эта статья будет полезна другим студентам. Более опытные разработчики в комментариях приветствуются. Весь код сохранен в репозитории GitVerse. Читать...
Реализация SHA256 и SHA512 на языке RUST
Небольшая заметка студента о том, как самостоятельно реализовать алгоритмы SHA256 и SHA512 на Rust. Статья будет полезна всем, кто интересуется криптографией, хочет повысить уровень безопасности своих приложений или просто расширить свои знания в области программирования на Rust. Читать далее...
Что такое формальная верификация
Это обзорная статья, в которой очень поверхностно и не подробно рассказывается о том, что такое формальная верификация программного кода, зачем она нужна и чем она отличается от аудита и тестирования. Формальная верификация — это доказательство с использованием математических методов корректности...
Rust'ерзание краба. Пробуем реверсить Rust удобно
Rust как язык программирования только набирает обороты и находит своих почитателей. Он не только предлагает множество надстроек для безопасности кода, но с недавнего времени еще и появился в ядре Linux. В этой статье мы посмотрим на него с "обратной" стороны, а именно попробуем пореверсить...
[Перевод] Интеллектуальный брутфорс: пишем головоломку и солвер для неё
Небольшое предисловие В колледже я много играл в головоломки. В статье под головоломками я буду подразумевать очень узкое подмножество таких игр. Вот некоторые из примеров: Stephen's Sausage Roll English Country Tune Sokobond Также мне посчастливилось изучать структуры данных в Политехническом...
Назад