1

Я использую веб-сервер (без root), размещенный на one.com и однажды я написал небольшой «инструмент», который делает забавные буквы из «обычного» пользовательского ввода через PHP `$ _GET. Этот материал настолько 2000, но люди все еще используют это, поэтому я держал это онлайн.

Боясь атак на сервер, я регистрирую все входные данные, которые содержат необычное количество специальных символов или имена «системных папок» или других команд * nix - и теперь, спустя пару лет, я действительно получил странный ввод:

../../../../../../../../../../../../../../../../../ETC/PASSWD

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

Вопрос: стоит ли мне волноваться? Это похоже на автоматическую атаку? Вы когда-нибудь получали подобный вклад? Я понимаю, что он говорит, но действительно ли современные серверы уязвимы для этой простой вещи? Кроме того, зачем тогда печатать содержимое файла? Мой скрипт обрабатывает ввод как строку, и поэтому ни один системный файл не должен читаться таким образом.

URL-адрес $_GET (DOMAIN/a.php/?get=test) указан в Google, поэтому, если бы бот просматривал / пробовал все результаты, я не чувствовал бы такой же обеспокоенности, как если бы кто-то сказал мне, что меня, возможно, преследуют некоторые взломщики.

1 ответ1

2

Вопрос: стоит ли мне волноваться? Это похоже на автоматическую атаку? Вы когда-нибудь получали подобный вклад? Я понимаю, что он говорит, но действительно ли современные серверы уязвимы для этой простой вещи? Кроме того, зачем тогда печатать содержимое файла? Мой скрипт обрабатывает ввод как строку, и поэтому ни один системный файл не должен читаться таким образом.

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

И в этом конкретном случае охота на /etc/passwd довольно проста и бессмысленна в любой системе, которая использует /etc/shadow для хранения действительного пароля. На долю которых приходится примерно 99,999% всех серверов, начиная с 1993 года, я полагаю.

Я бы не волновался, но это сказало, может быть, вы могли бы облегчить ваш разум, кодируя ваш PHP-скрипт в «брандмауэр» против системы, считывающей произвольные файлы за пределами ее работающей директории.

Как это сделать в вашем случае? Трудно сказать, не видя ваш код, но общая философия заключается в том, что вы берете любой ввод и затем очищаете его в соответствии с вашими потребностями ввода данных. Любое форматирование в тех данных, которые вам не нужны, просто удаляется.

Но в целом я бы не стал терять сон над такими вещами.

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