Нові CSRF і XSS уразливості в ADSL модемі Callisto 821+

23:56 10.06.2011

Продовжуючи тему уразливостей в ADSL модемі Callisto 821+, розповім вам про нові уразливості в даному модемі. У квітні, 07.04.2011, я виявив Cross-Site Request Forgery та Cross-Site Scripting уразливості в ADSL модемі Callisto 821+ (SI2000 Callisto821+ Router).

Уразлива версія SI2000 Callisto821+ Router: X7821 Annex A v1.0.0.0 / Argon 4×1 CSP v1.0 (ISOS 9.0) [4.3.4-5.1]. Дана модель з іншими прошивками також повинна бути вразливою.

Дані атаки потрібно проводити на власника модему, який залогінений в адмінку. Враховуючи, що малоймовірно застати його в такому стані, то можна використати раніше згадані уразливості для проведення віддаленого логіну (щоб залогінити його в адмінку). Після чого можна спокійно провести CSRF або XSS атаку.

CSRF:

Дана уразливість дозволяє змінити тип логіна при підключенні до Інтернету.

Callisto 821+ CSRF14.html

В розділі Create a new VLAN (http://192.168.1.1/configuration/qbridge_add_vlan.html ?ImBridge.ImQbridgeVlans) є CSRF, що дозволяє додавати нові VLAN.

В розділі VLANs (http://192.168.1.1/configuration/qbridgevlan.html ?ImBridge.ImQbridgeVlans) є CSRF, що дозволяє видаляти VLAN(и).

XSS:

В розділі Create a new VLAN (http://192.168.1.1/configuration/qbridge_add_vlan.html ?ImBridge.ImQbridgeVlans) у всіх текстових полях та деяких прихованих полях мають місце persistent XSS уразливості.

В розділі VLANs (http://192.168.1.1/configuration/qbridgevlan.html ?ImBridge.ImQbridgeVlans) є 2 persistent XSS уразливості.

Похакані сайти №150

22:43 10.06.2011

Після попереднього дослідження похаканих сайтів, приведу нову інформацію про взломані сайти. З числа українських сайтів.

  • http://mz-ark.gov.ua (хакерами з AHG) - 19.05.2011 - взломаний державний сайт, зараз сайт вже виправлений адмінами
  • http://www.leecooper.com.ua (хакерами netKILLER і MX55) - взломаний форум сайта
  • http://www.mariupolsapr.4ertim.com (хакером FormatXFormaT)
  • http://www.bayel.com.ua (хакери Shavzy і SteersMan) - 11.05.2011, а до цього сайт був взломаний блексеошніками, зараз сайт не працює (немає контенту)
  • http://yunona-tom.com (хакером Dr_Sm0k3r) - 01.06.2011, зараз сайт вже виправлений адмінами

Інфікований goggle.com

19:17 10.06.2011

Продовжуючи розпочату традицію, після попереднього відео про експлоіт для Firefox 3.6, пропоную нове відео на веб секюріті тематику. Цього разу відео про інфікований goggle.com. Рекомендую подивитися всім хто цікавиться цією темою.

Infected goggle.com

В даному відео розповідається про небезпечні сайти, що розповсюджують шкідливе програмне забезпечення (malware), на прикладі сайта goggle.com. Зловмисники не просто підбирають схожі домени, щоб люди, які помиляться при наборі (або випадково клікнуть по лінці, не вчитавшись в URL), зайшли на сайт, але й при цьому розміщують на ньому malware.

І для захисту власного комп’ютера варто використовувати сервіси, що попереджують про шкідливі сайти. Раніше я вже наводив подібний відео-ролик в записі Захист від небезпечних сайтів.

В відео зокрема показані два з таких сервісів - Web of Trust (як і в вищезгаданому відео) та McAfee SiteAdvisor, про які я вже розповідав. Окрім WoT-плагіна до браузера, автор також використовує NoScript. Рекомендую подивитися дане відео для розуміння векторів атак через інфіковані та шкідливі сайти.

Уразливість на www.ex.ua

16:23 10.06.2011

28.09.2010

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

Раніше я вже писав про уразливості на www.ex.ua.

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

10.06.2011

XSS:

http://www.ex.ua/search?s=%22%3E%3Cscript%3Ealert(document.cookie)%3C/script%3E&per=4

Дана уразливість вже виправлена. Це перша дірка, з повідомленних мною, яку адміни ex.ua виправили. Але при цьому потрібно не забувати дякувати людям, що дбають про безпеку їхнього сайта.

Нові CSRF і XSS уразливості в ADSL модемі Callisto 821+

23:55 09.06.2011

Продовжуючи тему уразливостей в ADSL модемі Callisto 821+, розповім вам про нові уразливості в даному модемі. У квітні, 07.04.2011, я виявив Cross-Site Request Forgery та Cross-Site Scripting уразливості в ADSL модемі Callisto 821+ (SI2000 Callisto821+ Router).

Уразлива версія SI2000 Callisto821+ Router: X7821 Annex A v1.0.0.0 / Argon 4×1 CSP v1.0 (ISOS 9.0) [4.3.4-5.1]. Дана модель з іншими прошивками також повинна бути вразливою.

Дані атаки потрібно проводити на власника модему, який залогінений в адмінку. Враховуючи, що малоймовірно застати його в такому стані, то можна використати раніше згадані уразливості для проведення віддаленого логіну (щоб залогінити його в адмінку). Після чого можна спокійно провести CSRF або XSS атаку.

CSRF:

Дана уразливість дозволяє активувавати ZIPB.

Callisto 821+ CSRF13.html

В розділі ZIPB (http://192.168.1.1/configuration/zipb.html) є ще 3 CSRF - для деактивації ZIPB, для вибора комп’ютера та для налаштування ZIPB advanced configuration.

Є 2 CSRF уразливості в розділі Bridge Main Page (http://192.168.1.1/configuration/bridge.html).

XSS:

В розділі ZIPB (http://192.168.1.1/configuration/zipb.html) у всіх текстових полях та деяких прихованих полях мають місце persistent XSS уразливості.

Є 2 persistent XSS уразливості в розділі Bridge Main Page (http://192.168.1.1/configuration/bridge.html).

Інфіковані сайти №82

22:40 09.06.2011

Після попереднього дослідження інфікованих сайтів, приведу нову інформацію про заражені сайти. З числа українських сайтів.

  • http://fashionpeople.com.ua - інфекція була виявлена 09.06.2011. Зараз сайт входить до переліку підозрілих.
  • http://uahotels.info - інфекція була виявлена 12.05.2011. Зараз сайт не входить до переліку підозрілих.
  • http://all-biz.info - інфекція була виявлена 02.05.2011. Зараз сайт не входить до переліку підозрілих.
  • http://ogo.ua - інфекція була виявлена 24.04.2011. Зараз сайт не входить до переліку підозрілих.
  • http://ogo.rv.ua - інфекція була виявлена 24.04.2011. Зараз сайт не входить до переліку підозрілих.

DoS проти OpenSSL

18:22 09.06.2011

Виявлена можливість проведення DoS атаки проти OpenSSL.

Уразливі версії: OpenSSL 0.9.8, OpenSSL 1.0.0.

Звертання до неініціалізованої пам’яті при розборі ClientHello.

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

14:18 09.06.2011

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

  • Hewlett Packard LaserJet MFP devices - Directory Traversal in PJL interface (деталі)
  • Babylon Cross-Application Scripting Code Execution (деталі)
  • HP LaserJet MFP Printers, HP Color LaserJet MFP Printers, Certain HP LaserJet Printers, Remote Unauthorized Access to Files (деталі)
  • “post” - Non-persistent XSS in slickMsg (деталі)
  • Multiple Vulnerabilities in Camtron CMNC-200 IP Camera (деталі)
  • “post” - Non-persistent XSS in slickMsg (деталі)
  • Juniper VPN client rdesktop clickhack (деталі)
  • BBCode CSS XSS in slickMsg (деталі)
  • ZyXEL P-660R-T1 V2 XSS (деталі)
  • “link” and “linkdescription” XSS in Social Share (деталі)

XSS атаки через заголовок User-Agent

22:49 04.06.2011

HTTP заголовок User-Agent часто використовується різними веб додатками і системами (для різних цілей), тому можливість підробки даного заголовка дозволяє проводити атаки. Це можуть бути як spoofing-атаки (причому як проти веб додатків, так і веб додатки можуть використовувати цей заголовок з метою клоакінга), так і XSS атаки. Раніше я вже розповідав про можливість атак через підробку User-Agent в статті Обхід систем для пошуку вірусів на веб сайтах, а зараз розповім про Cross-Site Scripting атаки через заголовок User-Agent.

Враховуючи, що заголовок User-Agent часто використовується різними веб додатками, які виводять значення цього заголовка на веб сторінку, і при цьому розробники часто забувають про його фільтрацію, то це дозволяє проводити XSS атак на дані веб додатки. Бувають як reflected XSS, так і persistent XSS уразливості, що пов’язані з User-Agent.

Проведення XSS атак через User-Agent.

Існують наступні методи проведення XSS атак через User-Agent:

1. Через Flash.

2. Через підробку User-Agent при persistent XSS уразливостях.

3. Через JavaScript.

4. Через ActiveX.

5. Через підробку User-Agent в браузері вірусами.

6. Через проксі, що підроблює User-Agent.

Атака через Flash.

Одним з найлегших методів проведення XSS атак, зокрема на reflected XSS уразливості, є використання Flash. Коли створюється спеціальний swf-файл, що відправляє запит до цільового сайта, при цьому вказуючи в заголовку User-Agent атакуючий XSS код.

Дані атаки спрацюють лише в старих версіях флеш-плагіна - в Flash Player 9.0.16 і попередніх версіях. Починаючи з версії 9.0.28 використання заголовку User-Agent заборонене.

Як я зазначив в статті Відправка серверних заголовків в Flash, у флеш-плагіні 10.0.22.87 і наступних версіях всього заборонено 47 серверних заголовків. Більш детально про XSS атаки через заголовки в флеш ви можете прочитати в даній статті.

Відправка довільних заголовків через Flash.

Хоча Adobe заборонила відправляти деякі заголовки через флеш (на даний момент це 47 серверних заголовків, як я зазначив вище), але всі інші заголовки дозволені. Тобто через Flash можна відправляти довільні заголовки (окрім заборонених), як з числа відомих заголовків, що є стандартизованими, так і будь-які інші.

Тобто, якщо якийсь веб додаток використовує нестандартний заголовок, або заголовки з нових стандартів, то можна буде провести атаку на цей веб додаток. Як і у випадку використання стандартних заголовків з числа незаборонених у флеші (наприклад заголовки Accept і Accept-Language дозволені). А окрім User-Agent веб додатки працюють і з багатьма іншими заголовками, що дозволяє проводити XSS атаки на них.

Атака через підробку User-Agent при persistent XSS уразливостях.

При наявності persistent XSS уразливостей (зокрема в зовнішніх веб додатках), можна підробити User-Agent і провести XSS атаку на вразливий веб додаток.

Це робиться шляхом створення експлоіту чи використання існуючого програмного забезпечення, що вміє посилати довільні заголовки. Для того, щоб відправити запит з User-Agent з атакуючим XSS кодом.

Атака через JavaScript.

Серед сучасних браузерів є такі, що дозволяють змінювати User-Agent через JavaScript. В даному випадку відбувається постійна зміна User-Agent, а не при одному запиті, як це має місце у випадку атаки через флеш.

Зокрема така можливість є в браузерах від Mozilla (в браузерах на движку Gecko), як в старій Mozilla, так і в нових Firefox, в тому числі в Firefox 3.х і 4. З JS кодом для зміни User-Agent в браузері ви можете ознайомитися в мене на сайті.

Даний код я зробив ще в 2003 році. Він змінює значення параметра general.useragent.override. Дана атака спрацює лише локально, але не онлайн. Тобто потрібно змусити користувача зберегти html-сторінку на свій комп’ютер і відкрити її локально (або підсунути її йому різними шляхами для локального відкриття). Про подібні атаки на браузери я вже писав, тому це цілком реально.

З іншої сторони, можна використати Cross Context Scripting (Cross-zone scripting) уразливості в браузерах на движку Gecko, для того щоб віддалено виконати код в локальному контексті й провести зміну User-Agent в браузері. Додам, що при цій зміні в старих Mozilla 1.7.х і попередніх версіях не виникало жодних повідомлень, тому атаку можна було провести приховано, а в Firefox 3.х вже виникає повідомлення (але якщо поставити відповідних чекбокс, то воно більше виникати не буде). Але це не є проблемою, тому що користувача можна обманним чином змусити натиснути Allow, та й багато користувачів взагалі автоматично натиснуть Allow в даному повідомленні.

Атака через ActiveX.

В Internet Explorer і в браузерах на движку IE можна через ActiveX компонент (так само як і в Flash ActiveX компоненті) підмінити заголовок User-Agent. Так само можуть додаватися будь-які інші серверні заголовки. Тому зловмисні компоненти в IE можуть проводити такі атаки.

Атака через підробку User-Agent в браузері вірусами.

Віруси, що потрапили на комп’ютер користувача, можуть змінювати User-Agent в одному або всіх браузерах, що він використовує. В даному випадку відбувається постійна зміна User-Agent, а не при одному запиті, як це має місце у випадку атаки через флеш. Так само можуть додаватися будь-які інші серверні заголовки.

Можливі різні варіанти зміни User-Agent шкідливим програмним забезпеченням. В браузерах Mozilla і Firefox вірус може додати необхідне значення User-Agent в файл prefs.js в папці з профілем користувача. Це також може зробити зловмисник при тимчасовому доступі до комп’ютера користувача.

В файл prefs.js додається (або замінюється існуючий) рядок:

user_pref("general.useragent.override", "XSS payload");

Для атаки на всі браузери можна або інфікувати exe-файли (або dll-файли) браузерів, щоб додати в них функцію, яка задає фіксоване значення User-Agent (що важче), або додати плагін/доповнення до браузеру, що робить дану операцію (що легше). Дана атака також може бути проведена через плагіни/доповнення, які скачуються користувачем з Інтернету - це можуть бути підставні плагіни, які або нічого не роблять (при цьому змінюючи User-Agent), або навіть мають якийсь публічний функціонал (при цьому приховано змінюючи User-Agent), або ж це можуть бути легальні плагіни, в яких є подібний прихований функціонал (що був зроблений автором плагіна, або зловмисником, який включив такий код в плагін).

Атака через проксі, що підроблює User-Agent.

У випадку атаки через проксі, у всіх запитах з браузера проксі може підміняти User-Agent, щоб задати заголовок з атакуючим XSS кодом. Атака буде тривати доти, доки користувач буде використовувати даний проксі (лише у випадку атаки на Ad Muncher відбудеться постійна зміна User-Agent). Так само можуть додаватися будь-які інші серверні заголовки.

Дана атака може відбуватися наступним чином:

а) На комп’ютері користувача встановлена програма, що працює як проксі. Наприклад, така як Ad Muncher (про різні універсальні XSS в якому я писав торік), що вміє підроблювати значення User-Agent. Вірус на комп’ютері користувача, або зловмисник при тимчасовому доступі до його комп’ютера, може змінити налаштування Ad Muncher, щоб задати необхідне значення User-Agent.

б) Користувач задав для свого браузера проксі - це може бути публічний анонімний проксі, що контролюється зловмисником, або користувача обманним шляхом заставили встановити необхідний проксі, чи це зробив вірус, змінивши налаштування браузера. І цей проксі підмінює значення User-Agent.

До речі, при атаці через JavaScript (або вірусами) також можна змінити налаштування проксі в браузері. Зокрема в браузерах на движку Gecko потрібно вказати параметри network.proxy.http, network.proxy.http_port і задати network.proxy.type = 1. Таким чином можна об’єднати атаки 3 і 6 або 5 і 6.

в) Деякі Інтернет провайдери в реальному часі вносять зміни в запити/відповіді, що йдуть від/до користувача. І зловмисний провайдер (або взломаний провайдер) може підмінити значення User-Agent.

г) При MITM атаці, наприклад, при використанні WiFi, також можуть підмінити значення User-Agent.

Заключення.

З вищенаведеного видно, що існує чимало методів підробки User-Agent, зокрема для проведення XSS атак. Тому веб розробникам потрібно завжди слідкувати за безпекою власних додатків. Щоб не допускати Cross-Site Scripting уразливостей, в тому числі при роботі з заголовком User-Agent.

DoS в Internet Explorer

20:15 04.06.2011

Новий тест для вашого браузера. Даний експлоіт виконує DoS атаку на Microsoft Internet Explorer 6.

В результаті роботи експлоіта браузер вилітає (тобто DoS атака). Як я протестував, на моєму Internet Explorer 6 під Windows XP SP2 цей експлоіт працює. В наступних версіях IE він вже не працює.

Протестувати Internet Explorer 6

Останній тест для IE був DoS в Internet Explorer 6, з яким ви також можете ознайомитися.