- Navios
- 17 de setembro de 2026 às 04:48 UTC
- Autor
- Kamo
- Enviar
- 357d3a0
A cada código curto os e-mails ou textos da plataforma eram verificados sem contagem: - POST /api/recupere/email/verify-code pegou o código de reset de 8 hex-caractere em paz e combinou com cada A conta foi reiniciada durante 30 minutos. Uma correspondência em qualquer conta tornou-se uma sessão de recuperação para essa conta. - POST /api/recupere/sms/verify: um código de texto de 6 dígitos para um número conhecido, 10 minutos, sem contagem. - POST /api/Recover/questions/verify and /seed/verify: respostas de segurança (uma cor, uma cidade) e frases de sementes, sem contagem. - POST /api/security/verify-email {userId, code}: um código de 6 dígitos, 24 horas, sem sessão. O primeiro sucesso menta um chave de login automático na conta. - POST /api/conta/telefone/verificar: um código de 6 dígitos que prove um novo número de telefone de recuperação, sem contagem. - Post ************* tinha um limite de cinco tentativas que nunca fez efeito. Escreveu o conde. e então jogou, a regra padrão @Transactional rolou a gravação de volta, e a transação do próprio controlador foi Apenas para retroceder. CodeAttemptLimiter (Redis, janelas fixas, contadas ANTES da comparação para que palpites paralelos não possam passar por ela): - 5 tentativas por hora por sujeito: a conta, o endereço digitado, o número de telefone, ou o código. A tentativa de que utiliza o quinto gasta o código (repor linhas marcadas utilizadas, códigos textados consumidos, códigos de registo inválidos, código de mudança de telefone consumido). Um sucesso esclarece o assunto. - 30 tentativas por hora por endereço do cliente público, em todos estes parâmetros. Os saltos privados são ignorados, uma vez que Um endereço de procuração seria para todos. - 50 tentativas de reinserção de código por 10 minutos. As recusas são 429 com o Retry-After e o RetryAfterSeconds no corpo. O limitador falha na abertura de uma falha do Redis, como LoginThrottleService e verificaçãoResendRateLimiter. Todas as comparações são agora tempo constante. O código de reset é vinculado a uma conta quando o nome da solicitação um: código de verificação aceita `email` (o endereço digitado em a página de reset, resolveu a forma como o /email/initiate o resolve) e verifica apenas o reset da conta. Um desconhecido O endereço é contado exactamente como um conhecido. A forma somente de código ainda funciona para uma página de login que não foi implantada ainda (kamo-login envia o endereço no mesmo conjunto de alterações), sob o orçamento de toda a plataforma. Métodos que escrevem o que um código errado gasto agora declara noRollbackFor. Os códigos de recuperação MFA já estavam atrasados LoginThrottleGate e são 60 bits. A verificação telefónica Vonage impõe o seu próprio limite de tentativa. Ensaios: - CodeAttmptLimiterTest: windows, o quinto marcado último, orçamentos de endereço e plataforma, chaves hashed, fail-open. - RecoveryCodeAttemptsTest: binding conta, gastar no quinto, recusa depois, endereço desconhecido contado, código-somente Ainda funciona e acaba, SMS, respostas de segurança. - Está bem. - CodeAttmptWritesCommitTest: cada método através de um TransactionInterceptor real compromete sua recusa. - RecuperaçãoAttemptsWireTest: endereço e IP chegam ao serviço; 429 mapeamento em todos os três controladores. Doze mutantes (cada limite, gasto, vinculação, orçamento e noRollbackFor removed) cada um falha um teste.