Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo

1

2015
КОЛЕДА ОЛЕГ
EPAM SYSTEMS
Этичный хакинг или
пентестинг в действии

2

2
План доклада
ВВОДНАЯ ИНФОРМАЦИЯ1
СКАНЕРЫ ВЕБ-УЯЗВИМОСТЕЙ2
ПОИСК/ЭКСПЛУАТАЦИЯ SQL-INJECTION3
ПОИСК/ЭКСПЛУАТАЦИЯ XSS4
«ЛАБОРАТОРИЯ» ДЛЯ ПЕНТЕСТИНГА5
ВЫВОДЫ6

3

3
Дисклеймер
Вся информация предоставленная в докладе является ознакомительной. Автор
доклада не несет ответственности за ее использование в противозаконных целях.
Подобные действия могут влечь за собой уголовное преследование.
Использование инструментов для пентестинга может повлиять на работу веб-
приложения (высокая нагрузка, изменение и удаление данных и т.д.).
Все работы по проведению аудита безопасности должны проводиться на закрытых
окружениях и с ведома и разрешения владельцев веб-приложений.
Кратко об этичном хакинге (White hat hacking)
• Закон
• Благородные цели
• 0-day уязвимости – это не этично
Доклад построен только на собственном опыте, мнение автора может кардинально
отличаться от вашего 

4

4
Приложение для опытов

5

5
Приложение для опытов

6

6
Сканеры веб-уязвимостей
• Комплексная проверка веб-приложения на наличие уязвимостей разного рода
• Глубокий аудит безопасности веб-приложения (создание отчетов, описание
уязвимостей, советы по устранению и т.д.)
• Вводим адрес тестируемого приложения
• Используем дополнительные настройки (прокси, количество потоков, глубина
проверок, исключаемые части приложения и т.д.) - опционально
• Запускаем проверку и ждем…
• Анализируем результаты тестирования и принимаем дальнейшие меры
ДЛЯ ЧЕГО:
ИСПОЛЬЗОВАНИЕ

7

7
1. Acunetix Web Vulnerability Scanner http://www.acunetix.com/
2. Vega Vulnerability Scanner https://subgraph.com/vega/
3. OWASP ZAP
https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Proj
ect
4. IronWASP http://ironwasp.org/
5. Nikto https://cirt.net/Nikto2
6. И многие другие…
Сканеры веб-уязвимостей

8

8
Сканеры веб-уязвимостей

9

9
Сканеры веб-уязвимостей

10

10
Сканеры веб-уязвимостей

11

11
Сканеры веб-уязвимостей

12

12
1. Аутентификация/Авторизация
2. Количество потоков
3. Проверки
4. Глубина сканирования
5. Исключаемые части приложения
6. Прокси
7. Настройки клиента (header, cookie etc.)
8. …
Сканеры веб-уязвимостей

13

13
Сканеры веб-уязвимостей

14

14
Сканеры веб-уязвимостей
• http://www.hack.test/cases/productsCategory.php?category=1
• Уязвимым является параметр category
• http://www.hack.test/instructions.php
• Уязвимыми параметрами являются post данные: author и comment
SQL Injection:
XSS:

15

15
Эксплуатация SQL-Injection (SqlMap)
• Поиск sql-уязвимостей веб-приложения
• Эксплуатация sql-уязвимостей веб-приложения
• Устанавливаем «правила игры» (глубина проверок, количество потоков и
т.д.) - опционально
• Запускаем проверку потенциально-уязвимого параметра
• В случае обнаружения уязвимости приступаем к эксплуатации (получаем
данные о БД, извлекаем таблицы, столбцы и строки, получаем
информацию о пользователях и привилегиях, загружаем os-shell и т.д.)
ДЛЯ ЧЕГО:
ЭТАПЫ РАБОТЫ:
http://sqlmap.org/

16

16
1. python sqlmap.py
2. -u "http://www.site.com/page.php?id=51"
3. -u http://www.site.com/login.php --data=“user=name&password=pass”
4. --dbs
5. --tables –D DBNAME
6. --columns –T TABLENAME –D DBNAME
7. --dump –T TABLENAME –D DBNAME (--dump-all)
8. --current-user --current-db --users–privileges
9. --exclude-sysdbs
10. --os-shell
Эксплуатация SQL-Injection (SqlMap)

17

17
Эксплуатация SQL-Injection (SqlMap)

18

18
Эксплуатация SQL-Injection (SqlMap)
• Получили доступ к БД
• Получили данные из таблиц (логины, пароли и т.д.)
• Узнали привилегии текущего пользователя. В зависимости от
привилегий мы получаем контроль к БД (запись, удаление,
изменение)
• Если достаточно прав на запись файлов, то мы смогли залить os-
shell для контроля над операционной системой
ИТОГИ:

19

19
Поиск/Эксплуатация XSS (OWASP Xenotix)
• Поиск xss уязвимостей веб приложения
• Эксплуатация xss уязвимостей веб приложения
• Конфигурируем сервер (Ip-адрес и порт)
• Fuzzing – вводим урл, обозначая тестируемые параметры, как [X], запускаем
проверку, получаем результаты
• Эксплуатация – внедряем хук на страницу, пользуемся возможностями хука
(забираем информацию о «жертве», забираем куки, загружаем файлы, используем
социальную-инженерию и т.д.)
ДЛЯ ЧЕГО:
ЭТАПЫ РАБОТЫ:
https://www.owasp.org/index.php/OWASP_Xenotix_XSS_Exploit_Framework

20

20
Поиск/Эксплуатация XSS (OWASP Xenotix)

21

21
Поиск/Эксплуатация XSS (OWASP Xenotix)
• Проверили все возможные варианты XSS (4808 payloads) и
получили результаты об уязвимых местах
• Получили куки клиента
• Получили возможность использовать фишинг
• Keylogger, местоположение и многое другое
ИТОГИ:

22

22
Поиск/Эксплуатация XSS (OWASP Xenotix)
http://beefproject.com/

23

23
“Лаборатория” для пентестинга (Pentestbox)
• Для удобства пользования
• Все в одном месте (утилиты, интерпретаторы, библиотеки)
• Скачиваем https://pentestbox.com/
• Распаковываем на диск C (C:/PentestBox)
• Запускаем и пользуемся
ДЛЯ ЧЕГО:
Этапы работы:

24

24
“Лаборатория” для пентестинга (Pentestbox)

25

25
“Лаборатория” для пентестинга (Pentestbox)
Web Vulnerability Scanners1
Stress Testing2
Information Gathering3
Exploitation Tools4
Password Attacks5
Android Security6
И другие7

26

26
Выводы и краткий план действий
• Проверяем потенциально уязвимое место на Sql инъекции
• Исследуем и приобретаем понимание того, насколько данная
уязвимость критична
Углубляемся
в проверку
SQL-inject
2
1
• Получаем данные о потенциальных уязвимостях
• Приобретаем понимание того, насколько уязвимо наше веб-
приложение
• Получаем красивый отчет, описания и советы по исправлениям
Проверяем
сканером
уязвимостей
3
• Проверяем потенциально уязвимое место на XSS
• Исследуем и приобретаем понимание того, насколько данная
уязвимость критична
Углубляемся
в проверку
XSS

27

27
Вопросы?

More Related Content

Этичный хакинг или пентестинг в действии

  • 1. 2015 КОЛЕДА ОЛЕГ EPAM SYSTEMS Этичный хакинг или пентестинг в действии
  • 2. 2 План доклада ВВОДНАЯ ИНФОРМАЦИЯ1 СКАНЕРЫ ВЕБ-УЯЗВИМОСТЕЙ2 ПОИСК/ЭКСПЛУАТАЦИЯ SQL-INJECTION3 ПОИСК/ЭКСПЛУАТАЦИЯ XSS4 «ЛАБОРАТОРИЯ» ДЛЯ ПЕНТЕСТИНГА5 ВЫВОДЫ6
  • 3. 3 Дисклеймер Вся информация предоставленная в докладе является ознакомительной. Автор доклада не несет ответственности за ее использование в противозаконных целях. Подобные действия могут влечь за собой уголовное преследование. Использование инструментов для пентестинга может повлиять на работу веб- приложения (высокая нагрузка, изменение и удаление данных и т.д.). Все работы по проведению аудита безопасности должны проводиться на закрытых окружениях и с ведома и разрешения владельцев веб-приложений. Кратко об этичном хакинге (White hat hacking) • Закон • Благородные цели • 0-day уязвимости – это не этично Доклад построен только на собственном опыте, мнение автора может кардинально отличаться от вашего 
  • 6. 6 Сканеры веб-уязвимостей • Комплексная проверка веб-приложения на наличие уязвимостей разного рода • Глубокий аудит безопасности веб-приложения (создание отчетов, описание уязвимостей, советы по устранению и т.д.) • Вводим адрес тестируемого приложения • Используем дополнительные настройки (прокси, количество потоков, глубина проверок, исключаемые части приложения и т.д.) - опционально • Запускаем проверку и ждем… • Анализируем результаты тестирования и принимаем дальнейшие меры ДЛЯ ЧЕГО: ИСПОЛЬЗОВАНИЕ
  • 7. 7 1. Acunetix Web Vulnerability Scanner http://www.acunetix.com/ 2. Vega Vulnerability Scanner https://subgraph.com/vega/ 3. OWASP ZAP https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Proj ect 4. IronWASP http://ironwasp.org/ 5. Nikto https://cirt.net/Nikto2 6. И многие другие… Сканеры веб-уязвимостей
  • 12. 12 1. Аутентификация/Авторизация 2. Количество потоков 3. Проверки 4. Глубина сканирования 5. Исключаемые части приложения 6. Прокси 7. Настройки клиента (header, cookie etc.) 8. … Сканеры веб-уязвимостей
  • 14. 14 Сканеры веб-уязвимостей • http://www.hack.test/cases/productsCategory.php?category=1 • Уязвимым является параметр category • http://www.hack.test/instructions.php • Уязвимыми параметрами являются post данные: author и comment SQL Injection: XSS:
  • 15. 15 Эксплуатация SQL-Injection (SqlMap) • Поиск sql-уязвимостей веб-приложения • Эксплуатация sql-уязвимостей веб-приложения • Устанавливаем «правила игры» (глубина проверок, количество потоков и т.д.) - опционально • Запускаем проверку потенциально-уязвимого параметра • В случае обнаружения уязвимости приступаем к эксплуатации (получаем данные о БД, извлекаем таблицы, столбцы и строки, получаем информацию о пользователях и привилегиях, загружаем os-shell и т.д.) ДЛЯ ЧЕГО: ЭТАПЫ РАБОТЫ: http://sqlmap.org/
  • 16. 16 1. python sqlmap.py 2. -u "http://www.site.com/page.php?id=51" 3. -u http://www.site.com/login.php --data=“user=name&password=pass” 4. --dbs 5. --tables –D DBNAME 6. --columns –T TABLENAME –D DBNAME 7. --dump –T TABLENAME –D DBNAME (--dump-all) 8. --current-user --current-db --users–privileges 9. --exclude-sysdbs 10. --os-shell Эксплуатация SQL-Injection (SqlMap)
  • 18. 18 Эксплуатация SQL-Injection (SqlMap) • Получили доступ к БД • Получили данные из таблиц (логины, пароли и т.д.) • Узнали привилегии текущего пользователя. В зависимости от привилегий мы получаем контроль к БД (запись, удаление, изменение) • Если достаточно прав на запись файлов, то мы смогли залить os- shell для контроля над операционной системой ИТОГИ:
  • 19. 19 Поиск/Эксплуатация XSS (OWASP Xenotix) • Поиск xss уязвимостей веб приложения • Эксплуатация xss уязвимостей веб приложения • Конфигурируем сервер (Ip-адрес и порт) • Fuzzing – вводим урл, обозначая тестируемые параметры, как [X], запускаем проверку, получаем результаты • Эксплуатация – внедряем хук на страницу, пользуемся возможностями хука (забираем информацию о «жертве», забираем куки, загружаем файлы, используем социальную-инженерию и т.д.) ДЛЯ ЧЕГО: ЭТАПЫ РАБОТЫ: https://www.owasp.org/index.php/OWASP_Xenotix_XSS_Exploit_Framework
  • 21. 21 Поиск/Эксплуатация XSS (OWASP Xenotix) • Проверили все возможные варианты XSS (4808 payloads) и получили результаты об уязвимых местах • Получили куки клиента • Получили возможность использовать фишинг • Keylogger, местоположение и многое другое ИТОГИ:
  • 22. 22 Поиск/Эксплуатация XSS (OWASP Xenotix) http://beefproject.com/
  • 23. 23 “Лаборатория” для пентестинга (Pentestbox) • Для удобства пользования • Все в одном месте (утилиты, интерпретаторы, библиотеки) • Скачиваем https://pentestbox.com/ • Распаковываем на диск C (C:/PentestBox) • Запускаем и пользуемся ДЛЯ ЧЕГО: Этапы работы:
  • 25. 25 “Лаборатория” для пентестинга (Pentestbox) Web Vulnerability Scanners1 Stress Testing2 Information Gathering3 Exploitation Tools4 Password Attacks5 Android Security6 И другие7
  • 26. 26 Выводы и краткий план действий • Проверяем потенциально уязвимое место на Sql инъекции • Исследуем и приобретаем понимание того, насколько данная уязвимость критична Углубляемся в проверку SQL-inject 2 1 • Получаем данные о потенциальных уязвимостях • Приобретаем понимание того, насколько уязвимо наше веб- приложение • Получаем красивый отчет, описания и советы по исправлениям Проверяем сканером уязвимостей 3 • Проверяем потенциально уязвимое место на XSS • Исследуем и приобретаем понимание того, насколько данная уязвимость критична Углубляемся в проверку XSS