Bloqueando HTTPS - Proxy Transparente

3,135 views
Skip to first unread message

drum....@gmail.com

unread,
Oct 21, 2013, 12:45:09 PM10/21/13
to tche...@googlegroups.com
Boa tarde pessoal, tudo bem?


Vocês conseguem fazer bloqueio de sites HTTPS com Squid 3 transparente?
( Sem usar o iptables ) ?

Obrigado.

Paulo Pastoriza

unread,
Oct 21, 2013, 12:50:29 PM10/21/13
to tche...@googlegroups.com, drum....@gmail.com
Boa tarde Lucas

Têm que habilitar o modo de SSLBump que foi implementado na versão 3 do squid.
Só assim você poderá visualizar as requisições realizadas sobre https.

http://wiki.squid-cache.org/Features/SslBump

Um de muitos howto existentes por ai: http://www.mydlp.com/how-to-configure-squid-3-2-ssl-bumping-dynamic-ssl-certificate-generation/

Para fazer isso legalmente, você deveria ter uma política de segurança definida e assinada pelos usuários, dando ciência do monitoramento realizado para evitar problemas judiciais posteriores.

Abraço.



--
Mensagem enviada para <http://groups.google.com/group/tchelinux>.
Regras de Conduta para o grupo: <http://tchelinux.org/regras>.
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "TcheLinux" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para tchelinux+...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.



--

Paulo Pastoriza

IT Technical Support

LPIC-1 Junior Level Linux Certification

 

+55 51 9124-0764 (TIM)

Jackson Laskoski

unread,
Oct 21, 2013, 6:17:11 PM10/21/13
to tche...@googlegroups.com
Buenas!


Em 21 de outubro de 2013 14:45, drum....@gmail.com <drum....@gmail.com> escreveu:
Boa tarde pessoal, tudo bem?


Vocês conseguem fazer bloqueio de sites HTTPS com Squid 3 transparente?
( Sem usar o iptables ) ?



Sendo bem prático e objetivo, use o pacote "Squid3-dev" no pfSense e seja feliz:  http://nextsense.com.br/blog/archives/1866

drum....@gmail.com

unread,
Oct 22, 2013, 7:08:56 AM10/22/13
to tche...@googlegroups.com
Bom dia.

# Fiz o bloqueio de HTTPS no Squid Transparente usando: 

openssl genrsa -des3 -out openssl.key 1024 
openssl req -new -key openssl.key -out openssl.csr 
cp openssl.key openssl.key.old  
openssl rsa -in openssl.key.old -out openssl.key
openssl x509 -req -days 365 -in  openssl.csr -signkey openssl.key -out openssl.crt

# Squid.conf:
https_port 3130 transparent cert=/etc/squid/openssl.crt key=/etc/squid/openssl.key

# iptables:
iptables -t nat -A PREROUTING -i $REDEINTERNA -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i $REDEINTERNA -p tcp --dport 443 -j REDIRECT --to-port 3130





--

Jeronimo Zucco

unread,
Oct 22, 2013, 12:08:43 PM10/22/13
to TcheLinux
O problema é que todo mundo que acessar um site que utilize HTTPS, irá dar erro no navegador por causa do certificado, tornando ele inútil. 

Onde está a segurança nisso ?
--
Jeronimo Zucco
http://jczucco.blogspot.com

drum....@gmail.com

unread,
Oct 22, 2013, 12:34:19 PM10/22/13
to tche...@googlegroups.com
Pois é. Mas eu não sabia deste detalhe.
Descobri depois que pus no ar.

Alguém tem outra dica?


Att;

Lucas Possamai

http://about.me/lucaspossamai



Marcelo Dieder

unread,
Oct 22, 2013, 12:43:01 PM10/22/13
to tche...@googlegroups.com
Outra opção é instalar o certificado gerado para o squid nos navegadores, o que evitaria o erro. Mas como o Jerônimo citou, isto é man-in-the-middle e "quebra" a cadeia de troca de chaves de uma conexão TLS. Eu não gosto deste tipo de solução.

Minha sugestão: Não utilize proxy transparente. Utilize algum método para configuração automática de proxy nos navegadores.

Abs.
Marcelo




Em 22 de outubro de 2013 14:08, Jeronimo Zucco <jcz...@gmail.com> escreveu:



--
Att.
Marcelo Dieder

Paulo Pastoriza

unread,
Oct 22, 2013, 12:45:02 PM10/22/13
to tche...@googlegroups.com, Lucas Possamai
Isso sempre vai acontecer. O certificado gerado para utilização do squid deve ser instalado como CA confiável nos navegadores dos usuários (IE e FF, o chrome herda do IE). Assim não é exibido nenhum erro de certificado para o usuário.

É bom evitar o uso do sslbump para IPs e domínios de bancos. Alguns outros sites e programas que utilizam https também podem dar problema, pois devem realizar alguma checagem no nome de quem assina a chave SSL, por isso é bom deixar uma regra pronta para exceções de IP e domínio que vão aparecer.

Abraço.
--

Paulo Pastoriza

IT Technical Support

LPIC-1 Junior Level Linux Certification

 

+55 51 9124-0764 (TIM)


Marcos Carraro

unread,
Oct 22, 2013, 12:45:10 PM10/22/13
to tche...@googlegroups.com
Tche, instala via WPAD tu não te incomoda mais.

--
Att
Marcos Carraro

Nicolas Wildner

unread,
Oct 22, 2013, 12:37:37 PM10/22/13
to tche...@googlegroups.com
Se o cliente tiver uma rede Micro$oft com um Domínio, basta propagar tal certificado e empurrá-lo "guela abaixo" através de policies.

Senão, só adicionando navegador a navegador...

O HTTPS foi feito justamente para que não fosse feito cache ou interceptação. O SSL Bumping é um contorno, e a própria documentação do Squid explica que em alguns países isto pode até figurar crime:
http://wiki.squid-cache.org/Features/HTTPS

Nícolas Wildner
Analista de Infraestrutura de TI
Transportes Bertolini Ltda.
54 3455-1111 - ramal 3319
54 3455-1120
www.tbl.com.br



De: "drum lucas" <drum....@gmail.com>
Para: tche...@googlegroups.com
Enviadas: Terça-feira, 22 de Outubro de 2013 14:34:19
Assunto: Re: [TcheLinux] Bloqueando HTTPS - Proxy Transparente

drum....@gmail.com

unread,
Oct 22, 2013, 12:53:00 PM10/22/13
to tche...@googlegroups.com
É... infelizmente Proxy transparente é o que preciso hoje.
Porém, não acho certo instalar o certificado PC por PC...

Solução: Irei bloquear no iptables.



alexandre hackenhaar

unread,
Mar 9, 2018, 1:16:59 PM3/9/18
to Tchelinux
Conseguiu alguma maneira de fazer o bloqueio de https pelo proxy transparente sem precisar instalar o certificado
Eu ja usei o kerio que é pago e funciona muito bem, mas queria usar uma solução free.

Rodrigo de Lima Silva

unread,
Mar 9, 2018, 3:47:41 PM3/9/18
to tche...@googlegroups.com
Existe uma feature do Squid que permite controlar sites que utilizam SSL de maneira transparente.


Eu já implementei e funciona bem, porém não é muito simples.

-- 
Rodrigo Lima  - rodrigodlima[at]gmail[dot]com




Em 21 de outubro de 2013 14:45, drum....@gmail.com <drum....@gmail.com> escreveu:

--
Mensagem enviada para <http://groups.google.com/group/tchelinux>.
Regras de Conduta para o grupo: <http://tchelinux.org/regras>.
 
---
Você está recebendo esta mensagem porque se inscreveu no grupo "TcheLinux" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para tchelinux+unsubscribe@googlegroups.com.

Eduardo de Oliveira

unread,
Mar 13, 2018, 3:56:46 PM3/13/18
to Tchelinux
Acredito que a solução paga que tenha utilizado tenha utilizando o SNI para realizar a filtragem de forma transparente sem a necessidade de instalação de certificados nas estações.

O Sophos UTM (pago) oferece funcionalidade similar:

Somente a porta 80 de tráfego web pode ser silenciosamente interceptada e filtrada. A porta 443 de tráfego HTTPS também pode ser interceptada transparentemente, mas anterior a versão 9.2, um novo certificado deveria ser instalado nos sistemas dos usuários para permitir a filtragem silenciosa. Na versão 9.2, a filtragem HTTPS baseada em SNI é possível. A SNI, ou “Server Name Indication”, é um campo opcional enviado na maioria dos navegadores modernos na requisição HTTPS que exibe o hostname do servidor em texto puro, permitindo que você filtre conteúdo HTTPS sem instalar um certificado, mas não permite escaneamento antivírus in-stream de tráfego web.

Porém, há diversos estudos que demonstram a fragilidade do SNI. Por ser baseado no navegador do cliente, é possível adulterar o campo SNI, burlando o Proxy.

Não conheço outra solução, além da instalação do certificado nos clientes, para uma filtragem SSL verdadeiramente transparente. Talvez implementar uma estrutura Active Directory para instalar o certificado via Política de Grupo. O WPAD também funciona muito bem. Outra alternativa seria emitir um certificado considerado confiável pelos clientes, ex: Verisign (não haveria necessidade de instalar o certificado nos clientes devido a autoridade de certificação ser confiável), porém, haverá custo de renovação anual (um valor bem salgado).

Att.
Eduardo Mozart de Oliveira
Sophos Certified Engineer

Marcos Alano

unread,
Mar 27, 2018, 3:18:12 PM3/27/18
to tche...@googlegroups.com
Eu fico pensando o tamanho da treta quando TLS 1.3 virar o padrão de facto.
> <http://wiki.tchelinux.org/#!tchelinux/regras.md>
> ---
> Você recebeu essa mensagem porque está inscrito no grupo "Tchelinux" dos
> Grupos do Google.
> Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie
> um e-mail para tchelinux+...@googlegroups.com.
> Para mais opções, acesse https://groups.google.com/d/optout.



--
Marcos H. Alano
Linux System Administrator
marcos...@gmail.com

Rogerio Silva

unread,
Jan 28, 2019, 6:32:54 AM1/28/19
to Tchelinux
Olá caros colegas.


Utilizo o OPNsense para logar os acessos de sites https. Basta ativar o SNI no proxy do mesmo...



Eduardo de Oliveira

unread,
Jan 28, 2019, 7:08:47 AM1/28/19
to Tchelinux
Bom dia, Rogério!

A SNI, por ser realizada via cliente (o cliente envia o cabeçalho com o nome SNI do servidor que deseja acessar em texto-puro), ela pode ser burlada no lado do cliente.

As táticas de bypass mais comuns do SNI são:

1. Você pode simplesmetne adicionar o mapeamento de nome/IP que você deseja usar no arquivo hosts e acessar o site com o nome que você quer. A menos que você use um proxy, ele usará o arquivo hosts para determinar o endereço IP e usará o nome SNI inforado no cabeçalho Host. https://superuser.com/questions/959510/firefox-any-way-to-override-server-name-indication-for-troubleshooting
2. Você pode realizar hijack do pacote, adulterando o cabeçalho Host ou simplesmente removendo a extensão SNI. A extensão Escape do Firefox permite fazer isso de forma transparente. http://madynes.loria.fr/Research/Software#toc2

Em todos os testes, o SNI foi burlável em um estudo da Universidade de Lorraine (França). Você encontra o relatório completo em: https://hal.inria.fr/hal-01202712/document
Reply all
Reply to author
Forward
0 new messages