| 
div.main {margin-left: 20pt; margin-right: 20pt}       А. Шкондин.  artvs@clubpro.spb.ru 
      Cross-site scripting
       Как ни странно это звучит, но к написанию данной статьи 
      меня подвиг обыкновенный спам. В мой почтовый ящик стали с надоедливой 
      регулярностью сваливаться списки вакансий от одного рекрутёрского 
      агентства. Пришлось посетить их сайт, чтобы поискать заветную кнопочку 
      unsubscribe. К моему великому сожалению таковой не оказалось. Зато я 
      обнаружил, что хотя сайт и носит гордое название "мир профессионалов", 
      разрабатывали его отнюдь не профессионалы, ибо о проблеме cross-site 
      scripting'a они ничего не знают.  
      В чем же заключается проблема? А заключается она в 
      наивности вебмастера, который не фильтрует сообщения, вводимые посетителем 
      в поля форм. А именно, пропускает следующие символы: < > " ' % ; 
      & + - 
      Чем это грозит? Самое безобидное, что можно придумать – 
      это JavaScript, который при просмотре сообщения будет открывать 
      произвольное окно. При просмотре моего резюме на сайте "мир 
      профессионалов" открывается как раз эта статья. Чтобы задумались :).  
      Из более неприятных действий могу указать, например, на 
      возможность загрузки более сложного скрипта с удалённого сервера и 
      прочтения содержимого cookies, что может скомпрометировать пароли и логины 
      не только посетителей, но и администраторов.  
      Обратите внимание, что cross-site scripting абсолютно 
      безразличен к тому, на каком языке написан обработчик формы: будь то CGI, 
      asp, jsp, servlet, php, perl или какая иная технология, ваш посетитель 
      может пострадать, для этого достаточно чтобы его браузер поддерживал 
      Jscript, и эта поддержка была не отключена.  
      Более подробную информацию о возможных неприятных 
      последствиях cross-site scripting’а читайте в рекомендациях Computer 
      Emergency Response Team (CERT) по адресу http://www.cert.org/advisories/CA-2000-02.html Техническую 
      информацию о способах фильтрации текста полей форм на разных языках 
      программирования смотрите на том же сайте: http://www.cert.org/tech_tips/malicious_code_mitigation.html/ 
      
 
  
 |