SlideShare a Scribd company logo
1 of 10
Методические отличия при анализе кода
внутренних и внешних приложений
CISO Forum 2013
Петухов Андрей
Thursday, July 18,
• Основополагающий принцип при построении
системы защиты
• Подходы к реализации:
➡ наименьшие привилегии и разграничение доступа
➡ резервирование и архивное копирование
➡ реализация системы мониторинга и реагирования
• Подходы реализуются на различных уровнях ИС
➡ сетевой, системный (узловой), прикладной, физический и т.п.
Принцип ограниченности ущерба
Thursday, July 18,
• Для управления угрозами, исходящими от обычных
пользователей отлично годятся все три подхода
• Как насчет пользователей с высоким уровнем
технического допуска?
➡ “How to Grant Administrator Authority without Losing Control over System?” (с)
➡ “How to Grant Developer Authority without Losing Trust into System?” (с)
• Начнем с администраторов; в целом, все известно:
➡ Least privilege & monitoring [& ITSM]
• Продолжим про разработчиков
➡ Secure SDLC способно побороться с преднамеренным и непреднамеренным
внесением недостатков
➡ А если SDLC нет и не предвидится?
“For whom how” (c)
Thursday, July 18,
• SDLC нет и не предвидится
➡ дорого и/или долго и/или нецелесообразно
➡ вся основная разработка давно завершилась
➡ почти вся разработка - это расширение существующих функций в уже внедренных
приложениях, добавление новых и исправление ошибок
➡ принимается приложение, разработанное на стороне, при заказе которого не
предъявлялись требования к безопасности
• Как методически решать задачу организации
мониторинга за действиями разработчиков?
• По идее, комплекс мониторинга должен включать:
➡ анализ исходного состояния приложения
➡ фиксирование и анализ изменений
➡ мониторинг взаимодействия пользователей с приложением
➡ протоколирование работы приложения
Проблематика
Thursday, July 18,
• Есть приложения, основанные на веб-технологиях,
которые почти не отличаются от открытых в WWW
• Есть и другие,“особенные”:
➡ толстые клиенты вместо веб-интерфейса, возможно свой протокол обмена данными
➡ используются DSL (LotusScript) и прочие нетипичные сейчас языки (Cobol)
➡ могут быть расширениями огромной платформы (1С, SAP, Lotus и т.п.)
• Особенности
➡ высокая критичность
➡ большое количество связей в другими системами
Специфика внутренних приложений
Thursday, July 18,
• Высокая критичность => сканирование запрещено
• Много связей с другими системами => развернуть в лаборатории для
динамического анализа нереально
• Что остается из методов?
➡ ручной black-box анализ
➡ статический анализ (ручной или автоматический)
• Толстые клиенты => XSS нерелевантно
• DSL-языки => SQLi и прочие “классические” атаки могут быть
неосуществимы
• Что остается из релевантных недостатков?
➡ application specific недостатки: уязвимости авторизации, уязвимости логики
➡ бекдоры, закладки, логические бомбы
➡ некорректная конфигурация платформы, сервера и приложения
Выводы из свойств
Thursday, July 18,
• Доступ к приложению: onsite vsVPN
➡ VPN может быть запрещен политиками; но onsite будет дороже
• Какие уязвимости можно найти
➡ если внутренне приложение - веб-приложение: все типичные уязвимости веб-
приложений, позволяющие проводить Injection-атаки (XSS, SQLi, и т.п.)
➡ если внутреннее приложение “особенное”: некоторые классы уязвимостей
авторизации и логики, уязвимости конфигрурирования
➡ важно: для полноценного black-box анализа потребуется доступ от имени
пользователей различных ролей, в т.ч. привилегированных (!), что не всегда
возможно (см. политики организации)
Ручной black-box анализ
Thursday, July 18,
• Доступ к коду: onsite vs передача
➡ передача может быть запрещена политиками; но onsite будет дороже
• Автоматический анализ способен найти только типичные недостатки
(SQLi/XSS и т.п.)
• Для DSL и других нераспространненых языков не всегда найдется
анализатор
• App specific недостатки можно найти с приемлемой полнотой только
вручную
• Для “особенных” приложений самыми актуальными являются
следующие классы недостатков:
➡ уязвимости авторизации
➡ некорректное использование API платформы
➡ контуры для удаленной отладки и мониторинга
Статический анализ
Thursday, July 18,
• Внутренние веб-приложения приемлемо анализировать методом черного
ящика на начальном этапе (см. быстро и дешево найти “тупые”
уязвимости)
➡ этот подход не так хорошо работает для “особенных” приложений (DSL/толстые
клиенты)
• Недостатки некоторых классов можно найти только статически и только
вручную
➡ это решит задачу анализа исходного состояния, как построить систему мониторинга
(см. еженедельные обновления в коде)?
• Статический анализ по сигнатурам, написанным в результате ручного
анализа, сможет обеспечить мониторинг изменений в коде
• Offtopic: Injection-атаки во внутренней сети очень шумные => мониторинг!
Выводы
Thursday, July 18,
• Контакты
➡ Twitter: @p3tand
➡ Mob: +7 916 360-52-49
➡ Email: petand@seclab.cs.msu.su
➡ Blog: http://andrepetukhov.wordpress.com/
Ответы на вопросы
Thursday, July 18,

More Related Content

Viewers also liked

Businessday okt 2016 - Awingu
Businessday okt 2016 - AwinguBusinessday okt 2016 - Awingu
Businessday okt 2016 - AwinguMarketing Team
 
Ростелеком. Тимур Ибрагимов. "Защита от DDoS атак. Взгляд со стороны оператор...
Ростелеком. Тимур Ибрагимов. "Защита от DDoS атак. Взгляд со стороны оператор...Ростелеком. Тимур Ибрагимов. "Защита от DDoS атак. Взгляд со стороны оператор...
Ростелеком. Тимур Ибрагимов. "Защита от DDoS атак. Взгляд со стороны оператор...Expolink
 
Businessday 18 okt - Teamleader
Businessday 18 okt - Teamleader Businessday 18 okt - Teamleader
Businessday 18 okt - Teamleader Marketing Team
 
Evolutionary Graphics - Class 03 2014
Evolutionary Graphics - Class 03 2014Evolutionary Graphics - Class 03 2014
Evolutionary Graphics - Class 03 2014Bryan Chung
 
MVA Presentation 5
MVA Presentation 5MVA Presentation 5
MVA Presentation 5Bryan Chung
 
Banana Trends. South Korea tourism and Russian Tourists. Case Study
Banana Trends. South Korea tourism and Russian Tourists. Case StudyBanana Trends. South Korea tourism and Russian Tourists. Case Study
Banana Trends. South Korea tourism and Russian Tourists. Case StudyBanana Trends
 
SDN Security Talk - (ISC)2_3
SDN Security Talk - (ISC)2_3SDN Security Talk - (ISC)2_3
SDN Security Talk - (ISC)2_3Wen-Pai Lu
 
Yeni başlayanlar için Laravel
Yeni başlayanlar için Laravel Yeni başlayanlar için Laravel
Yeni başlayanlar için Laravel Cüneyd Tural
 
1. tipos de camas hospitalarias
1. tipos de camas hospitalarias1. tipos de camas hospitalarias
1. tipos de camas hospitalariascaedhmh
 
NEFROLOGIA CLINICA: Hipertension renovascular
NEFROLOGIA CLINICA: Hipertension renovascularNEFROLOGIA CLINICA: Hipertension renovascular
NEFROLOGIA CLINICA: Hipertension renovasculargustavo diaz nuñez
 
Breaking through the Clouds
Breaking through the CloudsBreaking through the Clouds
Breaking through the CloudsAndy Piper
 
Meetup Mesos : Mesos, Chronos and Marathon in CI/CD factory
Meetup Mesos : Mesos, Chronos and Marathon in CI/CD factoryMeetup Mesos : Mesos, Chronos and Marathon in CI/CD factory
Meetup Mesos : Mesos, Chronos and Marathon in CI/CD factoryLaurent Grangeau
 

Viewers also liked (14)

Businessday okt 2016 - Awingu
Businessday okt 2016 - AwinguBusinessday okt 2016 - Awingu
Businessday okt 2016 - Awingu
 
Ростелеком. Тимур Ибрагимов. "Защита от DDoS атак. Взгляд со стороны оператор...
Ростелеком. Тимур Ибрагимов. "Защита от DDoS атак. Взгляд со стороны оператор...Ростелеком. Тимур Ибрагимов. "Защита от DDoS атак. Взгляд со стороны оператор...
Ростелеком. Тимур Ибрагимов. "Защита от DDoS атак. Взгляд со стороны оператор...
 
Businessday 18 okt - Teamleader
Businessday 18 okt - Teamleader Businessday 18 okt - Teamleader
Businessday 18 okt - Teamleader
 
Evolutionary Graphics - Class 03 2014
Evolutionary Graphics - Class 03 2014Evolutionary Graphics - Class 03 2014
Evolutionary Graphics - Class 03 2014
 
MVA Presentation 5
MVA Presentation 5MVA Presentation 5
MVA Presentation 5
 
Banana Trends. South Korea tourism and Russian Tourists. Case Study
Banana Trends. South Korea tourism and Russian Tourists. Case StudyBanana Trends. South Korea tourism and Russian Tourists. Case Study
Banana Trends. South Korea tourism and Russian Tourists. Case Study
 
SDN Security Talk - (ISC)2_3
SDN Security Talk - (ISC)2_3SDN Security Talk - (ISC)2_3
SDN Security Talk - (ISC)2_3
 
Yeni başlayanlar için Laravel
Yeni başlayanlar için Laravel Yeni başlayanlar için Laravel
Yeni başlayanlar için Laravel
 
Volodymyr Shtybel
Volodymyr ShtybelVolodymyr Shtybel
Volodymyr Shtybel
 
1. tipos de camas hospitalarias
1. tipos de camas hospitalarias1. tipos de camas hospitalarias
1. tipos de camas hospitalarias
 
NEFROLOGIA CLINICA: Hipertension renovascular
NEFROLOGIA CLINICA: Hipertension renovascularNEFROLOGIA CLINICA: Hipertension renovascular
NEFROLOGIA CLINICA: Hipertension renovascular
 
Breaking through the Clouds
Breaking through the CloudsBreaking through the Clouds
Breaking through the Clouds
 
Les places de marché
Les places de marchéLes places de marché
Les places de marché
 
Meetup Mesos : Mesos, Chronos and Marathon in CI/CD factory
Meetup Mesos : Mesos, Chronos and Marathon in CI/CD factoryMeetup Mesos : Mesos, Chronos and Marathon in CI/CD factory
Meetup Mesos : Mesos, Chronos and Marathon in CI/CD factory
 

More from Andrew Petukhov

Армия освобождения домохозяек: структура, состав вооружений, методы коммуникации
Армия освобождения домохозяек: структура, состав вооружений, методы коммуникацииАрмия освобождения домохозяек: структура, состав вооружений, методы коммуникации
Армия освобождения домохозяек: структура, состав вооружений, методы коммуникацииAndrew Petukhov
 
You Can Be Anything You Want to Be: Breaking Through Certified Crypto in Bank...
You Can Be Anything You Want to Be: Breaking Through Certified Crypto in Bank...You Can Be Anything You Want to Be: Breaking Through Certified Crypto in Bank...
You Can Be Anything You Want to Be: Breaking Through Certified Crypto in Bank...Andrew Petukhov
 
Обнаружение уязвимостей логики приложений методом статического анализа. Где п...
Обнаружение уязвимостей логики приложений методом статического анализа. Где п...Обнаружение уязвимостей логики приложений методом статического анализа. Где п...
Обнаружение уязвимостей логики приложений методом статического анализа. Где п...Andrew Petukhov
 
No locked doors, no windows barred: hacking OpenAM infrastructure
No locked doors, no windows barred: hacking OpenAM infrastructureNo locked doors, no windows barred: hacking OpenAM infrastructure
No locked doors, no windows barred: hacking OpenAM infrastructureAndrew Petukhov
 
Безопасность веб-приложений: starter edition
Безопасность веб-приложений: starter editionБезопасность веб-приложений: starter edition
Безопасность веб-приложений: starter editionAndrew Petukhov
 
Обеспечение безопасности расширений в корпоративных информационных системах
Обеспечение безопасности расширений в корпоративных информационных системахОбеспечение безопасности расширений в корпоративных информационных системах
Обеспечение безопасности расширений в корпоративных информационных системахAndrew Petukhov
 
Detecting Insufficient Access Control in Web Applications
Detecting Insufficient Access Control in Web ApplicationsDetecting Insufficient Access Control in Web Applications
Detecting Insufficient Access Control in Web ApplicationsAndrew Petukhov
 
Benchmark сканеров SQL injection
Benchmark сканеров SQL injectionBenchmark сканеров SQL injection
Benchmark сканеров SQL injectionAndrew Petukhov
 
Обнаружение уязвимостей в механизме авторизации веб-приложении
Обнаружение уязвимостей в механизме авторизации веб-приложенииОбнаружение уязвимостей в механизме авторизации веб-приложении
Обнаружение уязвимостей в механизме авторизации веб-приложенииAndrew Petukhov
 
Access Control Rules Tester
Access Control Rules TesterAccess Control Rules Tester
Access Control Rules TesterAndrew Petukhov
 
Detecting Security Vulnerabilities in Web Applications Using Dynamic Analysis...
Detecting Security Vulnerabilities in Web Applications Using Dynamic Analysis...Detecting Security Vulnerabilities in Web Applications Using Dynamic Analysis...
Detecting Security Vulnerabilities in Web Applications Using Dynamic Analysis...Andrew Petukhov
 

More from Andrew Petukhov (11)

Армия освобождения домохозяек: структура, состав вооружений, методы коммуникации
Армия освобождения домохозяек: структура, состав вооружений, методы коммуникацииАрмия освобождения домохозяек: структура, состав вооружений, методы коммуникации
Армия освобождения домохозяек: структура, состав вооружений, методы коммуникации
 
You Can Be Anything You Want to Be: Breaking Through Certified Crypto in Bank...
You Can Be Anything You Want to Be: Breaking Through Certified Crypto in Bank...You Can Be Anything You Want to Be: Breaking Through Certified Crypto in Bank...
You Can Be Anything You Want to Be: Breaking Through Certified Crypto in Bank...
 
Обнаружение уязвимостей логики приложений методом статического анализа. Где п...
Обнаружение уязвимостей логики приложений методом статического анализа. Где п...Обнаружение уязвимостей логики приложений методом статического анализа. Где п...
Обнаружение уязвимостей логики приложений методом статического анализа. Где п...
 
No locked doors, no windows barred: hacking OpenAM infrastructure
No locked doors, no windows barred: hacking OpenAM infrastructureNo locked doors, no windows barred: hacking OpenAM infrastructure
No locked doors, no windows barred: hacking OpenAM infrastructure
 
Безопасность веб-приложений: starter edition
Безопасность веб-приложений: starter editionБезопасность веб-приложений: starter edition
Безопасность веб-приложений: starter edition
 
Обеспечение безопасности расширений в корпоративных информационных системах
Обеспечение безопасности расширений в корпоративных информационных системахОбеспечение безопасности расширений в корпоративных информационных системах
Обеспечение безопасности расширений в корпоративных информационных системах
 
Detecting Insufficient Access Control in Web Applications
Detecting Insufficient Access Control in Web ApplicationsDetecting Insufficient Access Control in Web Applications
Detecting Insufficient Access Control in Web Applications
 
Benchmark сканеров SQL injection
Benchmark сканеров SQL injectionBenchmark сканеров SQL injection
Benchmark сканеров SQL injection
 
Обнаружение уязвимостей в механизме авторизации веб-приложении
Обнаружение уязвимостей в механизме авторизации веб-приложенииОбнаружение уязвимостей в механизме авторизации веб-приложении
Обнаружение уязвимостей в механизме авторизации веб-приложении
 
Access Control Rules Tester
Access Control Rules TesterAccess Control Rules Tester
Access Control Rules Tester
 
Detecting Security Vulnerabilities in Web Applications Using Dynamic Analysis...
Detecting Security Vulnerabilities in Web Applications Using Dynamic Analysis...Detecting Security Vulnerabilities in Web Applications Using Dynamic Analysis...
Detecting Security Vulnerabilities in Web Applications Using Dynamic Analysis...
 

Методические отличия при анализе кода внутренних и внешних приложений

  • 1. Методические отличия при анализе кода внутренних и внешних приложений CISO Forum 2013 Петухов Андрей Thursday, July 18,
  • 2. • Основополагающий принцип при построении системы защиты • Подходы к реализации: ➡ наименьшие привилегии и разграничение доступа ➡ резервирование и архивное копирование ➡ реализация системы мониторинга и реагирования • Подходы реализуются на различных уровнях ИС ➡ сетевой, системный (узловой), прикладной, физический и т.п. Принцип ограниченности ущерба Thursday, July 18,
  • 3. • Для управления угрозами, исходящими от обычных пользователей отлично годятся все три подхода • Как насчет пользователей с высоким уровнем технического допуска? ➡ “How to Grant Administrator Authority without Losing Control over System?” (с) ➡ “How to Grant Developer Authority without Losing Trust into System?” (с) • Начнем с администраторов; в целом, все известно: ➡ Least privilege & monitoring [& ITSM] • Продолжим про разработчиков ➡ Secure SDLC способно побороться с преднамеренным и непреднамеренным внесением недостатков ➡ А если SDLC нет и не предвидится? “For whom how” (c) Thursday, July 18,
  • 4. • SDLC нет и не предвидится ➡ дорого и/или долго и/или нецелесообразно ➡ вся основная разработка давно завершилась ➡ почти вся разработка - это расширение существующих функций в уже внедренных приложениях, добавление новых и исправление ошибок ➡ принимается приложение, разработанное на стороне, при заказе которого не предъявлялись требования к безопасности • Как методически решать задачу организации мониторинга за действиями разработчиков? • По идее, комплекс мониторинга должен включать: ➡ анализ исходного состояния приложения ➡ фиксирование и анализ изменений ➡ мониторинг взаимодействия пользователей с приложением ➡ протоколирование работы приложения Проблематика Thursday, July 18,
  • 5. • Есть приложения, основанные на веб-технологиях, которые почти не отличаются от открытых в WWW • Есть и другие,“особенные”: ➡ толстые клиенты вместо веб-интерфейса, возможно свой протокол обмена данными ➡ используются DSL (LotusScript) и прочие нетипичные сейчас языки (Cobol) ➡ могут быть расширениями огромной платформы (1С, SAP, Lotus и т.п.) • Особенности ➡ высокая критичность ➡ большое количество связей в другими системами Специфика внутренних приложений Thursday, July 18,
  • 6. • Высокая критичность => сканирование запрещено • Много связей с другими системами => развернуть в лаборатории для динамического анализа нереально • Что остается из методов? ➡ ручной black-box анализ ➡ статический анализ (ручной или автоматический) • Толстые клиенты => XSS нерелевантно • DSL-языки => SQLi и прочие “классические” атаки могут быть неосуществимы • Что остается из релевантных недостатков? ➡ application specific недостатки: уязвимости авторизации, уязвимости логики ➡ бекдоры, закладки, логические бомбы ➡ некорректная конфигурация платформы, сервера и приложения Выводы из свойств Thursday, July 18,
  • 7. • Доступ к приложению: onsite vsVPN ➡ VPN может быть запрещен политиками; но onsite будет дороже • Какие уязвимости можно найти ➡ если внутренне приложение - веб-приложение: все типичные уязвимости веб- приложений, позволяющие проводить Injection-атаки (XSS, SQLi, и т.п.) ➡ если внутреннее приложение “особенное”: некоторые классы уязвимостей авторизации и логики, уязвимости конфигрурирования ➡ важно: для полноценного black-box анализа потребуется доступ от имени пользователей различных ролей, в т.ч. привилегированных (!), что не всегда возможно (см. политики организации) Ручной black-box анализ Thursday, July 18,
  • 8. • Доступ к коду: onsite vs передача ➡ передача может быть запрещена политиками; но onsite будет дороже • Автоматический анализ способен найти только типичные недостатки (SQLi/XSS и т.п.) • Для DSL и других нераспространненых языков не всегда найдется анализатор • App specific недостатки можно найти с приемлемой полнотой только вручную • Для “особенных” приложений самыми актуальными являются следующие классы недостатков: ➡ уязвимости авторизации ➡ некорректное использование API платформы ➡ контуры для удаленной отладки и мониторинга Статический анализ Thursday, July 18,
  • 9. • Внутренние веб-приложения приемлемо анализировать методом черного ящика на начальном этапе (см. быстро и дешево найти “тупые” уязвимости) ➡ этот подход не так хорошо работает для “особенных” приложений (DSL/толстые клиенты) • Недостатки некоторых классов можно найти только статически и только вручную ➡ это решит задачу анализа исходного состояния, как построить систему мониторинга (см. еженедельные обновления в коде)? • Статический анализ по сигнатурам, написанным в результате ручного анализа, сможет обеспечить мониторинг изменений в коде • Offtopic: Injection-атаки во внутренней сети очень шумные => мониторинг! Выводы Thursday, July 18,
  • 10. • Контакты ➡ Twitter: @p3tand ➡ Mob: +7 916 360-52-49 ➡ Email: petand@seclab.cs.msu.su ➡ Blog: http://andrepetukhov.wordpress.com/ Ответы на вопросы Thursday, July 18,