Чтение онлайн

на главную - закладки

Жанры

Linux глазами хакера

Флёнов Михаил Евгеньевич

Шрифт:

7.7.3. Секреты и советы

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

Ограничение сценариев

Во-первых, ограничьте выполнение сценариев только отдельной директорией. Чаще всего это каталог cgi-bin. Однажды я видел систему, в которой для этих целей администратор

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

Резервные копии

Никогда не сохраняйте резервные копии сценариев в каталогах, доступных Web-серверам. Рассмотрим пример. Если на сервере есть PHP-скрипты, то пользователи видят только результат их выполнения. Чтобы посмотреть исходный код, хакеру необходим доступ к серверу, например FTP или Telnet, т.к. сервер Apache не передает таких данных клиенту.

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

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

Когда злоумышленник исследует сценарии на сервере, то никто не мешает проверить наличие резервной копии. Допустим, что у вас есть файл www.servername.com/index.php, хакер попробует загрузить www.servername.com/index.bak или www.servername.com/index.old. На любительских сайтах такие версии встречаются очень часто. Не допускайте подобных промахов.

Любой специалист по безопасности должен запретить пользователям работу с резервными копиями. Сколько бы мы не говорили программистам о том, что нельзя держать на сервере ничего лишнего, они все равно продолжают это делать, потому что им так удобно. Наша задача — сделать хранение этих копий безопасными, т.е. запретить доступ со стороны Web-клиентов.

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

<FilesMatch "\.bak$">

 Order deny, allow

 Deny from all

</FilesMatch>

<FilesMatch "\.old$">

 Order deny, allow

 Deny from all

</FilesMatch>

7.8. Индексация Web-страниц

За последние 10 лет Интернет разросся до таких размеров, что найти в нем что-либо без хорошей поисковой системы стало невозможным. Первые системы просто индексировали страницы по их содержимому и потом использовали полученную базу данных для поиска, который давал очень приблизительные результаты. Если ввести в качестве контекста слово "лук", то будет отобрано огромное количество сайтов по пищевой промышленности и по стрельбе из лука. В большинстве языков есть слова, которые имеют несколько значений, и по ним поиск затруднителен.

Проблема не

только в двусмысленности некоторых слов. Есть множество широко употребляемых выражений, по которым тоже сложно произвести точную выборку. В связи с этим поисковые системы стали развиваться, и теперь можно добавлять в запрос различные параметры. Одной из самых мощных является поисковая система www.google.com. В ней реализовано много возможностей, позволяющих сделать поиск более точным. Жаль, что большинство пользователей не освоили их, а вот взломщики изучили все функции и используют в своих целях.

Один из самых простых способов взлома — найти с помощью поисковой системы закрытую Web-страницу. Некоторые сайты имеют засекреченные области, к которым доступ осуществляется по паролю. Сюда же относятся платные ресурсы, где защита основана на проверке пароля при входе, а не на защите каждой страницы и использовании SSL. В таких случаях Google проиндексирует запрещенные страницы, и их можно будет просмотреть через поиск. Для этого всего лишь надо четко знать, какая информация хранится в файле, и как можно точнее составить строку поиска.

С помощью google.com можно найти достаточно важные данные, которые скрыты от пользователя, но по ошибке администратора стали доступными для индексирующей машины Google. Во время поиска нужно правильно задавать параметры. Например, можно ввести в строку поиска следующую команду:

Годовой отчет filetype:doc

Или

Годовой отчет filetype:xls

И вы найдете все файлы в формате Word и Excel, содержащие слова "Годовой отчет". Возможно, документов будет слишком много, поэтому запрос придется ужесточить, но кто ищет, тот всегда найдет. Существуют реальные примеры из жизни, когда таким простым способом были найдены секретные данные, в том числе действующие номера кредитных карт и финансовые отчеты фирм.

Давайте рассмотрим, как можно запретить индексацию каталогов Web-страниц, которые не должны стать доступными для всеобщего просмотра. Для этого необходимо понимать, что именно индексируют поисковые системы. На этот вопрос ответить легко — все, что попадается под руку: текст, описания, названия картинок, документы поддерживаемых форматов (PDF, XLS, DOC и т.д.).

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

Допустим, что у вас есть сайт www.your_name.com. Робот, прежде чем начать свою работу, пробует загрузить файл www.your_name.com/robots.txt. Если он будет найден, то индексация пойдет в соответствии с описанными в файле правилами, иначе процесс затронет все подряд.

Формат файла очень простой и состоит всего лишь из двух директив:

□ 

User-Agent: параметр
— в качестве параметра передается имя поисковой системы, к которой относятся запреты. Таких записей в файле может быть несколько, и каждая будет описывать свою поисковую систему. Если запреты должны действовать на все поисковики, то достаточно указать вначале файла директиву
User-Agent
с параметром звездочка (*);

Поделиться:
Популярные книги

Второгодка. Книга 4. Подавать холодным

Ромов Дмитрий
4. Второгодка
Фантастика:
героическая фантастика
альтернативная история
сказочная фантастика
5.00
рейтинг книги
Второгодка. Книга 4. Подавать холодным

Я уже царь. Книга XXIX

Дрейк Сириус
29. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я уже царь. Книга XXIX

Неудержимый. Книга XXVI

Боярский Андрей
26. Неудержимый
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Неудержимый. Книга XXVI

Афганский рубеж

Дорин Михаил
1. Рубеж
Фантастика:
попаданцы
альтернативная история
7.50
рейтинг книги
Афганский рубеж

Спокойный Ваня 2

Кожевников Павел Андреевич
2. Спокойный Ваня
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Спокойный Ваня 2

Развод с драконом. Отвергнутая целительница

Шашкова Алена
Фантастика:
фэнтези
4.75
рейтинг книги
Развод с драконом. Отвергнутая целительница

Московское золото и нежная попа комсомолки. Часть Четвертая

Хренов Алексей
4. Летчик Леха
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Московское золото и нежная попа комсомолки. Часть Четвертая

Последний Паладин. Том 2

Саваровский Роман
2. Путь Паладина
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Последний Паладин. Том 2

Оживший камень

Кас Маркус
1. Артефактор
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Оживший камень

Двойник Короля

Скабер Артемий
1. Двойник Короля
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Двойник Короля

Черный Маг Императора 11

Герда Александр
11. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Черный Маг Императора 11

Анти-Ксенонская Инициатива

Вайс Александр
7. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
космоопера
5.00
рейтинг книги
Анти-Ксенонская Инициатива

Камень. Книга пятая

Минин Станислав
5. Камень
Фантастика:
боевая фантастика
6.43
рейтинг книги
Камень. Книга пятая

Барон Дубов 8

Карелин Сергей Витальевич
8. Его Дубейшество
Фантастика:
юмористическое фэнтези
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Барон Дубов 8