Tenho lido bastante sobre o novo browser da Google o Chrome, notícias boas outras ruims, alguns bugs de segurança, etc.. nada muito relevante levando em consideração que tudo que a Google lança é versão Beta. (não que isso seja ruim!)
Mas o fato que mais me chamou atenção até agora foi a estratégia da Google ao criar este novo navegador, acrescentando uma funcionalidade bem diferente em relação aos concorrentes, enquanto alguns fabricantes perdem tempo inventando “FIREWALL” para navegador com filtro Anti-XSS (que em pouco tempo já demonstrou sua fragilidade) o Chrome veio com uma idéia nova e completamente diferente dos outros, com uma arquitetura bem formulada o Chrome promete combater os ataques “client-side” mais comuns e e utilizados no mundo.
Hoje quando navegamos e abrimos uma aba esta está diretamente ligada no único processo do navegador em questão, isto nos traz sérios problemas, além da insegurança e fragilidade, uma das coisas que podemos perceber é que quando uma das abas trava TODO o navegador TRAVA/QUEBRA, e com isso temos que re-abrir-lo.
No Chrome a estratégia aplicada demonstra a seriedade no desenvolvimento em relação à seguraça, cada aba aberta é considerada um NOVO processo, talvez a primeira coisa que vem em mente é:
“Puxa que SUPER!, se uma aba travar não vou perder mais 10 segundos pra re-abrir o navegador, porque somente uma aba irá TRAVAR/QUEBRAR.“
Affff grande coisa certo? Errado! reparem nas possibilidades, se temos processos separados para cada aba logo poderemos utilizar o SE Linux para definir contextos distintos para cada uma delas, o que nos proporciona uma granularidade ABSURDA! Vejamos:
Partindo do ponto que poderíamos ter dois domínios distintos para o Chrome e suas abas vamos chamá-los de chrome_trusted_t e chrome_untrusted_t, e que chrome_trusted_t podería ler/escrever em seu home inteiro por exemplo e que o domínio chrome_untrusted_t podería somente ler/escrever arquivos do diretório ~/chrome_untrusted.
Com isto já podemos imaginar as possibilidades por exemplo navegar com uma aba nas páginas da intranet da sua empresa tranquilamente e em outra aba você poderia navegar pelos sites mais promíscuos do universo sem ter medo, pois são duas abas completamente isoladas e cada uma trancafiada dentro de seu próprio domínio! Será que CSRF, XSS e similares estão com os dias contados?:) Será que CSRF, similares e ataques como este por exemplo, estão com os dias contados? :(
Nada disto está pronto ainda, são apenas algumas possibilidades aqui apontadas partindo do FATO que o Chrome já vem com essa função de abas com processos diferentes implementada!
Alguns GURUS do SE Linux já blogaram sobre essa possibilidde, Russel Cocker (debian/redhat), Dan Walsh(redhat), Joshua Brindle(tresys) comentaram em seus blogs essas semanas sobre esse assunto e eu não poderia deixar de postar algo tão fantástico.
Vamos aguardar!
Maiores informações sobre o Chrome você pode encontrar aqui e aqui no blog do Waaaaaalter Cruz! :-)
Abraços!

September 11, 2008 at 11:06 am
Olá Ulisses,
parabéns pelo blog…
Realmente o fork de processos/isolamento de abas é interessante com os recursos do SE Linux. Agora quanto aos XSSs continuamos na mesma! A web continua stateless e ainda necessita de cookies e outras artimanhas para garantir o estado da sessão.
Com isso fica impossível o browser evitar estes ataques.
Grande Abraço.
September 11, 2008 at 6:26 pm
Não sei se você já viu, mas fica a dica: http://crypto.stanford.edu/websec/chromium/ :) leia e me explica! heheheh
September 11, 2008 at 6:59 pm
Muito obrigado Wagner!
Valeu pelo toque, realmente me equivoquei.
Texto corrigido! Obrigado!
Abraço!
September 12, 2008 at 10:33 am
[...] por Ulisses Castro (uss·thebugΘgmail·com) – referência [...]
September 12, 2008 at 11:00 am
Ulisses,
Parabéns pelo artigo ;)
Semana que vem vou dedicar aos estudos de SELinux!
[]’s
Guto
September 12, 2008 at 12:45 pm
cara muito legal esse seu ponto de vista sobre os processos criados pelo navegador.
eu tb escrevi um poco sobre o Google Chrome e suas caracteristicas no meu blog.
httP://tadeuluis.wordpress.com
September 12, 2008 at 1:58 pm
nossa uqe poxação de saco.
September 12, 2008 at 7:42 pm
Haha!
José me lembrou de uma frase do lendário Fernando Ike:
“Em tecnologia não existe “Eu gosto de tal software”, se você gosta de algum software significa que você não deveria trabalhar com tecnologia, porque de software NÃO SE GOSTA!”
Abraço.