Сценарий оболочки, эквивалентный $ PHP _POST

Я вижу ниже информацию из здесь .

cdu (для Color du) - это сценарий на perl, который вызывает du и отображает красивую гистограмма с дополнительными цветами, позволяющими визуально увидеть каталоги, которые занимают место на диске.

Без аргументов, cdu сообщает о дисковом пространстве для всех подкаталогов. текущей директории. Только с одним аргументом каталога, cdu сообщает о дисковом пространстве для всех подкаталогов данной директории. Вы также можете вызвать du без предопределенных опций. Для более подробной информации документацию о доступных опциях, смотрите страницу ниже.

1
15.07.2019, 04:06
1 ответ

Как отмечено первым комментарием, SPEC CGI говорит, что данные поступления будут на стандартном входе, закодированном с помощью enctype, указанной в форме. Однако все методы должны быть подкреплены: MultiPart / Form-data , Приложение / X-www-форма-urlencoded , и HTML5 Текст / просто

Вот действительно быстро Тестовый скрипт Вы можете играть с:

#!/bin/sh
echo Content-type: text/plain
echo
echo Environment
printenv

echo POST contents
cat

Переменная CONTENT_TYPE будет установлена ​​на метод, используемый для данных.

Если это Application / X-www-form-urlencoded , то вы собираетесь увидеть классическую клавишу = значение и ключ = синтаксис значений, и вам нужно помнить до URL-unescape.

Если это Multipart / Form-data , то это MIME, и вы должны следить за тем, как раньше были эксплуатации против парсеров MIME.

Если это новый HTML5 текст / просто , а затем просто взять весь вход от stdin as - есть. Этот метод предназначен для загрузки файлов, а не представления формы; Вы можете безопасно кормить файловый дескриптор STDIN в другой процесс, без необходимости декодирования URL или MIME.

И я хотел бы повторять предупреждения других здесь. Если вы не исправляетесь против Shellshock, просто позволяя злоумышленнику запустить CGI, может быть достаточно, чтобы использовать вашу систему (все, что им нужно сделать, это переопределить все ваши общие команды оболочки, и они обязаны найти один используемый).

1
27.01.2020, 23:51

Теги

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