Как обычный Java-код превращается в уязвимость и что с этим делать на практике
Программа воркшопа
Как обычный Java-код превращается в уязвимость и что с этим делать на практике
1. Input validation
Любые данные, приходящие извне, — потенциально опасны. Разберём, почему пользовательский ввод является основным источником уязвимостей, какие ошибки чаще всего допускают Java-разработчики и как отличить валидацию, нормализацию и экранирование.
2. Database section
SQL-инъекции по-прежнему встречаются в Java-приложениях — даже при использовании ORM. Мы рассмотрим реальные примеры SQL Injection, разницу между Statement и PreparedStatement и типовые ошибки при работе с JPA и динамическими запросами.
3. Files & uploads
Загрузка файлов — один из самых недооценённых источников риска. Вы узнаете о zip-bomb, подмене MIME-типа, directory traversal и обязательных проверках при загрузке PDF, CSV и изображений.
4. Auth & AuthZ
Ошибки в аутентификации и авторизации часто приводят к критическим уязвимостям. Мы разберём хранение токенов, JWT, cookies, HttpOnly, SameSite, а также проблемы session management и brute-force атак.
5. External APIs
Практическое упражнение в группах, где участники выберут известный им бренд и создадут вокруг него историю, раскрывая его ключевые человечные элементы.
6. Sensitive data
Конфиденциальные данные чаще всего утекают через логи и ошибки. Вы узнаете, какие данные нельзя логировать, как избежать hard-coded credentials и какие практики шифрования применяются на практике.
7. Error handling & logging
Ошибки и логи могут стать источником утечки информации. Мы разберём, почему stack trace на проде — это уязвимость, как разделять пользовательские и технические ошибки и правильно маскировать данные.
8. Secure Coding Checklist
Финальный блок — практический чеклист безопасного Java-кода. Он охватывает ввод данных, работу с БД, JWT, cookies, API, логирование и конфигурацию.
Ведущий воркшопа
Михаил Давидович
Lead Java Developer
Lead Java Developer с более чем 15-летним опытом enterprise-разработки. Работал с высоконагруженными системами в банковском и корпоративном секторе, где ошибки в коде напрямую приводят к инцидентам безопасности. Воркшоп основан на реальных кейсах из production-проектов и фокусируется на том, как обычные Java-решения превращаются в уязвимости — и как этого избежать на практике.
Для кого этот воркшоп:
Java-разработчики
Senior / Lead инженеры
Backend-разработчики (Spring / Spring Boot)
Тимлиды и технические руководители
Регистрация на воркшоп
Стоимость участия 100 рублей.
Контакты:
По любым вопросам пишите на m2davidovich@gmail.com, а также в мессенджер
Photo courtesy of Sebastiaan ter Burgand Peter McConnochie / flickr.com Все фотографии, тексты и видеоматериалы принадлежат их владельцам и использованы для демонстрации. Пожалуйста, не используйте контент шаблона в коммерческих целях.