Здравствуйте, уважаемые читатели моего блога!
Сегодня мы поговорим о том, возможно ли обойти запрет консоли и исполняемого бита операционной системы Astra Linux 1.7.4 (максимальная защита) и выполнить произвольные команды.
Разумеется, эта информация предназначена для системных администраторов и специалистов по безопасности информации, и её использование в противоправных целях преследуется по закону. Информация, которая здесь изложена НЕ является уязвимостью операционной системы, так как при корректном использовании её защитных механизмов указанная ситуация не возникнет (собственно, чтобы она не возникла, я решил написать эту статью).
Для начала вспомним, как именно работают указанные механизмы и для чего они нужны.
Запрет исполняемого бита предназначен для того, чтобы предотвратить запуск скриптов и бинарных файлов (ранее мы говорили о способах обхода указанного механизма — перейти и ознакомиться).
Механизм запрета консоли предназначен для предотвращения запуска пользователем произвольных команд.
Активируется он следующим образом:
sudo astra-console-lock enable #включить запрет консоли
sudo astra-console-lock disable #отключить запрет консоли
Но так ли это? Гарантирует ли указанный механизм запрет выполнения произвольных команд? И да, и нет.
Операционная система Astra linux 1.7 содержит множество различных механизмов защиты, но использовать их следует совместно, иначе появляются варианты их обхода.
Проведём эксперимент, активируем запрет исполняемого бита и запрет консоли:
sudo astra-console-lock enable
sudo astra-nochmodx-lock enable
Создадим файл скрипта на рабочем столе, с командой на создание файла на рабочем столе
cat << EOF > ~/Desktop/123.sh
#!/bin/bash
touch ~/Desktop/2222222
EOF
Попытаемся запустить его, но ничего не выйдет — логично, ведь исполняемый бит отсутствует. Как запустить указанный скрипт?
Используем ярлык, с указанием команды на исполнение.
Запустим ярлык и получим результат.
Как можно противодействовать запуску произвольных shell команд — используйте механизмы запрета использования интерпретаторов (включая bash), в этом случае указанный способ работать не будет.
Именно поэтому его нужно применять в комплексе.
В следующей статье мы изучим запрет запуска консоли более детально.
До новых встреч!