Ведущий инженер-программист
БазисУдалённо5/2
JavaCI/CDKubernetesDockerLinuxBashВысоконагруженные системыSAST/DASTKVMDASTTCPAppSecFuzzingQEMUHigh-load Systems
Описание
BASIS — разработчик программных продуктов для оказания облачных услуг и платформы динамической инфраструктуры. Компания BASIS занимается поставкой и интеграцией решений виртуализации крупнейшим государственным и коммерческим заказчикам.
Обязанности
- Статический анализ кода (SAST) критических компонентов Linux
- Анализ исходного кода ядра Linux, KVM/QEMU, libvirt, сетевых драйверов и технологий (OVS, DPDK), файловых систем (ext4, XFS, Btrfs)
- Использование инструментов: Coverity, Coccinelle, sparse, Smatch, CodeQL
- Поиск уязвимостей классов CWE, CVE (memory corruption, race conditions, privilege escalation)
- Фаззинг (Fuzzing) системных компонентов
- Настройка и запуск фаззеров (syzkaller, AFL++, libFuzzer, kAFL) для тестирования ядра и виртуализации
- Анализ крашей, написание репортов и работа с upstream-разработчиками
- Динамический анализ и отладка
- Работа с KASAN, UBSAN, KMSAN, GDB, kgdb, perf, ftrace
- Анализ дампов памяти, race conditions (lockdep, KCSAN)
- Устранение уязвимостей
- Исправление найденных проблем (патчинг, backport исправлений)
- Проверка на соответствие стандартам безопасности (Linux Kernel Self-Protection Project, CERT C)
- Аудит безопасности
- Анализ механизмов SELinux, AppArmor, seccomp, namespaces, cgroups
- Проверка конфигураций виртуализации (KVM hardening)
- Интеграция в CI/CD
- Настройка автоматических проверок в Jenkins, GitLab CI, KernelCI, LKFT
Требования
- Высшее техническое образование в области информационной безопасности или информационных технологий
- Опыт работы с ядром Linux (понимание архитектуры, знакомство с кодом)
- Знание Java
- Участие в разработке/анализе open-source проектов (ядро Linux, QEMU, libvirt)
- Навыки статического анализа (Coverity, Coccinelle, CodeQL)
- Опыт фаззинга системного ПО (syzkaller, AFL++, Trinity)
- Понимание аппаратной виртуализации (Intel VT-x/AMD-V, KVM, QEMU)
- Знание сетевых протоколов и подсистем (TCP/IP, netfilter, eBPF, OVS)
- Опыт отладки (GDB, kgdb, crash-утилиты, трассировка)
- Умение работать с git, патч-менеджментом (git send-email, lore.kernel.org)
- Английский (чтение/написание технических отчетов, общение с upstream)
Будет плюсом
- Знание ассемблера (x86/ARM/RISC-V) для анализа low-level уязвимостей
- Опыт работы с формальными методами верификации (например, для драйверов)
- Понимание атак на гипервизоры (Spectre/Meltdown, VM escape)
- Навыки обратной разработки (reverse engineering)
Условия
- Трудоустройство согласно ТК РФ
- Конкурентная заработная плата по итогам собеседования
- Премии каждый квартал
- График работы 5/2 пн-пт, гибкое начало дня
- Социальный пакет (ДМС, оплата мобильной связи)
- Можно удалённо
- Москва
- Санкт-Петербург
- Казань