Proxy man-in-the-middle sem nenhum erro de certificado?

0

Estou trabalhando na escola como engenheiro de TI. Temos uma ordem legal do nosso ISP governamental para coletar registros sobre o comportamento da nossa rede de usuários, para identificar PCs infectados e assim por diante.

Eu preciso filtrar todo o tráfego, bem a maior parte - 80 e 443 portas.

Eu sei filtrar a porta 80, mas como filtrar o tráfego SSL sem gerar erros no navegador do cliente sem mexer nos dispositivos dos alunos?

Eu tenho acesso aos certificados DigiCert que posso obter. Ajudaria a ter um certificado real da CA confiável para não causar erros?

O objetivo é ter proxy de log transparente com SSO (AD), sem a necessidade de instalar certificados em computadores, sem configurar proxy no PC, sem erros.

    
por Žygimantas Markevičius 26.07.2016 / 12:04

2 respostas

1

how do I filter SSL traffic without throwing errors in client browser without fiddling with students devices?

Felizmente você não pode!

Porque se você pudesse, qualquer um poderia e não haveria internet como a conhecemos.

Would it help to have real certificate from trusted CA not to throw any errors?

Não, isso não aconteceria, porque o DigiCert assinaria um certificado para o domínio que você possui e pode comprovar a propriedade (e eles o verificariam).

Este certificado pode então ser usado para proteger a transmissão entre qualquer navegador e seu servidor da escola (acessível usando o domínio para o qual foi emitido) sem o receio de que algum engenheiro de TI esteja interceptando a comunicação " sem a necessidade instalar certificados para computadores, sem configurar proxy no PC, sem erros ".

Para reformular: a inspeção HTTPS é possível, mas exige que instale um certificado raiz em computadores clientes.

Consulte, por exemplo, o artigo do TechNet da Microsoft Como a inspeção HTTPS funciona (lembre-se da palavra "porque "abaixo):

Because the HTTPS inspection certificate was previously placed in the client computer’s Trusted Root Certification Authorities certificate store, the computer trusts any certificate that is signed by this certificate.

No entanto, a condição que você incluiu na sua pergunta:

without need to install certificates to computers, without setting proxy in PC, without any errors

determina a resposta: você não pode conseguir isso .

    
por 26.07.2016 / 14:20
0

O uso de certificados exige que você crie pelo menos um certificado por site acessado por seus usuários (os certificados contêm o nome de domínio). O DigiCert parece estar instalado (pelo menos no Windows) como uma CA raiz confiável para que possa funcionar, e precisaria de verificação em computadores que não sejam Windows.

No entanto, recomendo que você reavalie o que foi solicitado a você. Eles realmente pedem para você registrar a carga útil completa do tráfego? Isso representa uma quantidade astronômica de dados, mesmo para pequenas entidades.

Sou estudante universitário e na minha faculdade todas as conexões com a Internet são registradas, mas elas registram apenas o IP ao qual eu me conecto, que protocolos eu uso etc. Eles não coletam a carga real, temos cerca de 10k usuários on-site 24/7 ... E eles não usam representação tanto quanto eu sei, porque é inútil neste caso.

Somente a coleta desse tipo de metadados não exigiria o MITM, você só precisa analisar os dados que chegam pelo seu roteador. Mesmo em uma conexão segura, o IP e as portas de destino não são criptografados. Você também pode interceptar pesquisas de DNS (não criptografadas, na porta 53 IIRC) para fazer referência cruzada com os IPs usados.

EDITAR para responder aos comentários:

  1. Complicações sobre os acessos: esse é o principal objetivo de fazer login na rede da minha faculdade: assim que recebem a reclamação, eles podem informar qual usuário fez isso.

  2. Bloqueando sites ilegais: você pode fazer isso no DNS padrão usado por computadores que acessam sua rede para bloquear nomes de domínio. Além disso, você pode usar o firewall para bloquear o tráfego de saída desses IPs dos sites.

  3. Proxy: isso é independente da noção de certificados. Você só precisará do certificado se seu proxy personificar o site, e ele fará isso se você quiser descriptografar ou modificar a carga útil em si. Dependendo do que é realmente solicitado, isso pode não ser necessário. Um proxy que apenas encaminha o tráfego, mesmo que o registre, não precisa representar o site

  4. Autenticação: acompanha o proxy e você pode usá-lo para fazer referência cruzada da identidade dos usuários com o que eles fazem.

  5. "Um certificado por site": os certificados digitais geralmente contêm o nome do site, o que significa que você não pode usar o mesmo certificado para representar vários sites diferentes. Caso contrário, o usuário verá um grande aviso vermelho "Esta conexão é insegura" sempre que tentar HTTPS em um site.

por 26.07.2016 / 12:26