В следующей статье мы рассмотрим Maybe. С помощью этого инструмента мы сможем легко узнать что именно будет делать команда или программа перед ее выполнением прямо с терминала. Мы добьемся этого с помощью Maybe. Полезность запускать процессы под управлением ptrace (с помощью библиотеки python-ptrace). Инструмент начнет работать, когда он перехватит системный вызов, который собирается внести изменения в файловую систему. Он будет регистрировать этот вызов, а затем изменять регистры ЦП, чтобы перенаправить вызов на неверный идентификатор системного вызова (эффективно превращая его в «нет операции«) И установите для этого неработающего вызова значение, указывающее на успешность исходного вызова.
Это простой инструмент, который позволит нам выполнить команду и посмотреть, что он делает с нашими файлами, не делая этого на самом деле. После просмотра результата, в котором будет список, мы можем решить, действительно ли мы хотим выполнить его или нет.
Индекс
Установить Maybe на Ubuntu
Чтобы использовать этот инструмент, мы должны убедиться, что установили типун в нашей системе GNU / Linux. Если он у нас не установлен, мы можем сделать это простым способом, как показано ниже. Мы можем использовать терминал (Ctrl + Alt + T) в Debian, Ubuntu и Linux Mint написав следующую команду:
sudo apt-get install python-pip
Когда в нашей системе установлен pip, мы можем выполнить следующую команду, чтобы установить Возможно с терминала:
sudo pip install maybe
Мы можем узнать больше об этом инструменте на странице GitHub проект.
Как узнать, что будет делать команда или программа перед ее выполнением
Использовать этот инструмент очень просто. Нам просто нужно будет добавить Может быть перед командой что мы хотим выполнить в нашем терминале. В качестве примера вы можете увидеть следующую команду, которую я написал в своем терминале:
maybe rm -r Ubunlog/
Как видите, я собираюсь удалить с помощью команды "rm»Папка с названием«Убунлог»Из моей системы. На следующем снимке экрана вы можете увидеть результат, который команда показывает мне в терминале:
Инструмент Maybe будет выполнять 6 операций с файловой системой, а я показывает, что именно будет делать эта команда (rm -r Убунлог /). Теперь я могу решить, выполнять эту операцию или нет. Это довольно простой пример, но я думаю, вы понимаете, в чем суть этого инструмента.
В случае, если утилита не совсем понятна, вот еще один пример. Я собираюсь установить настольный клиент Инбоксер для Gmail. Для этого я собираюсь перейти в папку, в которую я загрузил файл. AppImage и запустите его с помощью Maybe. Вот что мне показала система в терминале (Ctrl + Alt + T):
maybe ./inboxer-0.4.0-x86_64.AppImage
Если инструмент не обнаруживает нет операций с файловой системой, терминал покажет нам сообщение о том, что он не обнаружил никаких операций в файловой системе, поэтому он не будет показывать предупреждения.
С этого момента мы сможем легко узнать, что будет делать команда или программа, еще до их выполнения. В результате система считает, что все, что вы пытаетесь сделать, происходит на самом деле, хотя на самом деле это не так.
Удалить "Может быть"
Чтобы удалить этот инструмент из нашей операционной системы, нам нужно будет использовать только опцию удаления pip. Для этого открываем терминал (Ctrl + Alt + T) и пишем в нем:
sudo pip uninstall maybe
предупреждение
Мы должны быть очень осторожны при использовании этой утилиты в производственной системе. или в любой системе с конфиденциальной информацией. Это не инструмент для запуска ненадежного кода в нашей системе. Процесс, запущенный под управлением Maybe, все еще может нанести серьезный ущерб нашей системе. потому что блокируется лишь несколько системных вызовов. Мы также можем проверить, выполнялась ли такая операция, как удаление файла, с помощью системные вызовы только для чтения и соответствующим образом измените его поведение.
Комментарий, оставьте свой
Предположим, у кого-то есть плохая идея запустить rm -r / * от имени администратора.