У меня есть веб-сайт с поддержкой MODx, который сосредоточен вокруг формы. Доступ к веб-странице с формой ограничен для зарегистрированных пользователей (обрабатывается MODx). Пользователь заполняет несколько текстовых записей, выбирает файл для загрузки, затем нажимает кнопку Отправить. Указанным действием является CGI-скрипт submit.py в каталоге / cgi-bin, который регистрирует отправленную информацию и сохраняет файл, и он отлично выполняется.
Единственное, что меня беспокоит, это то, что любая форма (очевидно), если они указывают правильный URL-адрес для атрибута действия <form>
, похоже, может связать их форму с моим CGI-сценарием. Это означает, что они могут написать следующее на своей странице:
<form action="http://my-site.com/cgi-bin/submit.py">
<!-- blah blah blah -->
</form>
и данные будут отправлены в мою форму CGI и обработаны (нежелательное поведение).
У меня такой вопрос: Есть ли способ ограничить выполнение скрипта на основе HTML-формы, которая отправила данные? Я что-то упускаю действительно очевидное?
Я искал в Интернете и обнаружил слегка связанную проблему CSRF, но если помимо аутентификации на основе токенов есть способ предотвратить несанкционированное использование сценария CGI, мне бы очень хотелось его услышать.