Joomla портал
seo seo Subscribe
seo
0
seo

Нет,

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

мире, а не разрушительную. А вот взломом занимаются специалисты несколько

другого уровня — крекеры (от cracker). Чтобы это слово не резало слух

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

18.2. Два самых распространенных

метода взлома

При взломе сайтов наиболее часто применяются два метода: так называемый

межсайтовый скриптинг (XSS) и SQL-инъекции (SQL injection). Первый

метод заключается в том, что злоумышленник внедряет свой HTML- или РНР-

код в сценарий страницы сайта. Причем возможности этого практически

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

безопасный тег , предназначенный для отображения картинки. Как

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

позволяющие использовать HTML-теги.

SQL-инъекции еще более опасны, поскольку внедрение SQL-кода может

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

Тут уже и не знаешь, что хуже — потеря или кража информации. Возможен и

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

уничтожили.

Далее мы рассмотрим оба метода достаточно подробно.

Глава 18. Защита собственной CMS 217

18.3. Межсайтовый скриптинг

Проблема XSS-атак известна уже давно, но, тем не менее, она до сих пор

остается актуальной, поскольку им подвержено очень много сайтов, да и сами

эти атаки нельзя назвать безопасными. Особенность такой атаки заключается

в том, что взламывается не сервер хостинг-провайдера (ведь в основном

провайдеры уделяют огромное внимание безопасности собственных серверов), а

плохо защищенный сценарий клиента. Естественно, далеко не все являются

Специалистами с большой буквы, вот и получается, что каждый день

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

даже и не подозревал, что кто-то может вот так просто взломать его сайт. Да

и отслеживать такие атаки сложно, потому что Web-серверы протоколируют

далеко не все запросы (например, POST-запросы вообще редко

протоколируются, следовательно, можно передать любой POST-запрос и остаться

незамеченным).

Как осуществляется XSS-атака? Злоумышленник конструирует специальный

URL, который передает своей жертве. Цель? Наиболее часто вставка

определенного HTML-кода осуществляется для рекламы или перенаправления на

другой сайт (который, как правило, находится под контролем

злоумышленника). Бывают и сложные XSS-атаки, когда злоумышленник перехватывает

сессию, но это довольно редкий тип атаки, поскольку злоумышленнику

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

такой доступ, можно навредить сайту и без всяких XSS-атак.

Рассмотрим небольшой пример уязвимого сценария:

echo «Привет $name»;

?>

Сценарию нужно передать имя (параметр $name), которое будет выведено в

браузер:

http://localhost/index.php?name=Denis

Если передать просто имя, тогда мы увидим то, что и ожидали:

Привет, Denis

Но что будет, если передать более сложный HTML-код, например:

http://localhost/index.php?name=

Будет выведено слово «Привет» и указанная нами картинка!

218

Часть IV. Разработка собственной CMS

В нашем случае ничего страшного не произойдет. Просто злоумышленник

порадуется, увидев свою картинку. Но ведь иногда информация передается

сразу в базу данных, без предварительной проверки! А потом при ее чтении

из базы данных будет выведен HTML-код, оставленный мна память»

злоумышленником.

Но и это еще не самая большая беда. Ведь злоумышленник таким образом

может передать не только HTML-код, но и JavaScript, а иногда даже и РНР-

код. Вот небольшой пример передачи JavaScript-кода:

http://localhost/index.php? name=

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

Привет

Как же уберечься от XSS-атак? В РНР есть две функции, которые могут

помочь делу:

? striptags () — удаляет из строки все HTML-теги, кроме разрешенных;

? Htmispeciaichars () — заменяет все специальные символы на их HTML-

эквиваленты (амперсанд заменяется &атр, символ

seo
5th Фев 2011
Теги:
seo

Написать ответ

seo
 
Все права защищены © 2023 Joomla портал
 
 
seo