-2

Я видел много сценариев Linux, которые исполняются, но не могут быть прочитаны, поскольку они находятся в двоичном формате.

У меня вопрос, как я могу сделать мой сценарий не читаемым / двоичным форматом?

3 ответа3

12

У меня вопрос, как я могу сделать мой сценарий не читаемым / двоичным форматом?

В общем, вы не можете легко сделать это любым способом, который не причиняет боль.

Скрипты - это простые текстовые файлы (не текстовые двоичные файлы), которые должны читаться интерпретатором скриптов. Интерпретатор сценария запускается с использованием идентификатора и разрешений пользователя, выполняющего сценарий. Следовательно, сценарий должен быть читаемым пользователем и, следовательно, может быть прочитан непосредственно без использования интерпретатора сценария.

Есть способы запутать сценарии, но это только усложняет жизнь и не мешает прочтению сценария.

В принципе, вы можете создать интерпретатор сценариев Set-UID, который при запуске использует более высокие привилегии и, следовательно, может читать файл сценария, к которому сам пользователь не имеет доступа для чтения. Некоторые интерпретаторы сценариев написаны специально, поэтому они отказываются работать с повышенными разрешениями таким образом из соображений безопасности.

Если вы хотите создать программу, исходный код которой не может быть легко прочитан, вы можете преобразовать скрипт в скомпилированный язык или использовать различные хаки. Но декомпиляторы, дизассемблеры и другие инструменты часто могут воссоздать читаемый исходный код из скомпилированного кода.

Я видел много сценариев Linux, которые исполняются, но не могут быть прочитаны, поскольку они находятся в двоичном формате.

У меня нет На мой взгляд, все в двоичном формате не является сценарием. Мне было бы интересно увидеть пример.

3

Просто мысли - я никогда не пробовал ничего подобного - но не могли бы вы написать свой собственный интерпретатор сценариев, который содержит механизм декодера? Итак, первая строка вашего скрипта - "#!/bin/cryptoshell ", а все остальное в файле сценария зашифровано отдельным механизмом кодирования сценария.

Однако вопрос в том, почему вы захотите сделать такую вещь. Я имею в виду, что большинство скриптов bash достаточно сложны, чтобы понять, как они есть :-)

0

gzexe - недооцененный ужасный хакер. В одном из различных воплощений zip - pkzip? Если это может решить вашу проблему, пожалуйста, дайте мне знать :). Будучи предсторонним манекеном, я использовал бы маленькую заглушку perl, чтобы xor, unxor сценарий и передавал его sh.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .