Атаки на банковские системы.
Олег Купреев
Digital Security
© 2002—2013, Digital Security
Атаки на банковские системы
Атаки на ДБО
2
ДБО защищены?
© 2002—2013, Digital Security
Атаки на банковские системы
1) Мы имеем опыт проведения тестов на проникновение почти всех
систем ДБО, представленных на российском рынке.
2) В ходе работ были выявлены множественные уязвимости в каждой из
систем ДБО.
3) В результате всех работ были выявлены векторы атак, с помощью
которых можно украсть деньги у клиентов банков (иногда – у всех
клиентов!)
3
© 2002—2013, Digital Security
Атаки на банковские системы
ActiveX-компоненты – специальные надстройки, устанавливаемые в
браузер (ОС) для взаимодействия с ЭЦП и токенами у клиента банка.
клиент ДБО
хакер
ActiveX. Пример 1. Заражение клиента банковским трояном
4
ActiveX. Пример 1. Заражение клиента банковским трояном
© 2002—2013, Digital Security
Атаки на банковские системы
клиент ДБО
хакер
Вирус у клиента = полный контроль над клиентом = кража денег у клиента
вирус
5
© 2002—2013, Digital Security
клиент ДБО
хакер
Вирус у клиента = полный контроль над клиентом = кража денег у клиента
вирус
ActiveX. Пример 1. Заражение клиента банковским трояном
Атаки на банковские системы
6
© 2002—2013, Digital Security
клиент ДБО
хакер
вирус
Вирус у клиента = полный контроль над клиентом = кража денег у клиента
ActiveX. Пример 1. Заражение клиента банковским трояном
Атаки на банковские системы
7
ActiveX. Пример 2. Кража ЭЦП клиента через ActiveX
© 2002—2013, Digital Security
клиент ДБО
хакер
Все еще не используете токены? Тогда мы идем к вам!
ЭЦП
Атаки на банковские системы
8
© 2002—2013, Digital Security
клиент ДБО
хакер
ЭЦП
ActiveX. Пример 2. Кража ЭЦП клиента через ActiveX
Все еще не используете токены? Тогда мы идем к вам!
Атаки на банковские системы
9
© 2002—2013, Digital Security
клиент ДБО
хакерЭЦП
ActiveX. Пример 2. Кража ЭЦП клиента через ActiveX
Все еще не используете токены? Тогда мы идем к вам!
Атаки на банковские системы
10
«Заманиваем» клиентов
© 2002—2013, Digital Security
клиент
Любой сайт
хакер
Атаки на банковские системы
11
ДБО защищены?
© 2002—2013, Digital Security
В 100% компонентов ActiveX различных систем ДБО нами были
выявлены критичные уязвимости!
Почему?
1) Не поставлен процесс тестирования и анализа безопасности у
разработчиков систем ДБО
2) Уязвимости в ActiveX не так знакомы программистам, как уязвимости из
OWASP TOP 10
Атаки на банковские системы
12
Пример 3. Внутри банка. Насколько вы доверяете вашим операторам?
© 2002—2013, Digital Security
Оператор СУБД ДБО –
сердце всей системы
Оператор входит в систему по личному логину/паролю.
Есть ролевая модель (администраторы, операторы).
Атаки на банковские системы
13
© 2002—2013, Digital Security
Оператор СУБД ДБО –
сердце всей системы
Пример 3. Внутри банка. Насколько вы доверяете вашим операторам?
Оператор входит в систему по личному логину/паролю?
Есть ролевая модель (администраторы, операторы)?
Атаки на банковские системы
14
© 2002—2013, Digital Security
Оператор СУБД ДБО –
сердце всей системы
1) Оператор входит под привилегированной учетной записью СУБД.
2) Оператор ограничен на клиентской стороне возможностями в
интерфейсе АРМ.
3) Зашифрованный пароль хранится в текстовом файле.
Логин и пароль от dba
Пример 3. Внутри банка. Насколько вы доверяете вашим операторам?
Атаки на банковские системы
15
1) Оператор входит под привилегированной учетной записью СУБД.
2) Оператор ограничен на клиентской стороне возможностями в
интерфейсе АРМ.
3) Зашифрованный пароль хранится в текстовом файле.
© 2002—2011, Digital Security
Оператор СУБД ДБО –
сердце всей системы
Логин и пароль от dba
1) Общеизвестная специфика системы
2) Пароль от СУБД зашифрован
Пример 3. Внутри банка. Насколько вы доверяете вашим операторам?
Атаки на банковские системы
16
ДБО защищены?
© 2002—2013, Digital Security
Пароль от СУБД зашифрован – это защита?..
1) Зашифрованное – можно расшифровать.
2) Файл с паролем от привилегированной учетной записи СУБД ДБО
должен быть доступен для чтения оператору.
1) Общеизвестная специфика системы
2) Пароль от СУБД зашифрован
Атаки на банковские системы
17
ДБО защищены?
© 2002—2013, Digital Security
Насколько вы доверяете вашим операторам?
Оператор = > Администратор СУБД ДБО = > Возможность украсть деньги
у любого клиента банка
Это архитектурная проблема.
В ближайшее время не стоит ждать исправлений.
Атаки на банковские системы
18
© 2002—2013, Digital Security
Пример 4. Опасные XSS
В 95% систем ДБО были выявлены уязвимости, позволяющие
злоумышленнику внедрять свой код JavaScript (XSS).
Не слишком ли много для столь критичного продукта?
XSS позволяет полностью контролировать то, что отображается у
пользователя, и то, что отправляется на сервер.
Злоумышленник может эмулировать действия клиента.
Злоумышленник может обойти защиту с использованием токенов.
Атаки на банковские системы
19
© 2002—2013, Digital Security
клиент
ДБО
Пример 4. Опасные XSS
браузер
хакер
Атаки на банковские системы
20
© 2002—2013, Digital Security
клиент
ДБО
Пример 4. Опасные XSS
браузер
хакер XSS
Атаки на банковские системы
21
© 2002—2013, Digital Security
клиент
ДБО
Пример 4. Опасные XSS
браузер
хакер
XSS
Атаки на банковские системы
22
© 2002—2013, Digital Security
клиент
ДБО
Пример 4. Опасные XSS
браузер
хакер
XSS
Удаленное управление,
подмена отображаемых данных
Кража денег
Атаки на банковские системы
23
© 2002—2013, Digital Security
ДБО
Пример 4. Опасные XSS
браузеры
хакер
клиенты
XSS
Свяжем вместе две уязвимости:
1) Хранимая XSS
2) Некорректное разграничение доступа между клиентами
Атаки на банковские системы
24
© 2002—2013, Digital Security
ДБО
Пример 5. Опасные XSS
браузеры
хакер
клиенты
XSS
Свяжем вместе две уязвимости:
1) Хранимая XSS
2) Некорректное разграничение доступа между клиентами
Хранимая XSS + Некорректное разграничение доступа =
Заражение всех клиентов банка JavaScript-кодом
КРАЖА ДЕНЕГ У ВСЕХ/ЛЮБОГО КЛИЕНТА БАНКА
Атаки на банковские системы
25
Причины проблем
© 2002—2013, Digital Security
1) Мы имеем опыт проведения тестов на проникновение почти всех
систем ДБО, представленных на российском рынке.
2) В ходе работ были выявлены множественные уязвимости в каждой из
систем ДБО.
3) В результате всех работ были выявлены векторы атак, с помощью
которых можно украсть деньги у клиентов банков
Причина?
Отсутствие поставленного процесса тестирования и анализа
безопасности систем ДБО у разработчиков
Атаки на банковские системы
26
Причины проблем. Пример 1
© 2002—2013, Digital Security
 Отсутствие поставленного процесса тестирования и
анализа безопасности систем ДБО у разработчиков
Проведено тестирование в ДБО для Банка А.
Результаты попадают к разработчику. Разработчик выпускает патчи для
банка А.
С выходом новой версии ДБО от того же разработчика количество
аналогичных уязвимостей выросло в разы.
Атаки на банковские системы
27
Причины проблем. Пример 1
© 2002—2013, Digital Security
 Отсутствие поставленного процесса тестирования и
анализа безопасности систем ДБО у разработчиков
Защита?
a) Защита Cookie с помощью флага HttpOnly
b) Защита Cookie с помощью флага Secure
c) Защита от XSS с помощью заголовков Content-Security-Policy
d) Защита от clickjacking-атак с помощью заголовков X-FRAME-OPTIONS
e) Защита ActiveX-компонентов за счёт внедрения ASLR, DEP и т. д.
Эти методы затрудняют проведение атак и не влияют на функционал,
но не используются в большинстве систем ДБО.
Интересно, почему?
Атаки на банковские системы
28
Причины проблем. Пример 2. Надежда на других?
© 2002—2013, Digital Security
 Отсутствие универсальных обновлений и не поставленный
процесс распространения обновлений среди банков
Система ДБО разработчика В установлена в банках А и Б.
После аудита безопасности ДБО банка А разработчик выпустил
обновления для закрытия выявленных уязвимостей.
Через год, при проведении аудита ДБО банка Б, были выявлены те же
уязвимости, что и в банке А.
При этом у банка Б стояла последняя версия ДБО.
Разработчик выпустил специальный патч для банка А, хотя это была
общесистемная проблема.
И это распространённое поведение разработчиков.
Атаки на банковские системы
29
Что-то меняется?
© 2002—2013, Digital Security
4 года аудитов защищённости систем ДБО
Аудиты ДБО различных версий и внедрений от разработчиков
Ежегодно участники множества конференций с темами по проблемам
ДБО
Тенденции?
Средней уровень системы ДБО, количество уязвимостей, находимых в
ДБО, и их типы остаются на прежнем уровне
Интерес банков сильно повысился
Атаки на банковские системы
30
Ещё больше проблем для банков…
© 2002—2013, Digital Security
Атаки на банковские системы
Уязвимости
ДБО
Уязвимости
дополнений
к ДБО
Уязвимости
внедрения
ДБО
31
Внедрение – это непросто
© 2002—2013, Digital Security
Пример 1:
У нескольких протестированных банков был разрешён доступ к
административной панели из сети Интернет, причём без пароля.
Полная компрометация системы ДБО и кража денег у любого из клиентов
ДБО (или у всех).
Пример 2:
У нескольких протестированных банков отсутствовала или была
некорректно внедрена защита от CSRF-атак.
Злоумышленник имел возможность выполнять действия в ДБО от имени
клиента. Это в совокупности с другими уязвимостями приводило к краже
денег клиентов.
Атаки на банковские системы
32
Защита?
© 2002—2013, Digital Security
•Web Application Firewall (WAF)
•Системы мониторинга и сбора логов
•Системы проверки целостности
•IPS/IDS
•Антифрод-системы
•И т.д.
В большинстве банков отсутствуют или некорректно внедрены!
Атаки на банковские системы
33
Защита?
© 2002—2013, Digital Security
Web Application Firewall (WAF) – один из основных методов защиты ДБО,
даже от 0-day уязвимостей. Имеются бесплатные версии и при этом очень
качественные.
В большинстве банков отсутствует, либо некорректно внедрён, либо
некорректно настроен.
Атаки на банковские системы
хакер WAF ДБОRUS SSL
RUS SSL
34
Выводы
© 2002—2013, Digital Security
Банк может надеяться только на себя. У разработчика свои
интересы
Создание защищённой и безопасной системы ДБО – это процесс
Создание защищённой и безопасной системы ДБО – это
комплексный подход
Атаки на банковские системы
35
© 2002—2013, Digital Security 36
Атаки на банковские системы
Мобильный банкинг
© 2002—2014, Digital Security
Исследования
Атаки на банковские системы
© 2002—2014, Digital Security
Виды мобильных приложений
По месту расположения приложения:
• SIM-приложения;
• Веб-приложения;
• Мобильные приложения.
По типу
используемой технологии
взаимодействия с сервером:
• Сетевые приложения;
• SMS-приложения;
• USSD-приложения;
• IVR-приложения.
Атаки на банковские системы
38
© 2002—2014, Digital Security
Мобильное банковское приложение
Атаки на банковские системы
Приложение, разработанное для определенной мобильной ОС с
использованием специализированного API, устанавливаемое в
смартфон для взаимодействия со своим банковским сервисом
СерверКлиентское устройство
Соединение
ОС
© 2002—2014, Digital Security
Модели злоумышленника
1. Злоумышленник с физическим
доступом к устройству.
2. Злоумышленник, не имеющий
доступ к устройству,
находящийся рядом с жертвой
3. Злоумышленник, установивший
вредоносное ПО, на устройство
жертвы.
Атаки на банковские системы
© 2002—2014, Digital Security
Проблема избыточности приложений
• Много функционала, не связанного напрямую с работой со
счетом
 Увеличивается область атаки
 Решение:
минимизировать приложение
…
…
Атаки на банковские системы
© 2002—2014, Digital Security
Организационные проблемы
• Проблемы в процессе разработки между заказчиком и
исполнителем
 Отсутствие или слабые требования по ИБ в ТЗ
 Отсутствие хорошей тестовой среды
 Решение:
Рекомендации ЦБ РФ, SDL
Атаки на банковские системы
© 2002—2014, Digital Security
Проблема хранения данных
• Мобильные устройства часто теряют и выпускают из виду
 Злоумышленник при получении физического доступа к
устройству может скачать критичные файлы
 Решение: не хранить критичную информацию на устройстве,
использовать сильную криптографию
Атаки на банковские системы
© 2002—2014, Digital Security
Проблема работы в не доверенной среде
• Android-устройство с root-доступом
• iOS-устройство с установленным jailbreak
 Встроенные механизмы безопасности ОС частично или
полностью отключены
 Увеличивается вероятность заражения устройства
вредоносным кодом
 Решение: предупреждать пользователя и перекладывать
ответственность на него
Атаки на банковские системы
© 2002—2014, Digital Security
Проблема многофакторной аутентификации
• В классической системе ДБО второй фактор часто приходит в
виде SMS на телефон
 В случае мобильного банкинга при этом подходе оба фактора
приходят на одно устройство
 Не поможет при наличии вируса на устройстве
 Решение: смягчающей мерой может быть шифрование
передаваемого SMS или использование дополнительного
внешнего устройства
Атаки на банковские системы
© 2002—2014, Digital Security
Проблема распространения приложений
 Проблема касается только ОС со множеством магазинов
приложений
 В одном магазине легитимное приложение
 В другом магазине вредоносное приложение
 Решение: мониторинг магазинов приложений на наличие
подделок
Атаки на банковские системы
© 2002—2014, Digital Security
Проблема защиты канала передачи данных
• Мобильные устройства очень часто присоединяются к
неизвестным сетям
• Устройства имеют очень много встроенных корневых
сертификатов
 При компрометации одного из встроенных сертификатов
компрометируются все данные, передаваемые по SSL
 Решение: необходимо шифрование канала передачи данных,
вшитый сертификат банка (SSL Pinning)
Атаки на банковские системы
© 2002—2013, Digital Security
клиент ДБО
хакер
Пример 4. Мобильный банк
HTTPS/SSL
Мобильный банк. Атака типа «человек посередине» (MitM)
Атаки на банковские системы
48
© 2002—2013, Digital Security
клиент ДБО
хакер
Мобильный банк. Атака типа «человек посередине» (MitM)
А что делать с SSL?
Атаки на банковские системы
49
© 2002—2013, Digital Security
клиент ДБО
хакер
Уязвимости, связанные с SSL (самоподписанные сертификаты, некорректная
проверка имён хостов и т. д.) – примерно в 10-15% приложений
Мобильный банк. Атака типа «человек посередине» (MitM)
Атаки на банковские системы
50
© 2002—2013, Digital Security
клиент ДБОхакер
Хакер имеет полный контроль над трафиком между ДБО и клиентом
Кража аутентификационных данных, кража денег клиента
Мобильный банк. Атака типа «человек посередине» (MiTM)
Атаки на банковские системы
51
© 2002—2013, Digital Security
Видео
Атаки на банковские системы
52
ВИДЕО ДЕМОНСТРАЦИЯ
© 2002—2014, Digital Security
Проблема защиты кода
• Программы пишутся с помощью языков программирования,
которые содержат много служебной информации:
o Имена классов
o Имена функций
o Имена переменных
 Упрощается анализ для потенциального злоумышленника
 Упрощается поиск уязвимостей в коде
 Решение: анализ кода на уязвимости, обфускация кода
Атаки на банковские системы
© 2002—2014, Digital Security
Рекомендации
 Использовать SDL (Security Development Lifecycle)
 Также касается систем ДБО
 Определить минимально необходимый функционал
 Грамотно использовать многофакторную аутентификацию
 Обрабатывать ситуацию при работе в недоверенной среде
 Использовать вшитый сертификат банка
 Защищать код приложения
Атаки на банковские системы
© 2002—2014, Digital Security
Предварительные данные из отчета
за 2013 год (NEW)
- Можно украсть деньги из ~10% приложений для мобильного
банкинга
- Множественные ошибки на стороне сервера
- Можно дотянуться даже до АБС
- Предварительно можно оставить без мобильного банкинга
клиентов около 10 банков
Атаки на банковские системы
© 2002—2013, Digital Security 56
Атаки на банковские системы
Как украсть миллиард?
© 2002—2013, Digital Security 57
Атаки на банковские системы
Интернет банкинг на стороне клиента.
© 2002—2013, Digital Security
Как это работает?
58
Атаки на банковские системы
ABS
WEB Server + App Server
DBMS
Operator
Operator’s environment
© 2002—2013, Digital Security
Как это работает?
59
Атаки на банковские системы
ABS
WEB Server + App Server
DBMS
Operator
Operator’s environment
© 2002—2013, Digital Security
Как это работает?
60
Атаки на банковские системы
ABS
WEB Server + App Server
DBMS
Operator
Operator’s environment
© 2002—2013, Digital Security
Как это работает?
61
Атаки на банковские системы
ABS
WEB Server + App Server
DBMS
Operator
Operator’s environment
© 2002—2013, Digital Security
Цель
62
Атаки на банковские системы
ABS
WEB Server + App Server
DBMS
Operator
Operator’s environment
© 2002—2013, Digital Security
Цель
63
Атаки на банковские системы
ABS
WEB Server + App Server
DBMS
Operator
Operator’s environment
© 2002—2013, Digital Security
Цель
64
Атаки на банковские системы
ABS
WEB Server + App Server
DBMS
Operator
Operator’s environment
© 2002—2013, Digital Security 65
Атаки на банковские системы
Рабочее место оператора
Оператор DBMS
oper_login
oper_pass
dbo_admin
Аутенификация
© 2002—2013, Digital Security 66
Атаки на банковские системы
• dbo_admin единственный аккаунт в DBMS
• dbo_admin имеет полный доступ
• каждый оператор подключен к DBMS
напрямую
• аутентификацию пользователя проверяет
прилоежени
Dbo_admin
© 2002—2013, Digital Security 67
Атаки на банковские системы
dbo_admin пароль зашифрован….
Пароль
… и хранится в .cfg файле рядом с
приложением
© 2002—2013, Digital Security 68
Атаки на банковские системы
Цитата
“Его не возможно расшифровать!”
(c) Тех. поддержка BSS
© 2002—2013, Digital Security 69
Атаки на банковские системы
На практике…
RSA modulus
RSA private exp
Unusual base64 alphabet
© 2002—2013, Digital Security 70
Атаки на банковские системы
Дешифровщик
Well… looks like base64?
© 2002—2013, Digital Security 71
Атаки на банковские системы
А так же…
Аналогичная система хранения пароля
используется в других продуктах BSS с тем же
самым ключом RSA.
© 2002—2013, Digital Security
Malware
72
Атаки на банковские системы
ABS
WEB Server + App Server
DBMS
Operator
Operator’s environment
Get conf file
Decrypt dbo_admin pass
Wreak havoc
© 2002—2013, Digital Security 73
Атаки на банковские системы
Векторы для атаки
•Инсайдер
•Целевая атака
•Вирусное ПО
© 2002—2013, Digital Security 74
Атаки на банковские системы
Итого
Digital Security in Moscow: +7 (495) 223-07-86
Digital Security in Saint Petersburg: +7 (812) 703-15-47
Questions?
www.dsec.ru
www.erpscan.com
info@dsec.ru

Олег Купреев. Атаки на банковские системы: как добраться до АБС

  • 1.
    Атаки на банковскиесистемы. Олег Купреев Digital Security
  • 2.
    © 2002—2013, DigitalSecurity Атаки на банковские системы Атаки на ДБО 2
  • 3.
    ДБО защищены? © 2002—2013,Digital Security Атаки на банковские системы 1) Мы имеем опыт проведения тестов на проникновение почти всех систем ДБО, представленных на российском рынке. 2) В ходе работ были выявлены множественные уязвимости в каждой из систем ДБО. 3) В результате всех работ были выявлены векторы атак, с помощью которых можно украсть деньги у клиентов банков (иногда – у всех клиентов!) 3
  • 4.
    © 2002—2013, DigitalSecurity Атаки на банковские системы ActiveX-компоненты – специальные надстройки, устанавливаемые в браузер (ОС) для взаимодействия с ЭЦП и токенами у клиента банка. клиент ДБО хакер ActiveX. Пример 1. Заражение клиента банковским трояном 4
  • 5.
    ActiveX. Пример 1.Заражение клиента банковским трояном © 2002—2013, Digital Security Атаки на банковские системы клиент ДБО хакер Вирус у клиента = полный контроль над клиентом = кража денег у клиента вирус 5
  • 6.
    © 2002—2013, DigitalSecurity клиент ДБО хакер Вирус у клиента = полный контроль над клиентом = кража денег у клиента вирус ActiveX. Пример 1. Заражение клиента банковским трояном Атаки на банковские системы 6
  • 7.
    © 2002—2013, DigitalSecurity клиент ДБО хакер вирус Вирус у клиента = полный контроль над клиентом = кража денег у клиента ActiveX. Пример 1. Заражение клиента банковским трояном Атаки на банковские системы 7
  • 8.
    ActiveX. Пример 2.Кража ЭЦП клиента через ActiveX © 2002—2013, Digital Security клиент ДБО хакер Все еще не используете токены? Тогда мы идем к вам! ЭЦП Атаки на банковские системы 8
  • 9.
    © 2002—2013, DigitalSecurity клиент ДБО хакер ЭЦП ActiveX. Пример 2. Кража ЭЦП клиента через ActiveX Все еще не используете токены? Тогда мы идем к вам! Атаки на банковские системы 9
  • 10.
    © 2002—2013, DigitalSecurity клиент ДБО хакерЭЦП ActiveX. Пример 2. Кража ЭЦП клиента через ActiveX Все еще не используете токены? Тогда мы идем к вам! Атаки на банковские системы 10
  • 11.
    «Заманиваем» клиентов © 2002—2013,Digital Security клиент Любой сайт хакер Атаки на банковские системы 11
  • 12.
    ДБО защищены? © 2002—2013,Digital Security В 100% компонентов ActiveX различных систем ДБО нами были выявлены критичные уязвимости! Почему? 1) Не поставлен процесс тестирования и анализа безопасности у разработчиков систем ДБО 2) Уязвимости в ActiveX не так знакомы программистам, как уязвимости из OWASP TOP 10 Атаки на банковские системы 12
  • 13.
    Пример 3. Внутрибанка. Насколько вы доверяете вашим операторам? © 2002—2013, Digital Security Оператор СУБД ДБО – сердце всей системы Оператор входит в систему по личному логину/паролю. Есть ролевая модель (администраторы, операторы). Атаки на банковские системы 13
  • 14.
    © 2002—2013, DigitalSecurity Оператор СУБД ДБО – сердце всей системы Пример 3. Внутри банка. Насколько вы доверяете вашим операторам? Оператор входит в систему по личному логину/паролю? Есть ролевая модель (администраторы, операторы)? Атаки на банковские системы 14
  • 15.
    © 2002—2013, DigitalSecurity Оператор СУБД ДБО – сердце всей системы 1) Оператор входит под привилегированной учетной записью СУБД. 2) Оператор ограничен на клиентской стороне возможностями в интерфейсе АРМ. 3) Зашифрованный пароль хранится в текстовом файле. Логин и пароль от dba Пример 3. Внутри банка. Насколько вы доверяете вашим операторам? Атаки на банковские системы 15
  • 16.
    1) Оператор входитпод привилегированной учетной записью СУБД. 2) Оператор ограничен на клиентской стороне возможностями в интерфейсе АРМ. 3) Зашифрованный пароль хранится в текстовом файле. © 2002—2011, Digital Security Оператор СУБД ДБО – сердце всей системы Логин и пароль от dba 1) Общеизвестная специфика системы 2) Пароль от СУБД зашифрован Пример 3. Внутри банка. Насколько вы доверяете вашим операторам? Атаки на банковские системы 16
  • 17.
    ДБО защищены? © 2002—2013,Digital Security Пароль от СУБД зашифрован – это защита?.. 1) Зашифрованное – можно расшифровать. 2) Файл с паролем от привилегированной учетной записи СУБД ДБО должен быть доступен для чтения оператору. 1) Общеизвестная специфика системы 2) Пароль от СУБД зашифрован Атаки на банковские системы 17
  • 18.
    ДБО защищены? © 2002—2013,Digital Security Насколько вы доверяете вашим операторам? Оператор = > Администратор СУБД ДБО = > Возможность украсть деньги у любого клиента банка Это архитектурная проблема. В ближайшее время не стоит ждать исправлений. Атаки на банковские системы 18
  • 19.
    © 2002—2013, DigitalSecurity Пример 4. Опасные XSS В 95% систем ДБО были выявлены уязвимости, позволяющие злоумышленнику внедрять свой код JavaScript (XSS). Не слишком ли много для столь критичного продукта? XSS позволяет полностью контролировать то, что отображается у пользователя, и то, что отправляется на сервер. Злоумышленник может эмулировать действия клиента. Злоумышленник может обойти защиту с использованием токенов. Атаки на банковские системы 19
  • 20.
    © 2002—2013, DigitalSecurity клиент ДБО Пример 4. Опасные XSS браузер хакер Атаки на банковские системы 20
  • 21.
    © 2002—2013, DigitalSecurity клиент ДБО Пример 4. Опасные XSS браузер хакер XSS Атаки на банковские системы 21
  • 22.
    © 2002—2013, DigitalSecurity клиент ДБО Пример 4. Опасные XSS браузер хакер XSS Атаки на банковские системы 22
  • 23.
    © 2002—2013, DigitalSecurity клиент ДБО Пример 4. Опасные XSS браузер хакер XSS Удаленное управление, подмена отображаемых данных Кража денег Атаки на банковские системы 23
  • 24.
    © 2002—2013, DigitalSecurity ДБО Пример 4. Опасные XSS браузеры хакер клиенты XSS Свяжем вместе две уязвимости: 1) Хранимая XSS 2) Некорректное разграничение доступа между клиентами Атаки на банковские системы 24
  • 25.
    © 2002—2013, DigitalSecurity ДБО Пример 5. Опасные XSS браузеры хакер клиенты XSS Свяжем вместе две уязвимости: 1) Хранимая XSS 2) Некорректное разграничение доступа между клиентами Хранимая XSS + Некорректное разграничение доступа = Заражение всех клиентов банка JavaScript-кодом КРАЖА ДЕНЕГ У ВСЕХ/ЛЮБОГО КЛИЕНТА БАНКА Атаки на банковские системы 25
  • 26.
    Причины проблем © 2002—2013,Digital Security 1) Мы имеем опыт проведения тестов на проникновение почти всех систем ДБО, представленных на российском рынке. 2) В ходе работ были выявлены множественные уязвимости в каждой из систем ДБО. 3) В результате всех работ были выявлены векторы атак, с помощью которых можно украсть деньги у клиентов банков Причина? Отсутствие поставленного процесса тестирования и анализа безопасности систем ДБО у разработчиков Атаки на банковские системы 26
  • 27.
    Причины проблем. Пример1 © 2002—2013, Digital Security  Отсутствие поставленного процесса тестирования и анализа безопасности систем ДБО у разработчиков Проведено тестирование в ДБО для Банка А. Результаты попадают к разработчику. Разработчик выпускает патчи для банка А. С выходом новой версии ДБО от того же разработчика количество аналогичных уязвимостей выросло в разы. Атаки на банковские системы 27
  • 28.
    Причины проблем. Пример1 © 2002—2013, Digital Security  Отсутствие поставленного процесса тестирования и анализа безопасности систем ДБО у разработчиков Защита? a) Защита Cookie с помощью флага HttpOnly b) Защита Cookie с помощью флага Secure c) Защита от XSS с помощью заголовков Content-Security-Policy d) Защита от clickjacking-атак с помощью заголовков X-FRAME-OPTIONS e) Защита ActiveX-компонентов за счёт внедрения ASLR, DEP и т. д. Эти методы затрудняют проведение атак и не влияют на функционал, но не используются в большинстве систем ДБО. Интересно, почему? Атаки на банковские системы 28
  • 29.
    Причины проблем. Пример2. Надежда на других? © 2002—2013, Digital Security  Отсутствие универсальных обновлений и не поставленный процесс распространения обновлений среди банков Система ДБО разработчика В установлена в банках А и Б. После аудита безопасности ДБО банка А разработчик выпустил обновления для закрытия выявленных уязвимостей. Через год, при проведении аудита ДБО банка Б, были выявлены те же уязвимости, что и в банке А. При этом у банка Б стояла последняя версия ДБО. Разработчик выпустил специальный патч для банка А, хотя это была общесистемная проблема. И это распространённое поведение разработчиков. Атаки на банковские системы 29
  • 30.
    Что-то меняется? © 2002—2013,Digital Security 4 года аудитов защищённости систем ДБО Аудиты ДБО различных версий и внедрений от разработчиков Ежегодно участники множества конференций с темами по проблемам ДБО Тенденции? Средней уровень системы ДБО, количество уязвимостей, находимых в ДБО, и их типы остаются на прежнем уровне Интерес банков сильно повысился Атаки на банковские системы 30
  • 31.
    Ещё больше проблемдля банков… © 2002—2013, Digital Security Атаки на банковские системы Уязвимости ДБО Уязвимости дополнений к ДБО Уязвимости внедрения ДБО 31
  • 32.
    Внедрение – этонепросто © 2002—2013, Digital Security Пример 1: У нескольких протестированных банков был разрешён доступ к административной панели из сети Интернет, причём без пароля. Полная компрометация системы ДБО и кража денег у любого из клиентов ДБО (или у всех). Пример 2: У нескольких протестированных банков отсутствовала или была некорректно внедрена защита от CSRF-атак. Злоумышленник имел возможность выполнять действия в ДБО от имени клиента. Это в совокупности с другими уязвимостями приводило к краже денег клиентов. Атаки на банковские системы 32
  • 33.
    Защита? © 2002—2013, DigitalSecurity •Web Application Firewall (WAF) •Системы мониторинга и сбора логов •Системы проверки целостности •IPS/IDS •Антифрод-системы •И т.д. В большинстве банков отсутствуют или некорректно внедрены! Атаки на банковские системы 33
  • 34.
    Защита? © 2002—2013, DigitalSecurity Web Application Firewall (WAF) – один из основных методов защиты ДБО, даже от 0-day уязвимостей. Имеются бесплатные версии и при этом очень качественные. В большинстве банков отсутствует, либо некорректно внедрён, либо некорректно настроен. Атаки на банковские системы хакер WAF ДБОRUS SSL RUS SSL 34
  • 35.
    Выводы © 2002—2013, DigitalSecurity Банк может надеяться только на себя. У разработчика свои интересы Создание защищённой и безопасной системы ДБО – это процесс Создание защищённой и безопасной системы ДБО – это комплексный подход Атаки на банковские системы 35
  • 36.
    © 2002—2013, DigitalSecurity 36 Атаки на банковские системы Мобильный банкинг
  • 37.
    © 2002—2014, DigitalSecurity Исследования Атаки на банковские системы
  • 38.
    © 2002—2014, DigitalSecurity Виды мобильных приложений По месту расположения приложения: • SIM-приложения; • Веб-приложения; • Мобильные приложения. По типу используемой технологии взаимодействия с сервером: • Сетевые приложения; • SMS-приложения; • USSD-приложения; • IVR-приложения. Атаки на банковские системы 38
  • 39.
    © 2002—2014, DigitalSecurity Мобильное банковское приложение Атаки на банковские системы Приложение, разработанное для определенной мобильной ОС с использованием специализированного API, устанавливаемое в смартфон для взаимодействия со своим банковским сервисом СерверКлиентское устройство Соединение ОС
  • 40.
    © 2002—2014, DigitalSecurity Модели злоумышленника 1. Злоумышленник с физическим доступом к устройству. 2. Злоумышленник, не имеющий доступ к устройству, находящийся рядом с жертвой 3. Злоумышленник, установивший вредоносное ПО, на устройство жертвы. Атаки на банковские системы
  • 41.
    © 2002—2014, DigitalSecurity Проблема избыточности приложений • Много функционала, не связанного напрямую с работой со счетом  Увеличивается область атаки  Решение: минимизировать приложение … … Атаки на банковские системы
  • 42.
    © 2002—2014, DigitalSecurity Организационные проблемы • Проблемы в процессе разработки между заказчиком и исполнителем  Отсутствие или слабые требования по ИБ в ТЗ  Отсутствие хорошей тестовой среды  Решение: Рекомендации ЦБ РФ, SDL Атаки на банковские системы
  • 43.
    © 2002—2014, DigitalSecurity Проблема хранения данных • Мобильные устройства часто теряют и выпускают из виду  Злоумышленник при получении физического доступа к устройству может скачать критичные файлы  Решение: не хранить критичную информацию на устройстве, использовать сильную криптографию Атаки на банковские системы
  • 44.
    © 2002—2014, DigitalSecurity Проблема работы в не доверенной среде • Android-устройство с root-доступом • iOS-устройство с установленным jailbreak  Встроенные механизмы безопасности ОС частично или полностью отключены  Увеличивается вероятность заражения устройства вредоносным кодом  Решение: предупреждать пользователя и перекладывать ответственность на него Атаки на банковские системы
  • 45.
    © 2002—2014, DigitalSecurity Проблема многофакторной аутентификации • В классической системе ДБО второй фактор часто приходит в виде SMS на телефон  В случае мобильного банкинга при этом подходе оба фактора приходят на одно устройство  Не поможет при наличии вируса на устройстве  Решение: смягчающей мерой может быть шифрование передаваемого SMS или использование дополнительного внешнего устройства Атаки на банковские системы
  • 46.
    © 2002—2014, DigitalSecurity Проблема распространения приложений  Проблема касается только ОС со множеством магазинов приложений  В одном магазине легитимное приложение  В другом магазине вредоносное приложение  Решение: мониторинг магазинов приложений на наличие подделок Атаки на банковские системы
  • 47.
    © 2002—2014, DigitalSecurity Проблема защиты канала передачи данных • Мобильные устройства очень часто присоединяются к неизвестным сетям • Устройства имеют очень много встроенных корневых сертификатов  При компрометации одного из встроенных сертификатов компрометируются все данные, передаваемые по SSL  Решение: необходимо шифрование канала передачи данных, вшитый сертификат банка (SSL Pinning) Атаки на банковские системы
  • 48.
    © 2002—2013, DigitalSecurity клиент ДБО хакер Пример 4. Мобильный банк HTTPS/SSL Мобильный банк. Атака типа «человек посередине» (MitM) Атаки на банковские системы 48
  • 49.
    © 2002—2013, DigitalSecurity клиент ДБО хакер Мобильный банк. Атака типа «человек посередине» (MitM) А что делать с SSL? Атаки на банковские системы 49
  • 50.
    © 2002—2013, DigitalSecurity клиент ДБО хакер Уязвимости, связанные с SSL (самоподписанные сертификаты, некорректная проверка имён хостов и т. д.) – примерно в 10-15% приложений Мобильный банк. Атака типа «человек посередине» (MitM) Атаки на банковские системы 50
  • 51.
    © 2002—2013, DigitalSecurity клиент ДБОхакер Хакер имеет полный контроль над трафиком между ДБО и клиентом Кража аутентификационных данных, кража денег клиента Мобильный банк. Атака типа «человек посередине» (MiTM) Атаки на банковские системы 51
  • 52.
    © 2002—2013, DigitalSecurity Видео Атаки на банковские системы 52 ВИДЕО ДЕМОНСТРАЦИЯ
  • 53.
    © 2002—2014, DigitalSecurity Проблема защиты кода • Программы пишутся с помощью языков программирования, которые содержат много служебной информации: o Имена классов o Имена функций o Имена переменных  Упрощается анализ для потенциального злоумышленника  Упрощается поиск уязвимостей в коде  Решение: анализ кода на уязвимости, обфускация кода Атаки на банковские системы
  • 54.
    © 2002—2014, DigitalSecurity Рекомендации  Использовать SDL (Security Development Lifecycle)  Также касается систем ДБО  Определить минимально необходимый функционал  Грамотно использовать многофакторную аутентификацию  Обрабатывать ситуацию при работе в недоверенной среде  Использовать вшитый сертификат банка  Защищать код приложения Атаки на банковские системы
  • 55.
    © 2002—2014, DigitalSecurity Предварительные данные из отчета за 2013 год (NEW) - Можно украсть деньги из ~10% приложений для мобильного банкинга - Множественные ошибки на стороне сервера - Можно дотянуться даже до АБС - Предварительно можно оставить без мобильного банкинга клиентов около 10 банков Атаки на банковские системы
  • 56.
    © 2002—2013, DigitalSecurity 56 Атаки на банковские системы Как украсть миллиард?
  • 57.
    © 2002—2013, DigitalSecurity 57 Атаки на банковские системы Интернет банкинг на стороне клиента.
  • 58.
    © 2002—2013, DigitalSecurity Как это работает? 58 Атаки на банковские системы ABS WEB Server + App Server DBMS Operator Operator’s environment
  • 59.
    © 2002—2013, DigitalSecurity Как это работает? 59 Атаки на банковские системы ABS WEB Server + App Server DBMS Operator Operator’s environment
  • 60.
    © 2002—2013, DigitalSecurity Как это работает? 60 Атаки на банковские системы ABS WEB Server + App Server DBMS Operator Operator’s environment
  • 61.
    © 2002—2013, DigitalSecurity Как это работает? 61 Атаки на банковские системы ABS WEB Server + App Server DBMS Operator Operator’s environment
  • 62.
    © 2002—2013, DigitalSecurity Цель 62 Атаки на банковские системы ABS WEB Server + App Server DBMS Operator Operator’s environment
  • 63.
    © 2002—2013, DigitalSecurity Цель 63 Атаки на банковские системы ABS WEB Server + App Server DBMS Operator Operator’s environment
  • 64.
    © 2002—2013, DigitalSecurity Цель 64 Атаки на банковские системы ABS WEB Server + App Server DBMS Operator Operator’s environment
  • 65.
    © 2002—2013, DigitalSecurity 65 Атаки на банковские системы Рабочее место оператора Оператор DBMS oper_login oper_pass dbo_admin Аутенификация
  • 66.
    © 2002—2013, DigitalSecurity 66 Атаки на банковские системы • dbo_admin единственный аккаунт в DBMS • dbo_admin имеет полный доступ • каждый оператор подключен к DBMS напрямую • аутентификацию пользователя проверяет прилоежени Dbo_admin
  • 67.
    © 2002—2013, DigitalSecurity 67 Атаки на банковские системы dbo_admin пароль зашифрован…. Пароль … и хранится в .cfg файле рядом с приложением
  • 68.
    © 2002—2013, DigitalSecurity 68 Атаки на банковские системы Цитата “Его не возможно расшифровать!” (c) Тех. поддержка BSS
  • 69.
    © 2002—2013, DigitalSecurity 69 Атаки на банковские системы На практике… RSA modulus RSA private exp Unusual base64 alphabet
  • 70.
    © 2002—2013, DigitalSecurity 70 Атаки на банковские системы Дешифровщик Well… looks like base64?
  • 71.
    © 2002—2013, DigitalSecurity 71 Атаки на банковские системы А так же… Аналогичная система хранения пароля используется в других продуктах BSS с тем же самым ключом RSA.
  • 72.
    © 2002—2013, DigitalSecurity Malware 72 Атаки на банковские системы ABS WEB Server + App Server DBMS Operator Operator’s environment Get conf file Decrypt dbo_admin pass Wreak havoc
  • 73.
    © 2002—2013, DigitalSecurity 73 Атаки на банковские системы Векторы для атаки •Инсайдер •Целевая атака •Вирусное ПО
  • 74.
    © 2002—2013, DigitalSecurity 74 Атаки на банковские системы Итого
  • 75.
    Digital Security inMoscow: +7 (495) 223-07-86 Digital Security in Saint Petersburg: +7 (812) 703-15-47 Questions? www.dsec.ru www.erpscan.com info@dsec.ru