Новые разделы!
ИИ, квантовые вычисления и много других интересных тем
24.04.2012
Представлен релиз OpenSSH 6.0, открытой реализации клиента и сервера для работы по протоколам SSH (1.3, 1.5 и 2.0) и SFTP. Несмотря на значительный номер версии, изменений представлено относительно немного, по сравнению с прошлыми выпусками. Релиз позиционируется как корректирующий, а номер версии стоит рассматривать как плавное продолжение нумерации в десятичном исчислении, при которой после 5.9 выпускается не версия 5.10, а 6.0. Заметное улучшение внесено только в Portable-версию, в которой добавлена поддержка специфичного для Linux нового режима изоляции "seccomp sandbox".
Основные изменения:
Принцип работы seccomp filter сводится к ограничению доступа к системным вызовам. При этом, важной особенностью является то, что логика выставляемых ограничений задаётся на уровне защищаемого приложения, а не через задание внешних ограничений, как в случае AppArmor или SELinux. В код программы добавляется структура с перечнем допустимых системных вызовов (например, ALLOW_SYSCALL) и реакции в случае несовпадения (например, KILL_PROCESS). Доступ к системным вызовам определяется в виде правил, оформленных в BPF-представлении (Berkeley Packet Filter), которое получило распространение в системах фильтрации сетевых пакетов.
Система seccomp позволяет реализовывать достаточно сложные правила доступа, учитывающие передаваемые и возвращаемые аргументы. Программа сама определяет какие системные вызовы ей необходимы и какие параметры допустимы, все остальные системные вызовы блокируются, что позволяет ограничить возможности атакующего в случае эксплуатации уязвимости в защищённом при помощи seccomp приложении. Возможность задания фильтров аргументов позволяет также защититься от большинства атак, эксплуатирующих уязвимости в системных вызовах. Например, выявленные за последние годы критические уязвимости в glibc и ядре Linux, такие как AF_CAN, sock_sendpage и sys_tee, успешно блокируются при надлежащем использовании seccomp.