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

И так, на дворе двадцать первый век, а в сети всё новые виды атак и новые взломы очередных сайтов. Cross-Site Scripting — это современная атака на сайты, основана на внедрение вредоносного кода взломщиком (кратко — атака cross-site scripting — внедрение или XSS — Межсайтовый скриптинг). Обычно с помощь такого кода злоумышленник ворует информацию содержимого файла cookie посетителя сайта. Куки (с английского печенье) могут содержать очень много интересной информации, к примеру учетную запись и пароль пользователя. А ведь можно украсть не просто пароль обычного пользователя, но и администратора сайта. Если хакер внедряет свой код к вам на сайт, то это грозит серьёзными неприятностями, от взлома до порчи всего веб-ресурса.

Некоторые специалисты относят атаку Cross-Site Scripting к классу атак — дефейс. Класс дефейс — это подмен страницы, хотя как видите такое определение не очень походит и скорее является ошибочным. Но не стоит думать, что атака CSS (не путаться с разметкой CSS) не страшна вам, так как она действительно опасна и закрывать глаза на неё не стоит, как и на безопасность сайта в целом. Лучше всегда доверить обслуживанию грамотному специалисту, который будет мониторить ваш сайт 24/7. Одним из таких специалистов является веб-студия RevolWEB, которая занимается обслуживанием и защитой сайтов, обращайтесь к нам.

Как же защититься от атаки Cross-Site Scripting? Внимательно проверяйте каждый параметр передающий пользователем и содержимое, которое будет выводить на страницу взаимодействия. При правильной разработки сайта и должным отношение к безопасности, новый сайт будет защищен от атак Cross-Site Scripting, именно по этому рекомендуется заказывать сайты у специалистов. Но что можно сделать если взлом уже произошел? Срочно найти внедрённый код, удалить, а так же проверить панель администратора, сменить пароли и проверить дыры из которых произошел взлом. Опять же лучше связываться со специалистами, наша команда всегда готова помочь.

Теперь немного к практике: что же такого лишнего может отобразить пользователь? HTML-тэги, именно их использование на странице может приводить к серьёзным, негативным последствием. И именно благодаря ним атака Cross-Site Scripting так популярна. Сделайте так, что при получение текстовой информации от пользователя, конечный текст не форматировался в  html-разметку, а отображался как обычный текст. Кстати тут может прийти на помощь BB-коды, встроенные во многие популярные CMS. Т.е. если посетитель или хакер ввёл код <h1>Заголовок</h1>, он должен отобразиться так же, без изменений — <h1>Заголовок</h1>, а никак не отформатированные крупным шрифтом слово Заголовок.

Для обезвреживание переменных от HTML-кода можно использовать функцию htmlspecialchars(). Хотя помните, данная функция так же не безопасна, так что я рекомендую отложить её использование и продолжить чтение данной статьи дальше. Лучше использовать метод с регулярным выражение т.е. вы пишите регулярное приложение и функцию, которые будут заменять символ тэга HTML < на последовательность &lt;. Таким образом атака Cross-Site Scripting теряет свой смысл. Стоит так же заметить, что данный метод не обеспечит быструю скорость, но обеспечит высокую безопасность. Именно об этом я упомянул в самом начале статьи, грань между безопасностью и оптимизации (скоростью). Наращивая функциональность, необходимо будет расширять возможности поиска и замены.

Большинство программистов запрещают только опасные теги (VBScript, JavaScript и т.п.), но это в корне не верно! Не делайте так, мало того что Вы точно упустите опасный тег, так еще и можно пропустить опасный тег фрейма. Запрещать надо всё, иначе система будет уязвимой и рано или поздно будет взломан ваш сайт конкурентами или обычными вандалами.

Атака Cross-Site Scripting - Внедрение, XSS

Атака Cross-Site Scripting - Внедрение
Атака Cross-Site Scripting - Внедрение. Опасная атака CSS, что это за атака и как уберечься и спасти свой сайт. Сделать сайт более безопасным и надежным.
Атака Cross-Site Scripting - Внедрение
Written by: Михаил
Date Published: 05/20/2015
Спасибо, реально понятное теперь, что такое css и как с ней бороться.
5 / 5 stars