Cross-Site Scripting уразливості в Invision Power Board

23:51 12.12.2009

Існують численні Cross-Site Scripting уразливості в Invision Power Board. Атака відбувається через атачмент (при кліку на атачмент в пості на форумі чи на лінку на даний атачмент). Це persistent XSS уразливості.

Про можливість атаки через swf-файли мені вже давно відомо. Тому я вже багато років тому відключив підтримку swf-файлів в атачментах (і в аватарах та фотографіях). Також я писав на початку 2008 про XSS уразливість в IPB через включені флешки і випустив виправлення для неї в своєму MustLive Security Pack.

В 2008 році була виявлена Cross-Site Scripting уразливість в IPB через htm і html файли в атачментах. Вона стосувалася Internet Explorer, в якому код виконувався в контексті сайта (в Mozilla і Firefox код виконувався локально). Але як я сьогодні перевірив, в Opera код також виконується в контексті сайта.

А нещодавно була виявлена нова XSS уразливість в IPB, цього разу через txt-файли. Яка стосується Internet Explorer. У випадку htm, html і txt-файлів (а також нищезгаданих php, rtf і xml-файлів) найкращим методом захисту від XSS є відключення їх підтримки на форумі (подібно до swf-файлів).

Сьогодні, 12.12.2009, я виявив нові Cross-Site Scripting уразливості в Invision Power Board. Атака відбувається через файли php, rtf та xml (в атачментах).

Можливі наступні атаки:

1. Атака через завантаження php-файлів з JavaScript кодом. Працює в IE та Opera в контексті сайта. В браузерах Mozilla та Firefox файл запускається локально (не в контексті сайта) при виборі відкрити в браузері. Відповідно у випадку атаки через htm, html та php файли на браузери Mozilla та Firefox, які відкривають їх локально (при виборі користувачем у діалоговому вікні), можлива атака на локальний компьютер користувача.

2. Атака через завантаження rtf-файлів з JavaScript кодом. Працює тільки в Internet Explorer.

3. Атака через завантаження xml-файлів з JavaScript кодом. Працює в Mozilla, Firefox, Opera та Chrome (але без доступу до кукісів).

XSS:

Для атаки через htm, html, php, rtf та txt-файли, потрібно зробити файл з наступним змістом (і завантажити в атачменті на форум):
<script>alert(document.cookie)</script>

Тестував на Invision Power Board 1.3 та 2.2.2. Уразливими повинні бути всі версії IPB 1.x (зокрема для txt), 2.x та 3.0.x. Автор advisory про атаку через txt-файли зазначав, що в IPB 3.0.4 є деяки фільтри проти XSS при завантаженні файлів, але їх можна обійти.

Перевірку провів в наступних браузерах: Internet Explorer 6 (6.0.2900.2180), Mozilla 1.7.x, Mozilla Firefox 3.0.15, Opera 9.52 та Google Chrome 1.0.154.48.


Одна відповідь на “Cross-Site Scripting уразливості в Invision Power Board”

  1. MustLive каже:

    Як повідомили мені розробники, в останній версії IPB 3.0.5 дані уразливості були виправлені.

Leave a Reply

You must be logged in to post a comment.