2. Стажировка-‐2015
Идентификация -‐ процесс
опознания субъекта, в
результате которого выявляется
уникальный идентификатор
опознаваемого -‐ логин, email.
Идентификация, аутентификация
7. Стажировка-‐2015
Что будет, если злоумышленник
получит хотя бы read-‐only
доступ к БД пользователей?
Как избежать компрометации
паролей?
Хранение паролей
9. Стажировка-‐2015
Хэширование паролей.
Хэш функция -‐ односторонняя ф-‐ия,
преобразующая входные данные в
выходной набор фиксированной длины.
Криптографически стойкая хэш функция
очень трудно обратима и устойчива к
коллизиям.
MD5, SHA, Scrypt, ГОСТ Р 34.11-‐2012
Хранение паролей
10. Стажировка-‐2015
• Поиск хэш коллизий: H(a) ==
H(b)
• Перебор по словарям
• Радужные таблица
Атака на хэшированные пароли
11. Стажировка-‐2015
• Замедление хэш функций -‐
много раундов хэширования
• Увеличение длины хэша
• Усложнение паролей
• Соль -‐ строка криптографически
случайных данных
Атака на хэшированные пароли
14. Стажировка-‐2015
• XSS -‐ межсайтовый скриптинг
• CSRF -‐ межсайтовая подделка запросов
• SQL-‐инъекции
• MITM -‐ человек посередине и анализ
траффика
• Атаки на сервер -‐ взлом ssh, tomcat, DB
пароля
Интернет атаки
15. Стажировка-‐2015
• Экранирование спец символов
html ‘"&<>
• фильтрация запросов: http://example.com/
search?q=<script>DoSomething();</script>
• CSP -‐ список откуда можно
загружать js, css …
• Использование SSL
XSS -‐ межсайтовый скриптинг
16. Стажировка-‐2015
Внедрение в запрос
произвольный SQL код.
http://example.com?query=1+OR
+1=1
SELECT * FROM data WHERE id =1
OR 1=1;
SQL-‐инъекции
17. Стажировка-‐2015
• Экранирование запросов
• PrepareStatement для
параметризованных запросов
• не использовать
конкатенацию строк для
построения sql запроса
SQL-‐инъекции
22. Стажировка-‐2015
• HTTPS = HTTP + TLS(SSL)
• Порт 443 вместо 80
• Сертификат -‐ public+private
• RSA, Диффи-‐Хеллман для обмена
ключами
• AES, 3DES, RC4 -‐ шифрование трафика
• SHA256/512 для хэш функций
HTTPS
23. Стажировка-‐2015
• Боты сканируют порты
• Боты подбирают пароли для root
по ssh
• Подбор паролей от DB
• Подбор паролей от tomcat manager
• Поиск jvm remote debug
Атаки на сервер
24. Стажировка-‐2015
• Поменять дефолтные
порты(22, 5432, 8080)
• Запретить логин под root по ssh
• Закрыть доступ к БД из вне
• Удалить менеджера tomcat
• Запретить debug
Атаки на сервер