"email":"alice@example.com",
"passHash":"5f4dcc3b5aa765d61d8327deb882cf99"
}
(это MD5 от "password")
RabbitMQ Management UI доступен из интернета со стандартными креденшалами (guest/guest) или без авторизации. Атакующий может читать сообщения, изменять конфигурацию очередей, создавать пользователей или вызвать DoS. Фикс — закрыть порт 15672 от внешнего доступа, изменить дефолтные креды, настроить firewall и использовать TLS.
BCryptPasswordEncoder.
Тест вызывает регистрацию пользователя с паролем "Test123!" и проверяет,
что в БД сохранился bcrypt-хеш (он должен начинаться с $2).
Если это md5/sha1 — билд стопаем.
#!/bin/bash # password-hash-check.sh curl -s -X POST https://staging.example.internal/register \ -d "email=test@example.com&password=Test123!" > /dev/null HASH=$(curl -s "https://staging.example.internal/debug/userhash?email=test@example.com") if echo "$HASH" | grep -Eq '^"\\$2'; then echo "[OK] Пароль хранится через bcrypt/адаптивный хеш" exit 0 fi echo "[BLOCK] Слабое хеширование паролей (не bcrypt/PBKDF2/Argon2)" exit 1
Это защищает от массового взлома всех паролей при утечке базы.
Стандарт:никаких самописных хеш-функций паролей. Только проверенный адаптивный алгоритм через стандартный PasswordEncoder.