Архів для категорії 'Статті'

Атака з використанням Jikto і Blindmap

19:23 10.06.2010

Продовжуючи розпочату традицію, після попереднього відео про виконання коду в Internet Explorer 7, пропоную новий відео секюріті мануал. Цього разу відео про атаку з використанням Jikto і Blindmap. Рекомендую подивитися всім хто цікавиться цією темою.

Jikto & Blindmap - Demonstration of Attack

В даному відео ролику демонструється використання таких інструментів як Jikto (його модифікованої версії Jikto+) та Blindmap, для пошуку уразливостей на сайтах. Причому сам пошук відбувається через браузер іншої особи, яка навіть і не підозрює, що її браузер використовується для пошуку вірусів (в цьому особливість Jikto).

Для даної атаки необхідні Jikto+ (контрольна панель та сам JS-скрипт, розміщені в Інтернеті), цільовий сайт, сайт з persistent XSS (де буде розміщений JS-скрипт Jikto) та Blindmap. Рекомендую подивитися дане відео для розуміння векторів атак з використанням Jikto і Blindmap.

“Warning” Google хакінг №10

18:15 09.06.2010

Продовжу тему “Warning” Гугл хакінга (”Warning” Google hacking). Котрий є різновидом Гугл хакінга - використання пошукових систем (зокрема Гугла) для пошуку уразливостей на сайтах.

Дана методика передбачає використання Гугла (чи інших пошукових систем) з метою пошуку повідомлень на сайтах про помилки, і дозволяє знайти важливу інформацію стосовно даних сайтів. За допомогою спеціальних пошукових запитів (дорків) можна знайти Full path disclosure та Information leakage уразливості на різноманітних сайтах в Інтернеті.

Новий перелік “варнінг” пошукових запитів:

Warning: Permission denied

Warning: date

Warning: Access denied for user (при роботі з СУБД, зокрема MySQL)

Warning: db2 function.db2

Warning: dba function.dba

Warning: dbase function.dbase

Warning: dbmexists

Warning: dbmfetch

Warning: dbminsert

Warning: dbmopen

Закриття сайтів через розміщення персональних даних

22:41 05.06.2010

Раніше я вже писав про можливості закриття сайтів через їх уразливості, а в останнє я розповідав про закриття сайтів через їх взлом. Зараз разповім вам про нову можливість впливу на власників дірявих сайтів через законодавство.

Можливе закриття сайтів (а також висенення обвинувачення) через порушення закону про захист персональних даних. Як я писав учора, Верховна Рада України прийняла закон про захист персональних даних, який набирає чинність з 01.01.2011. І з того часу дія даного закону може торкнутися кожного власника дірявого сайта в Україні.

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

Даний інцедент може статися через уразливості на сайті. Коли через дірки на сайті будуть розміщені особисті відомості інших людей (ясна річ без їхньої згоди). Або навіть через існуючий функціонал сайта, через звичайну форму реєстрації, можуть бути занесені особисті дані людини, яка не давала на це згоду. І притензії будуть висунуті сайту і його власнику. Подібно до випадків закриття сайтів через розміщення на них порнографічних, секретних або терористичних матеріалів, що вже мали місце в Україні в 2008-2009 роках.

Так що всім адмінам і власникам сайтів варто слідкувати за безпекою власних сайтів, щоб не потрапити під дію даного закону.

Цікаве чтиво на тему web security

19:21 04.06.2010

Продовжуючи традицію, пропоную вашій увазі цікаві секюріті статті. Щоб ви поповнювали свої знання з веб безпеки.

Добірка цікавого чтива на тему web security (статті з Вікіпедії):

Виконання коду в Internet Explorer 7

22:42 02.06.2010

Продовжуючи розпочату традицію, після попереднього відео про виконання коду в Adobe Flash Player, пропоную новий відео секюріті мануал. Цього разу відео про виконання коду в Internet Explorer 7. Рекомендую подивитися всім хто цікавиться цією темою.

MS09-002 exploit (IE7) Exposed Owning LAN for Pentesters

В даному відео ролику демонструється використання експлоіта для MS09-002 уразливості в IE7, для віддаленого виконання коду в даному браузері. Атака проводиться в LAN. Для проведення атаки використовуються іструменти ettercap та MSFgui.

В результаті атаки на користувача IE7, нападник виконав код, що дозволив йому отримати шел доступ на компьютер користовуча (в даному випадку з правами адміна). Рекомендую подивитися дане відео для розуміння векторів атак на Internet Explorer.

Cross-Language Scripting

22:38 31.05.2010

This is English version of my Cross-Language Scripting article.

Recently I told about Local XSS - the type of Cross-Site Scripting vulnerabilities, which I found in 2006. And now I’ll tell you about another new type of XSS founded by me. It’s Cross-Language Scripting, which I created in December 2006.

Cross-Language Scripting - it’s Cross-Site Scripting vulnerabilities in online interpreters. This class of XSS vulnerabilities I created at 23.12.2006, when found vulnerability in online interpreter CodeIDE, and 28.02.2007 I found such vulnerability in my Perl Pas Interpreter. These vulnerabilities allow to conduct XSS attacks on web application interpreter, so due to sending to interpreter a code on programming language which it supports, to receive JavaScript or VBScript code at the output.

Nuances of Cross-Language Scripting.

Such vulnerabilities can take place only in online interpreter of different programming language. Altogether I found tow such vulnerabilities in MustLive Perl Pascal Programs Interpreter and in CodeIDE. But with growth of Internet, when there will be more online interpreters and they will be using more widely, then new Cross-Language Scripting vulnerabilities can appear.

Online interpreters receive program code (e.g. on Pascal language, as in case of my Perl Pas Interpreter) from the user and after its processing they show the result of work of the program to the browser. And if to force online interpreter to show html-tags, particularly those which allow to execute JS/VBS code, then it’s possible to conduct XSS attack on the user of interpreter.

One of nuances of Cross-Language Scripting is that, that they can bypass WAF, as sever-side, as client-side. Because for conducting of attack the programming code on some programming language is using, not different html-tags which are using for conducting of common XSS attacks.

Examples of Cross-Language Scripting.

At first I found such vulnerability in CodeIDE and later in my Perl Pas Interpreter. But at first I’ll tell about such case in Perl Pas Interpreter, and then about CodeIDE.

Perl Pas Interpreter.

First version of interpreter v.1.0 released at 10.03.2006. And at 24.05.2006 version v.1.2 was released, in which I created online version of interpreter. And from that time I apply energies to prevent XSS vulnerabilities in it (already in version v.1.2 there was protection against reflected XSS). But at 28.02.2007 I invented how it’s possible to bypass protection of web application with using of Cross-Language Scripting and to conduct XSS. Which I fixed on the same day in version v.1.2.9.

XSS:

The next Pascal code:
write(chr(60),'script',chr(62),'alert(document.cookie)',chr(60),'/script',chr(62));

Leads to showing in browser and executing of JavaScript code:
<script>alert(document.cookie)</script>

I.e. using of different constructions of Pascal language it was possible to show JS/VBS code with bypassing of existent protecting filters and to conduct XSS attack. For preventing of this type of XSS vulnerabilities it’s needed to use special methods.

CodeIDE.

In online interpreter CodeIDE I found Cross-Language Scripting (which I privately told about to developer of the application), and also found reflected XSS at interpreter’s site, which I wrote about already.

This vulnerability was in JavaScript interpreter. Even this isn’t quite cross-language attack, when JS-code is executing in JS interpreter, but yet this attack was directed on online interpreter and was bypassing protecting filters of the application.

XSS:

In CodeIDE it was not possible to get to document.cookie (they had protection), but it was possible to execute other JS-commands, which could be used for attack. E.g. for redirection:
document.location="http://websecurity.com.ua"

Thus it was possible to execute JS-code from among allowed constructions of JavaScript language, without using of any tags, directly in interpreter.

Міжмовний XSS - Cross-Language Scripting

22:43 28.05.2010

Нещодавно я розповідав про Local XSS - Локальний XSS - тип Cross-Site Scripting уразливостей, що я виявив в 2006 році. А зараз розповім вам про ще один новий тип XSS, знайдений мною. Це Cross-Language Scripting, який я створив у грудні 2006 року.

Міжмовний XSS - Cross-Language Scripting - це Cross-Site Scripting уразливості в онлайн інтерпретаторах. Даний класс XSS уразливостей я створив 23.12.2006, коли виявив уразливість в онлайн інтерпретаторі CodeIDE, а 28.02.2007 я виявив подібну уразливість в своєму Perl Pas Interpreter. Дані уразливості дозволяють проводити XSS атаки на веб додаток інтерпретатор, щоб за рахунок відправлення інтерпретатору коду на мові програмування, яку він підтримує, на виході отримати JavaScript або VBScript код.

Особливості Cross-Language Scripting.

Подібні уразливості можуть мати місце лише в онлайн інтерпретаторах різних мов програмування. Всього я виявив дві подібні уразливості в MustLive Perl Pascal Programs Interpreter та в CodeIDE. Але з розвитком Інтернет, коли онлайн інтерпретаторів з’явиться більше і вони почнуть більш широко використовуватися, можуть з’явитися нові Cross-Language Scripting уразливості.

Онлайн інтерпретатори приймають від користувача програмний код (наприклад, на мові Паскаль, як у випадку мого Perl Pas Interpreter) і оброблюючи його видають результат роботи програми в браузер. І якщо змусити онлайн інтерпретатор вивести html-теги, зокрема ті, що дозволяють виконати JS/VBS код, то можна провести XSS атаку на користувача інтерпретатору.

Однією з особливостей Міжмовних XSS є те, що вони можуть обходити WAF, як серверні та клієнтські. Тому що для проведення атаки використовується програмний код деякій мові програмування, а не різні html-теги, які використовуються для проведення звичайних XSS атак.

Приклади Cross-Language Scripting.

Спочатку я знайшов подібну уразливість в CodeIDE, а пізніше в своєму Perl Pas Interpreter. Але спочатку розповім про подібний випадок в Perl Pas Interpreter, а вже потім про CodeIDE.

Perl Pas Interpreter.

Перша версія інтерпретатору v.1.0 вийшла 10.03.2006. А 24.05.2006 вийшла версія v.1.2, в який я зробив онлайн версію інтерпретатора. І з тих пір я прикладав зусилля по недопущенню в ньому XSS уразливостей (вже в версії v.1.2 був захист від reflected XSS). Але 28.02.2007 я придумав, як за допомогою Cross-Language Scripting можна обійти захист веб додатку і провести XSS. Що я виправив в той же день в версії v.1.2.9.

XSS:

Наступний код на Pascal:
write(chr(60),'script',chr(62),'alert(document.cookie)',chr(60),'/script',chr(62));

Приводив до виведення в браузері та виконанні JavaScript коду:
<script>alert(document.cookie)</script>

Тобто використовуючи різноманітні конструкції мови Pascal, можна було вивести JS/VBS код в обхід існуючих захисних фільтрів і провести XSS атаку. Для протидії даному виду XSS уразливостей потрібно застосовувати спеціальні методи.

CodeIDE.

В онлайн інтерпретаторі CodeIDE я виявив Cross-Language Scripting (про яку приватно повідомив розробнику додатку), а також виявив на сайті інтерпретатора reflected XSS, про яку вже згадував.

Дана уразливість була в JavaScript інтерпретаторі. Хоча це не зовсім міжмовна атака, коли в JS інтерпретаторі виконується JS-код, але все ж таки дана атака була спрямована на онлайн інтерпретатор та обходила захисні фільтри додатку.

XSS:

В CodeIDE не можна було дістатися до document.cookie (в них був захист), але зате можна було виконувати інші JS-команди, що можуть використовуватися для атаки. Наприклад, для редирекції:
document.location="http://websecurity.com.ua"

Таким чином можна було виконувати JS-код з числа незаборонених конструкцій мови JavaScript, без використання будь-яких тегів, а безпосередньо в інтерпретаторі.

Цікаве чтиво на тему web security

22:46 27.05.2010

Продовжуючи традицію, пропоную вашій увазі цікаві секюріті статті. Щоб ви поповнювали свої знання з веб безпеки.

Добірка цікавого чтива на тему web security (статті з Вікіпедії):

Виконання коду в Adobe Flash Player

18:29 26.05.2010

Продовжуючи розпочату традицію, після попереднього відео про використання SQLPwnage для атак на MSSQL, пропоную новий відео секюріті мануал. Цього разу відео про виконання коду в Adobe Flash Player. Рекомендую подивитися всім хто цікавиться цією темою.

Adobe Flash Player Integer Overflow Remote Code Execution

В даному відео ролику демонструється віддалене виконання коду в флеш плеєрі. Для атаки використовується цілочисленне переповнення в Adobe Flash Player та AIR, про що я писав раніше.

Для проведення атаки необхідно заманити жертву на веб сторінку зі спеціально створеною флешкою. Рекомендую подивитися дане відео для розуміння векторів атак на Flash Player, зокрема на флеш плагін в браузерах.

Методи обходу Web Application Firewall

19:02 22.05.2010

В своїй презентації Методы обхода Web Application Firewall, Дмитро Євтєєв розповів про методи обходу Web Application Firewall.

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