caspicasoft

Web developer
HomeAbout

Уязвимость в Bank RBK (XSS)

Сегодня краткий пост про простую уязвимость на сайте банка. О проблеме я сообщил банку 2 недели назад.

XSS (cross site scripting) или межсайтовый скриптинг - это серьезная уязвимость. Простыми словами, на вашем сайте (без вашего разрешения) выполняется чужой код. То есть, кто-то может контролировать что делает или видит пользователь вашего сайта!

1) Домен hxxp://www.bankrbk.kz не фильтровал параметры поиска. Забыл точный payload, но думаю проблему уже устранили. image

2) Интернет банкинг ib.bankrbk.kz построен на ASP.NET и неправильно обрабатывает параметры ReturnUrl которые отображаются внутри тэга <a>, в части кода для смены языка.

Можно вставлять javascript код который будет выполнятся при клике или наведений мышкой. Пример:

hxxps://ib.bankrbk.kz/Login.aspx?ReturnUrl=/&lang=EN%22%20onmouseover=%22alert%281%29%22%20

image

Сервер блокирует символ < в параметре ReturnUrl, но не блокирует javascript. Это значит можно использовать document.write() и построить новую страницу из таблицы ASCII применив String.fromCharCode().

Чтобы пользователь ничего не заметил, параметр ReturnURrl можно заполнить ненужным текстом.

hxxps://ib.bankrbk.kz/Login.aspx?ReturnUrl=/../../../../../../../../../../../../../../../../../../../../../“onmouseover=" document.write(String.fromCharCode(60,105,109,103,32,115,114,99,61,39,104,116,116,112,115,58,47,47,105,46,105,109,103,117,114,46,99,111, 109,47,116,113,67,100,110,51,69,46,112,110,103,39,62))”

image

XSS аудиторы некоторых браузеров знают, что это reflected XSS и не будут выполнять код. Но многие другие, например Firefox и мобильные браузеры, запустят действие и наш payload.

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