XSS уразливості в 215000 флеш файлах

22:41 12.11.2008

Проводячи сьогодні дослідження уразливості на cpmstar.com, що я знайшов 19.01.2008, я виявив, що в Інтернеті дуже багато флешек з цією ж самою уразливістю. Всього в Інтернеті біля 215000 флеш файлів вразливих до Cross-Site Scripting (на більше 200000 сайтів).

Це видно з даних Google:

filetype:swf inurl:clickTAG

І це тільки ті флешки, що проіндексував Гугл, а реально їх може бути набагато більше. В результатах трапляються сайти з невразливими флешками (або сайти де вже немає згаданих флешек), але це поодинокі випадки, і майже всі сайти в результатах пошуку Гугла є вразливими. До речі, торік я вже писав, що 500000 flash файлів на популярних сайтах уразливі до XSS.

XSS:

Уразливість в наступному AS коді:

getURL(_root.clickTAG, "_blank");

Атака відбувається через передачу XSS коду flash файлу в параметрі clickTAG:

http://site/flash.swf?clickTAG=javascript:alert('XSS')

При кліку на флешку відбувається передача функції getURL рядку, що переданий флешці через параметр clickTAG. Таким чином може виконатися JS код, що був переданий флешці.

На http://server.cpmstar.com:

Зазначу, що флешки з target = “_blank” (в getURL) не дозволяють дістатися до cookies. А також вони не працють в IE6. Якщо target заданий не “_blank” (або зовсім не вказаний), то тоді флешки дають можливість дістатися до кукісів в усіх браузерах (та працють в IE6).

Ось ще приклади вразливих флешек на трьох сайтах:

На http://www.banjohangout.org:

На http://ad1.emediate.dk:

На http://www.open4smart.eu:

Існують подібні флешки, що використовують змінну clickTAG, з наступним AS кодом:

getURL(_root.clickTAG, _root.TargetAS);

Атака відбувається з використанням змінних clickTAG і TargetAS:

http://site/flash.swf?clickTAG=javascript:alert('XSS')&TargetAS=

На http://www.adspeed.com:

Це дозволяє дістатися до кукісів в усіх браузерах та атака нормально працює в IE.

Дані XSS - це strictly social XSS, про які я вже згадував стосовно уразливості на craigslist.org. Про даний клас уразливостей я ще розповім детально.

P.S.

Як я вияснив під час додаткових досліджень, при target = “_blank” (в getURL) можна дістатися до кукісів в Firefox 3. Тому при вказаному в флешці target = “_blank” до кукісів не можна дістатися в IE6 та Mozilla, зате можна дістатися до кукісів в Firefox 3 і можливо в інших браузерах.


Одна відповідь на “XSS уразливості в 215000 флеш файлах”

  1. MustLive каже:

    I wrote this article on English in The Web Security Mailing List: XSS vulnerabilities in 215000 flash files.

Leave a Reply

You must be logged in to post a comment.