php файл был выполнен alexa crawler и вызвал проблемы! - PullRequest
4 голосов
/ 26 февраля 2010

Я написал скрипт, который будет использоваться для автоматического выпуска новых страниц в определенное время. Он просто покажет таймер обратного отсчета, а затем, когда он достигнет 0, переименует определенный файл в index.php и переименует текущий index.php в index -ified.php

В этом нет проблем. Но в какой-то момент мой клиент сказал, что мой сайт не заходит .. Я обнаружил, что index.php переименован в index -ified.php, и все остальные страницы работают нормально. И без index.php мой сайт показывал ошибку 404.

Затем я проанализировал журнал доступа и обнаружил, что сканер alexa получил доступ к этому сценарию выпуска, и это вызвало проблему

Я хочу знать, как сканер alexa нашел мой внутренний файл сценария и сканировал его ?? Это случится со всеми моими внутренними файлами назначения администратора? У меня нет ссылок на этот скрипт на моих страницах.

Интересно, как он мог найти файлы, которые присутствуют внутри моего сервера .. ????

Ответы [ 4 ]

11 голосов
/ 26 февраля 2010

Интересно, как он мог найти файлы, которые присутствуют на моем сервере?

Возможно, потому что кто-то, кто получил доступ к этим файлам, использовал панель инструментов Alexa

Это удалось сделать только потому, что в скрипте есть две ошибки.

  1. Не защищен уровнем аутентификации / авторизации.

  2. Он вносит значительные изменения на сервере в ответ на запрос GET. Спецификация HTTP предоставляет GET для «безопасных» запросов и POST для запросов, которые что-то делают.

1 голос
/ 26 февраля 2010

Вы должны использовать robots.txt и запретить паукам ползать:

User-agent: *
Disallow: index.php
1 голос
/ 26 февраля 2010

если ваш сценарий находится в папке htdocs (для apache), скорее всего сканеры найдут его и попытаются отсканировать. Что вы можете сделать, это:

1) поместите правило в robots.txt, здесь вы можете узнать больше об этом: http://www.javascriptkit.com/howto/robots.shtml

Это рекомендует сканерам не выполнять скрипт, но не запрещает им

2) Поместите скрипт в подпапку и защитите его паролем - лучше всего в вашем случае, ДЕЙСТВИТЕЛЬНО не хотите, чтобы случайные посетители или пауки отключали ваш веб-сайт. Подробнее о том, как это легко сделать, можно узнать здесь .htaccess:

http://www.javascriptkit.com/howto/htaccess3.shtml

Желаю вам удачи, Marin

1 голос
/ 26 февраля 2010

index.php - имя скрипта PHP по умолчанию в каталоге. Он будет выполнен при переходе к каталогу без указания имени файла.

Чтобы решить эту проблему, используйте POST для вызова изменений. Если вы не можете этого сделать, то, по крайней мере, дайте сценарию имя, которое вряд ли будет угадано.

...