HELP
WWW, JavaScript и безопасность вашего
кошелька
Тот, кто путешествовал по бескрайнему океану Internet, много раз натыкался
на WWW-страницы с предложениями что-либо купить или заказать. Никто, естественно,
не будет рассказывать первому встречному такие данные о себе как имя, адрес,
номер счета в банке или кредитной карточки. Но именно эти данные требуется
ввести в форму заявки на WWW-странице, чтобы получить свой заказ. Если
вы доверяете фирме - владельцу страницы, то уверены, что введенная информация
не уйдет "налево", и заказ будет исполнен. Но вполне может оказаться,
что все ваши данные перехватит некий хакер, ваш счет уменьшится на энную
сумму, а предлагавшая свои услуги фирма и слыхом не слыхивала о вашем заказе.
Как это может произойти?
Предположим, адрес сервера хакера www.hacker.org. На странице, содержащей
ссылку на некий коммерческий сервер, например http://home.netscape.com,
хакер переписывает соответствующий URL следующим образом: http://www.hacker.org/http://home.netscape.com.
Ничего не подозревая, вы щелкаете мышью на строке со ссылкой на коммерческий
сервер. Запрос из браузера уходит на сервер www.hacker.org, тот получает
реальную страницу с home.netscape.com и все ссылки, содержащиеся в документе,
переписывает вышеупомянутым способом, добавляя в начало каждого URL строку
http://www.hacker.org/. Вы получаете уже модифицированную страницу. Каждое
ваше действие - выбор ссылок, заполнение форм - отныне отслеживается хакером.
Он может сделать с вашей информацией все, что угодно, - отредактировать,
переслать на home.netscape.com или оставить у себя.
Естественно, вы тоже не лыком шиты, и ваш браузер использует безопасный
Web-доступ через SSL (Secure Sockets Layer), о чем свидетельствует изображение
маленького ключика в левом нижнем углу окна браузера, "secure connection",
дескать. Только эта безопасная связь на самом деле установлена с опасным
www.hacker.org . Внизу браузера расположена строка под названием Status
Line. Там обычно мелькают сообщения о ходе передачи документа и расшифровки
выбранных ссылок. Вы думаете, если установите мышь на ложную ссылку, то
увидите модифицированный URL? Вряд ли, ведь хакер может написать на JavaScript
небольшую программу, и все, что попадет в Status Line, будет предварительно
модифицироваться так, что вы ничего не заподозрите. То же самое касается
Location Line, строки, где показывается URL просматриваемой в данный момент
страницы или вводится URL нового документа. И ввод и вывод в этой строке
можно обработать средствами JavaScript так, что внешне все будет O.K.
Однако хакера можно и перехитрить. Можно воспользоваться функцией "view
document information", среди отображаемых данных содержится истинный
URL просматриваемой страницы. Используя такую функцию браузера как "view
source", можно увидеть HTML-исходник просматриваемого документа. И
если вы знакомы с системой HTML-меток, то без труда найдете строки с подозрительными
ссылками. Более радикальное средство - отключить в браузере поддержку JavaScript,
и тогда вся информация, отображаемая в Status- и Location Line, будет видна
так как она есть. Поглядывайте почаще на эти две строки, и вас уже никто
не обманет. Также лучше всего "ходить" на коммерческие серверы
напрямую, а не через ссылки на посторонних страницах. Не стоит надеяться
на то, что хакера можно будет поймать там, где стоит сервер www.hacker.org.
Cкорее всего, это будет промежуточное звено в длинной и запутанной цепочке
серверов со взломанной защитой. Поэтому лучше самому позаботиться о своей
безопасности. Технология URL-модификации реально используется на сервере
www.anonymizer.com, предоставляющем анонимный доступ на любой Web-сервер.
Если вас заинтересовала затронутая тема, то вот адрес, где можно получить
дальнейшую информацию: http://www.cs.princeton.edu/sip .
Павел Фучкин, Уралтрансбанк