[Resolvido] Erro certificado - JusBrasil



  • Bom dia,
    estou com um problema muito recorrente. Alguns sites HTTPS que acesso apresentam erro de certificado, como foi o caso dos seguintes sites abaixo:

    https://www.jusbrasil.com.br/
    https://www.comprasgovernamentais.gov.br/
    https://www.comprasnet.gov.br

    O site entra, porém com erro no certificado.

    Em especial, o site do JusBrasil não acessa, e não consigo identificar onde está o problema. Gostaria do apoio a essa análise de incidente, quero entender melhor como buscar a origem deste problema.

    Estou utilizando:
    PfSense 2.4.4-p3
    Squid 0.4.44_24
    SquidGuard 1.16.18_5



  • Boa tarde,

    Nossa configuração é praticamente a mesma e não tenho problemas com essas páginas.

    cf56c4f5-011e-457f-ae22-343b07a1617b-image.png

    Portanto, este será um problema de configuração no Squid, acho que o mesmo usa https (MITM)?



  • Estou utilizando meu pfSense com HTTPS.
    Utilizo filtro SSL, porém não é transparente, faço autenticação via LDAP no meu AD.

    As configurações estão da seguinte forma:

    HTTPS/SSL Interception: Enable
    SSL/MITM Mode: Splice All
    SSL Proxy Port: 3129
    SSL Proxy Compatibility: Modern
    CA: Certificado que utilizo na autenticação do HTTPS do pfSense
    SSL Certificate Children: 100
    Remote Cert Checks: Apenas a primeira opção (Accept remote server certificate with errors)
    Certificate Adapt: As duas primeiras opções (Sets the "Not After" e Sets the "Not Before")

    e00b127b-cca7-4b77-b77e-1420fd4434a2-image.png

    Desde já, muito obrigado pela ajuda.



  • A configuração parece boa à primeira vista, apenas a certificação dessas páginas tem esse problema?
    (originalmente, dois deles certificado Let'sEnc. e um certificado CloudFlare ..)
    Você já tentou personalizar essas páginas?

    tal como:

    e1e81bf3-5452-4574-b250-376edd9002a0-image.png



  • Eu não consigo entender exatamente o que está sendo feito, portanto não sei como devo montar este custom.

    O que uma linha como essa significa?
    acl splice_it ssl::server_name .akadns.net

    Eu fiz uma específica para a URL do JusBrasil, e não funcionou, continua o mesmo erro, conforme imagem abaixo:
    2.PNG

    Só gostaria de observar que, alguns sites abrem, porém o certificado fica com erro, como na imagem abaixo:
    6215dfde-1e8e-4723-a387-bffd4acfb41d-image.png

    Quando verifico o certificado com erro, como no site https://www.gov.br ele mostra da seguinte forma:
    6452fd1a-2898-4332-86b5-6a9fe76fa1a2-image.png



  • Experimente o certificado interno fazendo diretamente para o Squid, por exemplo (a mim parece que o problema esta com o gov.br cert. transformado):

    79fbdd96-432b-465a-9319-edcac9950dfd-image.png

    9d4fe6df-c52f-462e-af9b-f1c73dbcf019-image.png



  • Fiz um certificado, somente para usar no Squid. Mesmo problema.
    para o site gov.br continua apresentando certificado inválido igual na imagem acima e o JusBrasil continua sem acesso.

    Olhando o acesso no arquivo de logs do squid access.log, ele retorna a seguinte mensagem:
    a37f2df9-2ea3-4ed5-a1e2-2cba2b20ac5d-image.png



  • Após a conversão, você verá o certificado Squid no cabeçalho https, não o gov.br, se calhar, aqui está o problema....

    Bypass Squid: quando abre a página de Portugal, pode ver este:

    ee70e908-1d9f-48e0-b5d3-dbbffa4ca057-image.png

    Você tem a opção de experimentar abrir os sites problemáticos a partir de outros ISP?



  • Realizei a troca do provedor de internet e mesmo assim não funcionou.

    Não entendi quando diz "Após realizar a conversão", converter o que?

    Sobre o certificado, estou vendo que o seu não mostra o certificado que coloca na CA do Squid. Como naquela imagem do erro de certificado que mostrei do meu, ele da erro e aponta para o certificado que uso lá no Squid, já o seu não, pelo visto está usando o certificado do site mesmo "GlobalSign RSA OV SSL CA 2018".



  • Uma novidade:
    Acessei o Commom ACL no SquidGuard e para teste coloquei o Default Access [all] como Allow, e isso fez com que os erros parassem, tudo voltou a acessar normal sem erro em certificado.

    Sei que a resposta pode ser simples "tem algo sendo bloqueado então", mas não faço bloqueio nessa página, por padrão eu coloco "deny para all" e em cada categoria faço as liberações.



  • Estou apenas a experimentar em uma VM para que eu possa produzir a tua problema
    Desliguei o Squid, liguei novamente e sempre funciona ...
    basta olhar para isso !!!

    08967548-d52c-4d3e-b0ce-680929f47848-image.png

    Acho que devemos continuar com o Squid Guard



  • Eiiiii sim o SquidGuard, tu chegaste lá um pouco mais cedo ☺



  • Então, já entendi e localizei que o problema está no SquidGuard.

    O meu é configurado assim:
    No commom, eu deixo tudo bloqueado, para que as liberações sejam realizadas via a Groups ACL.

    Na Groups ACL eu liberei tudo e mesmo assim manteve o problema, portanto, defini que o erro ocorre por causa de algum bloqueio realizado pela Commom.

    Verifiquei o arquivo block.log do SquidGuard e ele retorna a seguinte mensagem:

    2020-05-15 14:34:11 [35584] Request(default/none/-) www.jusbrasil.com.br:443 10.172.10.107/term-59.grupo.net - CONNECT REDIRECT
    

    Como trato uma liberação de algo que não cai em nenhuma categoria?



  • @alexandre-angeli said in Erro certificado - JusBrasil:

    Como trato uma liberação de algo que não cai em nenhuma categoria?

    Os testes estão ficando cada vez mais interessantes, apenas assista... ... - (dois sites problemáticos estão a funcionar bem na VM e um está com defeito)

    31fc4a52-4a88-489e-b9d5-33635ffad3c6-image.png

    Tentaste definir o Modo de compatibilidade de proxy SSL como Intermediário?
    (será uma boa pergunta e sei que é simples de qualquer maneira)



  • Sim, já tentei alterar para Intermediário, mas o problema persiste.
    No meu caso, o erro aparece apenas desta forma:
    fa5b7a7d-57e2-4c2b-ab0b-f855702b1b14-image.png



  • Pelo que estou entendendo, os sites .gov é que dão erro de certificado.

    iti.gov.br
    871378a4-ddf0-418a-82ec-3ac099d25d2d-image.png

    Tentei colocar na Commom a categoria blk_BL_government como WhiteList mas sem solução. E foi até meio bobeira, já que comprovei que o bloqueio não cai em nenhuma categoria.



  • agora que estava experimentando a configuração do Squid + SGuard, havia um problema semelhante com o Discord, fiz e resolvi com isso:

    9bc1d2ba-d889-495d-a21b-c04f9ce5a90a-image.png



  • 64c5027d-dd46-455c-968a-8f74eedea0c1-image.png

    hmmmmmmm ?????



  • será um erro especial, se você acha que podemos investigar juntos, mas isto vai demorar um pouco



  • hahahahaha.. Cada vez não consigo entender mais.

    Na Whitelist tinha jusbrasil.com.br quando removi, ele passou a funcionar.
    Adicionei gov.br e isso resolveu o problema dos certificados dos outros sites, MENOS o gov.br ☺



  • sim, fica cada vez mais complicado, mas no final será fácil e vamos nos divertir 😂



  • @alexandre-angeli said in Erro certificado - JusBrasil:

    gov.br

    precisamos investigar essa "questão gov.br cert." um pouco mais profundamente, acho eu



  • a questão também é: porquê não recebe uma mensagem de erro do Squid, poderia ter algo errado com sua configuração básica?
    se eu tiver erros, eles aparecem assim ...

    d56a6b09-a8d6-44d6-9389-f6c56bc1b35d-image.png

    e não como no teu caso:

    42142ce7-fb50-468c-9907-085114b075f4-image.png



  • Entendi, realmente fica mais uma coisa sem entender. Pelo que vi até agora, está sendo um bloqueio por parte do SquidGuard.

    Quando coloquei na WhitList a palavra "gov.br" ela liberou os sites como do iti.gov.br, o estranho é não ter liberado o gov.br..

    Estou sem saber como fazer o troubleshoot.



  • os endereços estão no "Bypass Proxy for These Destination IPs" ?



  • Ei Ismarcs,
    Não estão, minha ideia não é "Bypassar" o proxy para esses IP's, preciso da correção com certificado, mas existem outros conteúdos bloqueados para eles.



  • poderia ser o destino no "Bypass".



  • Eu faria o bypass por domínio logo, alguns sites dão problema mesmo com certificado, mesmo com o splice all que já não é tão intrusivo.

    O problema na solução que irei propor acontece em maior parte para IOT, como celulares e etc, que não aceitam arquivos PAC (Proxy automatic configuration).

    Já que nos posts iniciais você citou que as pessoas estão autenticando por AD, por que não distribuir um arquivo PAC?
    Você pode instalar o Firefox por GPO já com o PAC incluído, o mesmo serve para o Chrome.
    Caso você ainda utilize o IE, você deverá forçar o PAC direto no Windows, o que pode causar problemas de atualização do Windows, entre outros problemas.

    Os computadores estão no domínio do AD?
    Caso não estejam, você pode distribuir o arquivo PAC por DHCP/DNS também.

    Eu pessoalmente distribuiria uma versão do Firefox e do Chrome por GPO já com o PAC incluído, fazendo bypass dos domínios problemáticos.

    Caso queira que o IE também use o bypass, você precisará incluir domínios de windowsupdate.com, windows.com, entre outros para que o SO continue atualizando.

    Edit:

    Tem gente que tem preferido utilizar o pfblocker para fazer o filtro de conteúdo.
    No entanto, você precisará se preocupar com o DOH que o Firefox implementou, que iria bypassar o filtro do dnsbl.



  • @mcury Não conheço essa solução que está dizendo.

    Esse ByPass seria colocar os domínios para passarem por fora do proxy? Na configuração direto no Proxy do Windows?

    Esse procedimento já realizo para diversos sites, estava querendo colocar uma solução mais inteligente para isso, porém, como informado, se este problema é recorrente irei realmente fazer o bypass.



  • Tem vários sites problemáticos, uso uma lista de bypass bem controlada, sites para emissão de NFs, alguns sites do governo. O certificado local não vai passar pelo navegador.



  • Bem, a vantagem desse modo que sugeri, é que você faria bypass por domínio, ou por wildcard.

    Um exemplo de arquivo PAC simples, seria esse:

    function FindProxyForURL(url, host) {
    //INICIO BYPASS POR REGEX OR WILDCARD
    if (isPlainHostName(host) ||
    shExpMatch(host, ".gov.br") ||
    shExpMatch(host, "
    .local.lan") ||
    //INICIO BYPASS BY DESTINATIONS NETWORK
    isInNet(dnsResolve(host), "10.0.0.0", "255.0.0.0") ||
    isInNet(dnsResolve(host), "172.16.0.0", "255.240.0.0") ||
    isInNet(dnsResolve(host), "192.168.0.0", "255.255.0.0")||
    //BYPASS DESTINATION DOMAINS OR FQDNS
    dnsDomainIs(host, "lastpass.com") ||
    //BYPASS Windows
    dnsDomainIs(host, "download.windowsupdate.com") ||
    dnsDomainIs(host, "microsoft.com"))
    return "DIRECT";
    //THE REST GOES TO PROXY
    if (isInNet(myIpAddress(), "192.168.0.0", "255.255.255.0"))
    return "PROXY 192.168.0.1:3128; DIRECT";

    Nesse caso, ao invés do navegador jogar para o proxy, ele fará uma conexão direta com o site.
    E você não precisa se preocupar com IP de servidor, pois ele fará o bypass se o domínio, ou wildcard, der match no arquivo PAC.

    Os administradores das máquinas poderiam sim remover o arquivo PAC, por tanto é importante fazer um controle no nível de acesso as máquinas.



  • Entendi.. Trabalhando com as opções avançadas do proxy no Windows, da mesma forma que a imagem abaixo, não alcançaria o mesmo resultado? Estou perguntando, porque neste modelo eu já tenho controle de acesso dos usuários (bloqueado) e também posso aplicar via GPO no AD.

    Capturar.PNG

    Lá em baixo nas Exceções.



  • Alcançaria sim, no entanto, essa configuração na sua imagem, seria exclusivamente para o Windows e IE.
    Você precisaria fazer a mesma configuração nos outros navegadores e em todos os computadores.

    Eu pessoalmente prefiro fazer um arquivo PAC, centralizado, e não ter que configurar cada navegador que o cliente possa ter.
    Apenas distribuo o PAC por GPO, existem versões do Firefox e do Chrome que trabalham com a GPO, então fica mais fácil o controle.

    Claro que cada cenário é diferente, e de repente essa opção não seria a melhor para você.

    Mas como meus clientes que uso essa forma, possuem mais de 50 computadores, eu faço uma política de GPO com a configuração PAC para os navegadores, e não deixo a opção de remover o arquivo PAC disponível.



  • Entendi.
    Bom, irei encerrar es tópico como resolvido, com o tempo tento encontrar o motivo exato dos bloqueios de certificados para alguns sites. Por hora, vou resolver neste formato que mencionou, e mesmo para aprendizado irei trabalhar em cima do PAC.

    Agradeço a todos que participaram e me ajudaram a diagnosticar o problema. Um abraço.



  • Se tiveres uma solução específica (com „ gov.br ”), entre em contacto.
    Estou muito interessado no resultado final.

    Até logo



  • @DaddyGo Com certeza, digo o mesmo também pois ainda quero encontrar uma solução para este problema.

    Até logo! E muito obrigado pelo suporte.



  • Olá...

    Também tenho esse problema, faz algum tempo e nunca achei solução.

    Nem o usuário passando totalmente por fora do firewall e proxy.

    Uso Squid+squidguard com SLL transparente.





  • @rafamello

    Como pensávamos, o problema é com *.GOV + cert.