ищет альтернативу echo для записи данных в файл, чтобы его можно было вызвать через sudo

Справочная информация:

при запуске в системе unix Tenable.io (nessus) попытается создать файл тегов в / etc / с уникальной строкой. Предположительно, чтобы он мог идентифицировать машину при изменении имени хоста или IP.

Он делает это с помощью

"sh -c \"echo 35374e09cc444b058c65267613804fa4 > /etc/tenable_tag && echo OK\""

Проблема в том, что для этого ему нужны привилегии root. Стандартный способ позволить tenable повысить привилегии - использовать sudo и добавить несколько необходимых ему команд в файл sudoer. Внесение в белый список sh эквивалентно внесению в белый список всего того, что мы бы предпочли не делать!

Итак, я пытаюсь придумать какой-нибудь простой способ выгрузки текста в файл, который не использует "встроенную" оболочку

. вся команда будет выполняться с помощью sudo, поэтому вещи, которые передают что-то в sudo, не будут работать.

в этом сообщении кто-то предложил

sudo ex +'$put =\"some string\"' -cwq foo.txt

, который работает, но добавляет пустую строку (по крайней мере, на моем ubuntu box)

0
задан 23 October 2020 в 05:03
1 ответ
sudo ex +'put =\"some string\"' -cwq foo.txt

т.е. удаление $, которое на самом деле является регулярным выражением, соответствующим концу буфера, что приводит к вставке пустой строки.

0
ответ дан 2 November 2020 в 22:38

Теги

Похожие вопросы