Июнь 2010

Самоучитель по креативному веб-дизайну. Книга 4, стр.81

2000. Самый эффективный метод защиты таких файлов — защита учетных запи- сей администраторов системы.

Как правило, хакер сначала пытается получить доступ к учетным записям ад- министраторов системы. Для обеспечения более эффективной защиты учетных записей администраторов от хакеров на многих сайтах в качестве имен для таких

учеТНЫХ записе й ИСПОЛЬЗУЮТ Не NetworkAdmin ИЛИ RemoteAdmin, а Менее Знача —

61 6 — Глава 12. Безопасность и производительность





щие слова. Это означает, что хакеру будет сложнее получить доступ к ключевым

учетным записям, что само по jce6e может стать достаточно убедительной причи — ной для прекращения хакером попыток взлома сайта.

Защита учетных записей по умолчанию.

При первой установке операционной системы или сложного приложения (на — пример, системы управления базами данных), программное обеспечение предос — тавляет несколько учетных записей по умолчанию, которые можно применять

для выполнения установки, тестирования и т. д. К сожалению, многие пользоваг

тели забывают блокировать эти учетные записи после установки приложений.

Часто хакеры получают доступ к системе именно через такие незаблокированные учетные записи.

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

Самоучитель по креативному веб-дизайну. Книга 4, стр.82

емые учетные записи. При просмотре списка учетных записей убедитесь, что вы знаете назначение каждой записи. Более того, во многих случаях защищенность сайта можно повысить за счет блокирования учетных записей большинства пользователей после окончания рабочего дня.

Социотехнические атаки

Один из наиболее простых способов получения доступа в систему заключает —

ся в том, чтобы спросить у пользователя его имя пользователя и пароль. Сетевые администраторы называют такие атаки хакеров социотехническими. Часто быва — ет, что ничего не подозревающему пользователю звонят, и для получения досту —

па в систему ведут разговор примерно следующего характера:



Хакер: Доброе утро. Это Конрад из отдела обработки данных. Сегодня во вто — рой половине дня по электронной почте вы получите письмо с сообщением о

том, что в качестве части проекта повышения защиты сети компании все пользователи должны будут изменить свои пароли завтра в 8:30 утра.

Пользователь: Хорошо.

Хакер: Для контроля процесса смены пароля мне нужно знать ваше текущее имя и пароль.

Пользователь: Хорошо.

Хакер: Какое у вас имя пользователя?

Пользователь: Smith.

Хакер: Ваш пароль?

Пользователь: toobusy.

Хакер: Великолепно, не забудьте завтра сменить свой пароль.



После того, как хакер узнал имя пользователя и пароль, он может получить доступ в систему. Для защиты вашего сайта от атак подобного рода вы должны научить пользователей никому не выдавать свои имена и пароли. Скажите им, что никто из отдела обработки данных не будет интересоваться паролями, и нико —

Самоучитель по креативному веб-дизайну. Книга 4, стр.83

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

Глава 12. Безопасность и производительность 61 7



Каким образом хакеры блокируют доступ

к вашей системе?

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

типа «отказ в обслуживании» («denial-of-service», «DoS»), которая потребляет ре — сурсы системы частично (снижая производительность) или полностью (вообще

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

В следующем простом HTML-файле, ReioadForever. html, используется деск — риптор , который приводит к тому, что браузер загружает графическое изображение большого объема с сайта www. somevictim. com каждые 30 секунд. Запрещая кэширование, HTML-файл заставляет Web-браузер передавать содержи- мое запрашиваемой страницы каждые 30 секунд. При обслуживании этого запро —

са сервер не сможет работать с другими пользователями. Хакер, например, может открыть 10 или более окон браузеров, в которые загружается страница

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

вателей.





content=»30″ />





Для защиты сайта от DoS-атаки можно воспользоваться брандмауэром, кото —

рый отслеживает идентичные или подобные HTTP-запросы. Кроме того, можно

просмотреть файлы журнала посещения сайта. В советах этой главы будет рас —

сказано об установке и настройке брандмауэра и о создании и анализе файлов системного журнала.



Каким образом хакеры атакуют CGI-сценарии?

В главе 3 вы научились создавать HTML-формы, которые посетители могут

заполнять и передавать приложению, запущенному на Web-сервере. Как правило, программисты пишут серверные приложения для обработки результатов заполне —

ния форм на таких языках программирования, как Perl или РНР. Многие годы хакеры считали CGI-сценарии удобным местом для взлома сайтов. Это было вызвано тем, что серверные сценарии часто используют доступ к данным, кото — рые хранятся на жестком диске. В зависимости от типа выполняемой сценарием обработки, хакер может использовать сценарий в своих собственных целях, вы- полняя его со значениями, передаваемыми извне процесса передачи данных формы. Более того, если хакер может получить доступ к жесткому диску Web — сервера, для него открывается возможность замены файла сценария своим соб —

Самоучитель по креативному веб-дизайну. Книга 4, стр.84

61 8 Глава 12. Безопасность и производительность





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

мер, сценарий хакера может просто содержать одну дополнительную строку, ко — торая передает по электронной почте на адрес хакера копию данных о кредитных карточках.

Часто читая сообщения об атаках хакеров можно встретить данные об атаках переполнения буфера, которые позволяют хакерам взламывать сценарии для по — лучения доступа к серверу с возможностью запуска любой установленной на сер — вере программы! Так, в главе 3 при создании HTML-форм вы создавали поля ввода текста, которые давали возможность посетителям вводить только опреде — ленное количество символов. Переполнение буфера возникает тогда, когда пользователь (не обязательно хакер) передает большее количество данных, чем

ожидает получить сценарий. Например, предположим, что HTML-форма позво- ляет посетителю вводить адрес, длина которого составляет до 128 символов. Тем

не менее, вследствие наличия ошибок программирования сценарий предоставля —

ет место только для 64 символов. Поскольку большинство посетителей в каче — стве своего адреса вводят меньше чем 64 символа, сценарий может довольно дол —

го работать без ошибок. Тем не менее, когда один из посетителей введет адрес,

длина которого превышает 64 символа, сценарий вызовет ошибку переполнения буфера.

Проблема с переполнением буфера состоит в том, что некоторые языки сце — нариев (как правило, скомпилированные программы) вызывают ошибку в про —

цессоре сценариев (т. е. программе, которая на сервере выполняется содержащие —

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

сценариев. Затем, после. получения доступа к серверу хакер копирует или уделяет файлы или запускает программы, находящиеся на сервере.

Как вы уже знаете, при передаче сообщений по сети Internet хакер может их перехватывать и, возможно, изменять их содержимое. Если хакер знает, что сер —

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

Самоучитель по креативному веб-дизайну. Книга 4, стр.85

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

сти возникновения ошибок переполнения буфера можно найти на Web-сайте груп — пы CERT по адресу http://www. cert. org, где приводятся известные уязвимые мес — та, вызванные ошибками переполнения (см. рис. 12.6). Кроме того, с помощью Web-сайта группы CERT можно найти описание уязвимых мест другого используе — мого вами программного обеспечения, в частности, PHP, ActiveX, ASP, IIS и т. д.

Глава 12. Безопасность и производительность 619







Каким образом брандмауэры защищают ваш сайт?

Для защиты сети от атак хакеров многие системные администраторы между

Internet и локальной сетью помещают брандмауэр. Брандмауэр (firewall) фильтрует

сообщения, попадающие в локальную сеть из сети Internet. He следует путать се — тевые сообщения с сообщениями электронной почты. Сетевые сообщения соот — ветствуют данным, передаваемым между компьютерами, таким программами, как

Самоучитель по креативному веб-дизайну. Книга 4, стр.86

Web-браузеры или программы Internet-чата.

Брандмауэр может представлять собой специальный аппаратный комплекс

или выполняемое на компьютере программное обеспечение. На рис. 12.7 пред — ставлена схема фильтрации сообщений, поступающих в локальную сеть.

620 Глава 12. Безопасность и производительность







В приведенном примере брандмауэр пропускает в локальную сеть только HTTP-сообщения, переданные от удаленного компьютера. Брандмауэр не про — пускает в локальную сеть сообщения таких программ, как чат-программы или программы передачи файлов (например, FTP). Описание процесса установки и

настройки параметров брандмауэра для защиты Web-сайта будет приведено ниже

в этой главе, в совете «Установка программного брандмауэра».



Каким образом шифрование защищает передаваемые

по сети сообщения?

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

Для организации обмена зашифрованными сообщениями две программы, на —

пример, браузер и сервер, должны предварительно «договориться» относительно используемого алгоритма шифрования. Предположим, например, что браузер и

сервер шифруют и дешифруют сообщения за счет увеличения или уменьшения

буквы на одну позицию. Например, буквы ABC при увеличении букв на одну позицию будут шифроваться как BCD, а буквы ZYX при уменьшении букв на одну позицию будут выглядеть как YXW. После выбора метода шифрования (в приведенном примере это увеличение или уменьшение буквы), необходимо дого — вориться о количестве позиций увеличений или уменьшения. Количество пози — ций можно считать ключом шифрования. Например, браузер и сервер могут выбрать метод шифрования, при котором каждая буква в слове увеличивается на

Самоучитель по креативному веб-дизайну. Книга 4, стр.87

2 позиции. Таким образом, ABC станет CDE.

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

Глава 12. Безопасность и производительность 62 1





менее, процесс, используемый программами для выбора алгоритма и ключа

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

Предположим, например, что сервер при отправке сообщения с выбором ал — горитма шифрования включает в него ключ, которым будут пользоваться сервер

и браузер для шифрования и дешифрации сообщений. Поскольку сервер не мо — жет начать шифрование сообщений до получения ключа шифрования, сообще- ния передаются в открытом, т. е. незашифрованном, виде. Если хакер перехватит это сообщение (с выбранным алгоритмом и ключом шифрования), он будет знать и алгоритм шифрования, и ключ шифрования, т. е. хакер сможет перехва — тывать сообщения и расшифровывать их содержимое. Чтобы исключить возмож- ность перехвата хакером алгоритма шифрования и ключа шифрования, сервер для шифрования значения ключа, который будет использоваться браузером и сервером для шифрования обмена сообщениями, использует специальный ключ шифрования — открытый ключ сервера. Это означает, что перед началом защи — щенного сеанса между клиентом и сервером Web-сервер должен иметь открытый ключ (рассматриваемый в следующем разделе), который сервер должен передать Web-браузеру.



Шифрование с открытым ключом

Сегодня для передачи зашифрованных сообщений по электронной почте или установки защищенного Web-соединения пользователи широко применяют шиф — рование с открытым ключом (public key encryption). Для получения зашифрован- ных сообщений пользователь получает два специальных ключа: закрытый ключ,

Самоучитель по креативному веб-дизайну. Книга 4, стр.88

которым пользуется только данный пользователь, и открытый ключ, которым может воспользоваться любой пользователь сети Internet.

Предположим, например, что вы хотите передать зашифрованное сообщение

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

их с помощью своего закрытого ключа. Другими словами, для отправки вам за —

шифрованного сообщения пользователь шифрует сообщение с помощью вашего открытого ключа. После получения сообщения вы можете его расшифровать с помощью своего закрытого ключа.

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

62 2 Глава 12. Безопасность и производительность





Поиск открытого ключа пользователя

В совете «Загрузка и установка открытого ключа, цифровой подписи и иден — тификатора сервера» будет описан процесс загрузки и установки ваших собствен — ных ключей шифрования и цифровой подписи. Цифровая подпись представляет собой уникальное значение, которое можно прикрепить, например, к сообщени — ям электронной почты, для аутентификации вас получателем сообщения (чтобы получатель знал, что это именно вы отправили сообщение) и гарантии того, что

Самоучитель по креативному веб-дизайну. Книга 4, стр.89

хакер не перехватил сообщение и не изменил его содержимое при прохождении сообщения через Internet.

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

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

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





Глава 12. Безопасность и производительность 62 3





Загрузка и установка открытого ключа, цифровой подписи и идентификатора сервера

Перед тем, как отправлять вам зашифрованное сообщение по электронной почте, вы должны получить свои открытый и закрытый ключи. Существует не- сколько методов получения ключей шифрования. Web-сайт компании VeriSign,

http://www. verisign. com, ПОЗВОЛЯеТ ВЫГруЗИТЬ Пробны й Набор (СО СРОКОМ ДеЙ-

ствия 60 дней) открытых и закрытых ключей. Кроме того, на этом сайте ключи можно приобрести за определенную плату. В инструкциях, полученных от ком — пании VeriSign, вы найдете все данные, необходимые для установки и использо — вания ключей. Если вы планируете использовать шифрование PGP (Pretty Good

Самоучитель по креативному веб-дизайну. Книга 4, стр.90

Privacy), соответствующее программное обеспечение можно бесплатно выгрузить

из сайта Массачусетского технологического института, по адресу http:/ /

web. mit. edu/network/pgp. html. С ПОМОЩЬЮ Вашего ОТКРЫТОГО КЛЮЧа ПОЛЬЗОВа — тели смогут шифровать сообщения, которые вы будете расшифровывать с указа — нием своего закрытого ключа. Оба приведенных сайта содержат подробные инст — рукции по отправке и получению зашифрованных сообщений электронной

почты.

Аналогично, перед тем, как Web-сервер сможет выполнять операции в защи — щенном режиме вы должны установить цифровой сертификат (который также

.называется идентификатором сервера), используемый программным обеспечени- ем Web-сервера. После установки сертификата и включения возможности обмена зашифрованными сообщениями пользователи сайта смогут запрашивать защи — щенные страницы, используя префикс защищенного соединения https:/ / (бук —

ва s в префиксе означает, что соединение является защищенным).

Несколько компаний, которые пользователи называют органами сертифика — ции, предлагают идентификаторы серверов для использования в сети Internet. Как правило, после некоторых исследований вашей компании орган сертифика — ции выдает идентификатор сервера, который дает вам право использовать имя компании и Web-адрес. Перед выдачей идентификатора сервера орган сертифи — кации проводит проверку полномочий компании и ее устава. После проверки компании орган сертификации выдает идентификатор сервера, который можно использовать для выполнения защищенных транзакций на Web-сайте. В зависи — мости от глубины изучения, получение идентификатора сервера может занять несколько недель (или больше).



Полезные ссылки
Случайные записи
  • 19.03.2011">Руководство по actionscript. часть 2, стр. 094
  • 26.07.2011">Продвинуть бизнес поможет сайт
  • 14.03.2011">Руководство по actionscript. часть 3, стр. 066
  • 05.03.2011">Руководство по actionscript. часть 5, стр. 002
  • 13.03.2011">Руководство по actionscript. часть 3, стр. 102
  • 04.06.2012">Судья заявил, что у Oracle нет авторских прав на Java API
  • 15.01.2010">Flash сайты
  • 20.01.2010">Векторные файлы и графика
  • 18.11.2011">Обзор LG Optimus LTE
  • 08.03.2011">Руководство по actionscript. часть 4, стр. 095
  • 03.03.2011">Руководство по actionscript. часть 5, стр. 078
  • 21.03.2011">Руководство по actionscript. часть 2, стр. 035
  • 03.02.2010">Создание графиков и диаграмм на JavaScript
  • 04.03.2011">Руководство по actionscript. часть 5, стр. 034
  • 12.03.2011">Руководство по actionscript. часть 3, стр. 132
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...