Author Image

inbox5372

Jun 18, 2021

Solução Alternativa para mTLS no Heroku com AdonisJS

mTLSHerokuAdonisJSwebhookUrlcertificadosegurançaGerencianeterroservidor webhttpsHTTPVulnerabilidadeBACEN

Bom dia. Tudo bem com vocês?
Estou buscando uma solução alternativa para o mTLS de um backend hospedado no Heroku.
Uso o AdonisJS.
Um prefixo na webhookUrl => https://mtls.pix.ae/cardapioo-api.herokuapp.com/webhookpix
Mas não sei qual o fluxo nesse cenário. Eu imaginava que fosse assim:
1- O GN envia o primeiro request para a webhookUrl cadastrado pelo Postman, retorna com 403;
2- Faz um novo request em https://mtls.pix.ae/cardapioo-api.herokuapp.com/webhookpix junto com o certificado;
3- Ao bater no webhookUrl com o prefixo mtps.pix.ae é direcionado para a url respondida pelo meu backend;
4- Lá encontra a rota https://cardapioo-api.herokuapp.com/webhookpix POST já pronta;
5- Eu apresento ao GN a minha parte do certificado e pronto.

Mas o que acontece na verdade é => "nome": "webhook_invalido", "mensagem": "A requisição na URL informada falhou com o erro: HPE_INVALID_CONSTANT"

Alguém pode me ajudar por favor?

Respostas (4):
Avatar discord do usuario tryrealvin

tryrealvin

18/06/2021

Fábio, quem tem que validar o certificado é o servidor WEB

Avatar discord do usuario rubenskuhl

rubenskuhl

18/06/2021

Se você tiver como configurar isso, seu servidor está com TLS 1.0 e TLS 1.1 habilitados, e não deveria:
https://www.ssllabs.com/ssltest/analyze.html?d=cardapioo%2dapi.herokuapp.com&s=54.146.248.82&latest

Isso não deve ter relação com o problema em questão, mas é uma vulnerabilidade de segurança.

Avatar discord do usuario tryrealvin

tryrealvin

18/06/2021

Com relação a esse erro em especifico, isso é o parser do HTTP/HTTPs da GerenciaNet falhando por algum motivo, algo na resposta do seu servidor não agradou

Avatar discord do usuario anoni_mato

anoni_mato

18/06/2021

essa etapa 3 eu acho que não está bem descrita. o mtls.pix.ae não faz redirecionamento. ele vai repassar o request vindo da GN para https://cardapio-api.herokuapp.com/webhookpix/pix (lembre-se que a GN adiciona /pix no callback, conforme documentação do BACEN).