Arquivo

Archive for the ‘Segurança’ Category

Vamos falar um pouco sobre o NIST–Introdução

19 de agosto de 2019 1 comentário

Saudações,

Tenho andado afastado deste espaço por questões profissionais e o tempo que me tem faltado pra escrever, mas, quero retomar o andor aqui falando sobre o NIST para gestão e adequação de processos de segurança da informação.

Começarei pelos próximos dias uma série com explanações do modelo, documentos e referências para que possamos entender bem como usa-lo e se o mesmo cabe no dia a dia da sua empresa.

Pra quem ainda não sabe o NIST (National Institute of Technology and Standards), anteriormente conhecido como The National Bureau of Standards, é uma agência governamental não regulatória da administração de tecnologia do Departamento de Comércio dos Estados Unidos. A missão do instituto é promover a inovação e a competitividade industrial dos Estados Unidos, promovendo a metrologia, os padrões e a tecnologia de forma que ampliem a segurança econômica e melhorem a qualidade de vida. Fonte: Wikipedia

No nosso caso, o framework NIST consiste em 5 funções e 23 Categorias (com ID único) conforme abaixo:

image

Além do exposto acima, o NIST possui mais 108 sub-categorias distribuídas nas 5 funções que trazem consigo referências para implementação dos controles necessários a adequar o negócio às melhores práticas.

As referências não se limitam a controles escritos nas publicações especias do NIST (Ex: NIST SP-800-53), mas também a controles das nomas ISO, PCI, entrou outras.

Mas como eu implemento o NIST numa corporação? Fui perguntado a este respeito uns dias atrás e confesso que ali, percebi da necessidade de entrar mais a fundo nesta seara, não só para poder ajudar a quem precisa, mas também pelo fato da empresa onde trabalho ter adotado este framework e eu mesmo estar desenhando projetos de governança baseados nele. Outro fator a se considerar é a usabilidade cada vez maior deste framework no mercado atualmente, por isso, vamos começar no básico e ir se aprofundando nos próximos volumes desta série que começo hoje com vocês.

Se faz necessário um levantamento prévio do seu negócio antes de definir o método de implementação do NIST, ou até mesmo para saber se ele é o framework certo para sua realidade:

1. Se você é novo na área de segurança da informação e não atua mais no ambiente técnico, procure sair da sua mesa um pouco, se fazer conhecido por todos e buscar conhecer os detalhes do negócio que sua empresa atua. Essa é a base principal que vai ser o alicerce de todas as análises que serão feitas no decorrer do processo de implementação deste ou de qualquer framework de segurança existente.

2. Mostre a importância que segurança da informação tem para sua alta diretoria. Faça-os entender a necessidade do investimento e o quanto a empresa pode ser afetada por ataques, ou vazamento de dados… ou ambos. Não precisa “tocar o terror”, mas mostre a realidade de quem passou por experiências amargas no mercado. Traga pra si a confiança da alta diretoria mostrando o trabalho que está sendo feito e o que está por vir.

3 Mantenha bom relacionamento com sua área de TI… você precisará deles para implementações de segurança no ambiente técnico. Procure entender bem a situação atual da infra estrutura implementada para entender quais melhorias precisariam ser feitas.

4. Iremos abordar isso nos próximos volumes da série mas, organize reuniões com os departamentos diversos da corporação, principalmente RH, Jurídico e Financeiro, entendendo os processos de cada área e fazendo um mapeamento prévio de dados sensíveis, críticos e financeiros. Atue em parceria com sua área de TI (Infra estrutura e aplicações) para entender onde esses dados estão armazenados.

5. Tenha certeza de que o usuário final sabe que a corporação tem uma gestão de segurança da informação. Isso não tem o intuito de criar um clima de caça às bruxas, ou simplesmente monitorar se algo está errado, mas, fazer de forma a que o usuário se sinta um parceiro do time de segurança… falaremos disso mais para frente.

Agora que temos uma base na cabeça, iremos seguir com as formas de se implementar o framework NIST em sua corporação. A cada novo volume desta série irei abordar uma função do framework em detalhes. Aguardem!

Espero que essa iniciativa possa ser de grande ajuda!

Abraços

Uilson

Sobre Azure Web Application Firewall–escrito por Diogo Bacelar

21 de agosto de 2017 Deixe um comentário

Saudações,

Hoje começamos uma nova fase no blog Microsoft Space. Firmo uma parceria (que espero ser vitalícia) com um cara ao qual devo muito pela ajuda que me dá com seu conhecimento e pela pessoa que é. Trata-se do Arquiteto de Soluções Diogo Bacelar, expert em Azure e infra estrutura Microsoft, VMWare entre outros.

Iremos começar a partir deste post, com um trabalho voltado a OWASP (Open Web Application Security Project) voltado a Azure Web Application Firewall. Abaixo o texto escrito por ele que é o primeiro de muitos que teremos aqui neste espaço.

Aos seguidores e leitores deste blog, peço que aguardem, pois estaremos também alterando o nome do mesmo.

Fiquem com o texto abaixo do Diogo e aprendam muito com ele:

Fala pessoALL, tudo bem?

Sou o Diogo Bacelar e é com muito prazer que público pela primeira vez no blog do meu grande amigo Uilson Souza. Vim aqui para falar um pouquinho de uma tecnologia incrível, capaz de proteger nossos ambientes de servidores web e garantir um final de semana sossegado para nós administradores de TI.

Antes de mais nada vamos falar um pouco sobre o OWASP (Open Web Application Security Project/Projeto Aberto de Segurança em Aplicações Web), uma comunidade online que cria e disponibiliza de forma gratuita artigos, metodologias, documentações, ferramentas e tecnologias no campo da segurança de aplicações web. Legal não? Mas se eu te contar que os mais importantes players da área de segurança tomam seus padrões como referência para segurança em ambientes de webservers? Isso mesmo, mestres como PaloAlto, Barracuda, Check Point entre muitos outros usam esta base para seus produtos, padrões estes que você pode ser conferido no portal abaixo:

https://www.owasp.org/index.php/Category:OWASP_ModSecurity_Core_Rule_Set_Project

Já que falamos da referência de proteção quando se trata de servidores web, chegou a hora de explicar um pouco sobre o funcionamento de um Web Application Firewall ou WAF para os mais íntimos (eu amo esta sigla!) . Como você pode ver na topologia abaixo o WAF atua basicamente como um intermediador de todas as requisições que chegam para seu backend de servidores web e pode ser implementado de diversas formas, inclusive como serviço interno(Plugin) em seu próprio webserver.

image

Fonte da Imagem: researchgate.net (acesso em 19 de Agosto de 2017)

O funcionamento e modo em que o WAF irá operar, você quem determina. Ele pode ser Detectivo, que é quando o mesmo atua apenas monitorando todas requisições e às documentando em relatórios. Neste modo você não previne os ataques, mas fica ciente deles, podendo ou não executar alguma ação para preveni-los. Ou pode ser Preventivo, que é quando ele atua incisivamente em todas as ocorrências que venham acontecer em seu ambiente, por exemplo as que fazem parte do grupo de proteção padrão REQUEST-912-DOS-PROTECTION que foca nos ataques do tipo DOS, neste caso se o WAF identificar anomalias na conexão que se adequam a uma das regras que fazem parte deste grupo a conexão será abortada e seu ambiente continuará seguro.

Já que aprendemos como funciona um WAF, chegamos no foco da nossa publicação: O Azure Web Application Firewall. Como o próprio nome diz é um serviço oferecido pela Microsoft para proteção de ambientes de servidores web que estão hospedados em sua plataforma de nuvem pública, o interessante desta oferta é que ela é PaaS(para quem não conhece este conceito aconselho ver este meu webcast gravado aqui https://www.youtube.com/watch?v=rCWluYr3t9U&t=3806s onde abordo de uma forma mais palpável os conceitos básicos de cloud computing) por este fato, você apenas se preocupa em parametrizar o WAF e os servidores de backend que fazem parte da solução, decidir o modo de operação(Detectivo ou Preventivo) e habilitar quais regras OWASP que serão usadas no monitoramento do ambiente. Como é padrão da computação em nuvem, a base deste serviço é toda gerenciada pela Microsoft, isto quer dizer que você não se preocupa com atualizações de Kernel, Segurança, Novos padrões de regras e demais detalhes. O legal é o poder e magnitude que a ferramenta possui, seu custo tem uma média de 150US$/Mês para proteger seu ambiente de diversos tipos de ameaças como por exemplo:

· Proteção contra SQL Injection;

· Proteção contra Cross site scripting;

· Proteção Contra Ataques Comuns da Web, como a injeção de comandos, as solicitações HTTP indesejadas, a divisão de resposta HTTP e o ataque de inclusão de arquivo remoto;

· Proteção contra violações de protocolo HTTP;

· Proteção contra anomalias de protocolo HTTP, como ausência de host de agente do usuário e de cabeçalhos de aceitação;

· Prevenção contra bots, rastreadores e scanners;

· Detecção de problemas comuns de configuração de aplicativo (por exemplo, Apache, IIS etc.).

Ressaltando o último tópico acima, imagina você ter aquele ambiente super bem configurado e homologado (SQN) que permite até ratos entrarem no server, e simplesmente ele estar protegido por este super segurança na porta da grande festa? É disso que estamos falando meus amigos, este é o Azure WAF.

Querem saber e conhecer mais sobre esta possível nova maravilha do mundo? Em breve Uilson Souza e eu estaremos apresentando um webcast com uma recheada demonstração prática deste serviço do Microsoft Azure, fiquem ligados aqui no blog!

Deixem seus comentários, sugestões e elogios, vai ser muito importante para os próximos posts!

Até a próxima!

Diogo Bacelar

image

Petya Ransomware–algumas informações

27 de junho de 2017 Deixe um comentário

Saudações,

Hoje vamos dar um parênteses na série sobre DNS Policies do Windows Server 2016 para falar da onda de ataques massivos iniciada hoje (27/06/2017) na Ucrânia e que se estendeu por outros países da Europa.

image

Trata-se do Petya Ransomware (ou Petwrap), uma variante do WannaCry que também explora vulnerabilidades na porta 445 – protocolo SMB v1.

Um dos casos mais interessantes foi um supermercado na Ucrânia totalmente parado devido ao ocorrido, conforme imagem abaixo:

russia

Algumas informações:

O ocorrido foi noticiado pelo Telegraph e pela BBC nos links abaixo:.

http://www.telegraph.co.uk/news/2017/06/27/ukraine-hit-massive-cyber-attack1/

http://www.bbc.co.uk/news/technology-40416611

Uma das recomendações é se assegurar que o patch MS17-010 está instalado em seu ambiente. Se ainda não o fez e teve a sorte de não ser atacado pelo WannaCry, então não dê sopa ao azar e atualize.

Entre com alugmas ações pro-ativas:

 

1. Além do patch MS17.010, desabilite o protocolo SMBv1 em seu ambiente.

2. Se constatou a falta do patch em algum equipamento, remova-o da sua rede até que o mesmo esteja atualizado

Mais informações:

A brecha do protocolo SMB não é o único meio pelo qual o ataque pode ser executado. A famosa engenharia social tb pode trazer problemas. Portanto conscientize seus usuários da importância de evitar abrir emails com aenxos os quais não saiba a procedência. Abaixo o email associado ao virus:

wowsmith123456@posteo.net

O endereço do BitCoin informado para pagamento do “resgate”:

1Mz7153HMuxXTuR2R1t78mGSdzaAtNbBWX

Cuidado com os IP´s abaixo:

 

84.200.16.242 – porta 80

111.90.139.247 – porta 80

Portas usadas:

TCP 1024-0035, 135, 445.

 

A execução dos arquivos abaixo inicializa a ação do malware:

File Name            Order-20062017.doc       (RTF із CVE-2017-0199)

MD5 Hash Identifier       415FE69BF32634CA98FA07633F4118E1

SHA-1 Hash Identifier     101CC1CB56C407D5B9149F2C3B8523350D23BA84

SHA-256 Hash Identifier                FE2E5D0543B4C8769E401EC216D78A5A3547DFD426FD47E097DF04A5F7D6D206

File Size                6215 bytes

File Type              Rich Text Format data

 

File Name            myguy.xls

MD5 Hash Identifier       0487382A4DAF8EB9660F1C67E30F8B25

SHA-1 Hash Identifier     736752744122A0B5EE4B95DDAD634DD225DC0F73

SHA-256 Hash Identifier                EE29B9C01318A1E23836B949942DB14D4811246FDAE2F41DF9F0DCD922C63BC6

File Size                13893 bytes

File Type              Zip archive data

 

File Name            BCA9D6.exe

MD5 Hash Identifier       A1D5895F85751DFE67D19CCCB51B051A

SHA-1 Hash Identifier     9288FB8E96D419586FC8C595DD95353D48E8A060

SHA-256 Hash Identifier   17DACEDB6F0379A65160D73C0AE3AA1F03465AE75CB6AE754C7DCB3017AF1FBD

File Size                275968 bytes

 

Sugiro que você crie uma política no seu servidor de antivirus bloqueando a execução dos arquivos citados acima.

Maiores informações nos links abaixo:

https://virustotal.com/fr/file/027cc450ef5f8c5f653329641ec1fed91f694e0d229928963b30f6b0d7d3a745/analysis/

https://www.hybrid-analysis.com/sample/027cc450ef5f8c5f653329641ec1fed91f694e0d229928963b30f6b0d7d3a745?environmentId=100

No link abaixo a Symantec partilha dicas de como evitar o ataque:

https://www.symantec.com/connect/blogs/petya-ransomware-outbreak-here-s-what-you-need-know

Fique atento e mantenha seu ambiente atualizado. Além disso conscientize seus usuários sobre engenharia social e o perigo de se abrir anexos não conhecidos.

Abraços

Uilson

Sobre DNS Policies–Windows Server 2016–volume 04–Split-Brain DNS e Selective Recursion Control

29 de maio de 2017 3 comentários

Saudações,

Peço desculpas pela demora na publicação do quarto volume desta série. Estive em dias de muito trabalho e alguns percalços pessoais. Mas de qualquer forma vamos ao conteúdo de hoje – Split-Brain DNS.

A quem está chegando agora, abaixo os links para os outros 3 posts da série:

Sobre DNS Policies – Windows Server 2016 – volume 01 – Teoria

Sobre DNS Policies – Windows Server 2016 – volume 02 – Balanceamento de Carga

Sobre DNS Policies – Windows Server 2016 – volume 03 – Gerenciamento de Tráfego de Rede baseado em Geo-Localização

De acordo com a teoria que coloquei no volume 1 desta série, com o recurso de Split-Brain DNS os registros são divididos em diferentes escopos de zona no mesmo servidor DNS. Os clientes DNS recebem uma resposta baseado onde de fato estes clientes estão – internos ou externos. Este recurso pode ser configurado em zonas integradas ao AD ou para DNS Standalone Servers.

Também iremos criar políticas de seletive recursion para mitigação e vulnerabilidades em ambientes como este.

Em tempo – Este laboratório foi criado em meu ambiente tendo como base o laboratório do artigo Split-Brain DNS Deployment Using Windows DNS Server Policies do pessoal do Networking Blog da Microsoft. Como não tinha montado nada semelhante, me espelhei no conteúdo deles para criar o meu. Para aqueles que notarem a semelhança do meu lab com o deles, fica aqui registrado que a idéia inicial é do link citado e deixo a eles o devido crédito.

Vamos então a parte prática!

Imaginemos que tenho um site que deverá ser acessado tanto por usuários internos quanto externos. Esse possui informações de produtos da minha empresa que a equipe compartilha com parceiros externos.

Meu DNS posui duas interfaces, uma interna e outra externa

Interna – IP 10.10.1.100

Externa – IP 200.185.0.55

Meu servidor de aplicação interno responde pelo IP 10.10.1.10 e meu servidor de aplicação externo responde pelo IP 66.56.40.10 (lembrando que estes são IP´s fictícios, os IP´s que usei no laboratório do meu ambiente são outros e aqui fica só para ilustração)

Objetivo – Usuários na minha rede interna, irão acessar o site produtos.uilson.net do back-end Server interno e usuários externos irão acessar o back-end server externo, conforme o desenho abaixo:

 

image

Com o cenário definido, vamos ao procedimento que torna tudo isso real:

Vamos começar criando um zone scope para o acesso interno, ou seja, os acessos que virão pela interface 10.10.1.100:

Add-DnsServerZoneScope –ZoneName “uilson.net” –Name “InternalAccess”

Iremos criar o zone scope somente para o acesso interno, ficando o acesso externo direto no zone uilson.net no escopo padrão.

Agora vamos criar criar os registros para os acessos interno e externo, sendo que, para o acesso interno, iremos cria-lo já dentro do zone scope que acabamos de criar:

Registro de acesso externo – Add-DnsServerResourceRecord –ZoneName “uilson.net” –A –Name “produtos” –IPv4Address “66.56.40.10”

Registro de acesso interno – Add-DnsServerResourceRecord –ZoneName “uilson.net” –A –Name “produtos” –IPv4Address “10.10.1.10” –ZoneScope “InternalAccess”

Agora que temos o zone scope e os registros criados, vamos à política que irá diferenciar acessos internos e externos:

Add-DnsServerQueryResolutionPolicy –Name “SplitBrainPolicy” –Action Allow –ServerInterface “eq,10.10.1.100” –ZoneScope “InternalAccess,1” –ZoneName uilson.net

Feito!!!! Temos agora nosso ambiente direcionando as requisições internas ao site produtos.uilson.net para o back-end server interno e os acessos externos indo diretamente para o servidor externo, conforme definido no escopo inicial.

Poderiamos dizer que temos o trabalho finalizado, certo? Errado! Deixar o ambiente simplesmente como está pode, em alguns casos, criar uma vulnerabilidade que precisa ser mitigada.

Lembre-se que neste exemplo temos um DNS Server resolvendo nomes para recursos internos e externos. O que pode ocorrer aqui é que requisições internas e externas passem fazer queries por endereços de internet, podendo expor o ambiente a um Reflection Attack ou DNS Amplification Attack – um DDoS.

Neste caso, as resoluções recursivas para nomes externos precisa ser bloqueada e para isso criaremos outra política que vem a ajudar na mitigação desta vulneravbilidade:

image

Desenho original do link: https://blogs.technet.microsoft.com/networking/2015/05/12/split-brain-dns-deployment-using-windows-dns-server-policies/

O link que postei sobre DDoS DNS Amplification Attack pede que a funcionalidade da recursiva seja desasbilitada no servidor DNS. Neste caso, vamos desabilitar este recurso que será usado somente para requisições internas.

Desabilitando a recursiva: Set-DnsServerRecursionScope –Name . –EnableRecursion $False

No comando acima, a recursiva está sendo desabilitada para o escope default (tudo que está em uilson.net).

Agora vamos habilitar a recursiva somente para um escopo de clientes internos:

Add-DnsServerRecursionScope –Name “RecursionInternalClients” –EnableRecursion $True

Agora vamos criar a política que irá permitir a recursiva somente para clientes internos;

Add-DnsServerQueryResolutionPolicy –Name “SplitBrainRecursionInternal”-Action ALLOW –ApplyOnRecursion –RecursionScope “RecursionInternalClients” –ServerInterfaceIP “EQ,10.10.1.100”

Agora temos nosso ambiente executando dentro de uma melhor prática para o recurso do Split-Brain DNS.

Espero mais uma vez que o conteúdo possa ser útil e não perca o volume 5 desta série. Iremos falar sobre Filtering com DNS Policies.

Abraços

Uilson

Usando PowerShell para corrigir vulnerabilidades via chave de registro

28 de março de 2017 Deixe um comentário

Saudações,

O post de hoje visa ajudar os administradores de rede e analistas de segurança no momento em que precisam planejar a mitigação e correção de alguns tipos de vulnerabilidades em estações de trabalho via chave de registro.

Normalmente, a empresa dispõe de uma ferramenta que faz o scan, encontra, classifica e exibe em relatório quais vulnerabilidades uma ou mais estações têm e como corrigir.

Agora, imaginem uma determinada vulnerabilidade a ser corrigida em diversas estações? Como fazer?

Uma forma é usar o comando PSEXEC do SysInternals para executar este trabalho. A partir de um arquivo de lote eu uma simples variável (%1), o problema pode ser resolvido. Entretanto, como nosso foco é disseminar todas as formas de otimização de tarefas com PowerShell, queria mostrar como o usei para resolver um problema num case real.

Recebemos a notificação de que uma determinada área da empresa precisava ter todas as estações com o parâmetro de SMB Signing habilitado. Este parâmetro criptografa todo fluxo de informações entre a estação e um file server, num processo semelhante ao do SMB Encryption, feito no Windows Server 2012 R2, entretanto, o processo aqui visa proteger estações com Windows 7 Professional.

Não existe uma console administrativa ou um processo via GUI para tal, portanto, como falei, ou você o faz via PSEXEC do SysInternals ou, no nosso caso, usando PowerShell.

O processo consiste na criação de uma chave de registry que vai habilitar o SMB Signing na estação:

Chave a ser criada – EnableSecuritySignature

Tipo – DWORD

Valor – 1

Endereço – HKLM\System\currentcontrolset\services\lanmanworkstation\parameters

Comando PowerShell a ser usado:

Invoke-Command -cn computername {New-ItemProperty -Path "HKLM:\System\CurrentControlSet\Services\LanManWorkstation\Parameters" -Name EnableSecuritySignature -Value "1" -PropertyType DWORD -Force | Out-Null}

No comando acima, criamos a chave de registry remotamente em uma estação. Estou considerando aqui que o administrador tem amplo acesso ao equipamento remoto. Entretanto você pode se deparar com um ambiente em que seu usuário não tenha acesso àquela estação (ou grupo de estações) e precise declarar seu usuário. Neste caso você pode entrar com o seguinte comando:

$Auth = Get-Credential dominio\usuario
Invoke-Command -cn computername -Cred $Auth {New-ItemProperty -Path "HKLM:\System\CurrentControlSet\Services\LanManWorkstation\Parameters" -Name EnableSecuritySignature -Value "1" -PropertyType DWORD -Force | Out-Null}

Ao executar este comando, você será solicitado a entrar com o usuário e senha com permissão de acesso na estação:

image

Ao entrar com as credenciais necessárias, o script faz criação da chave com o valor conforme citado acima.

Você pode conferir se a chave foi mesmo criada usando comando abaixo:

Invoke-Command -cn computername {Get-Item -Path "HKLM:\System\CurrentControlSet\Services\LanManWorkstation\Parameters"}

Abaixo o resultado:

image

Agora vamos considerar o fato de termos uma lista de estações a serem corrigidas. Como fazer? Você pode usar o PowerShell ISE e criar um script para isso, usando laços do comando For EACH:

ForEach ($WKS in (Get-Content C:\ComputerList.txt)){
    Invoke-Command -cn $WKS {New-ItemProperty -Path "HKLM:\System\CurrentControlSet\Services\LanManWorkstation\Parameters" -Name EnableSecuritySignature -Value "1" -PropertyType DWORD -Force | Out-Null}
    }

Antes de executar o script acima, você precisa preencher o TXT citado na primeira linha e preencher com os nomes das estações. O processo será realizado em cada uma delas.

Espero que o conteúdo seja útil e ajude no seu dia a dia.

Abraços

Uilson

Último aviso aos TMG Admins–31/12/2015 The Final Countdown

16 de dezembro de 2015 5 comentários

Saudações,

Para aqueles que acompanham este blog (foi criado em 2009), muito falamos sobre Forefront TMG e tudo que envolve uma infra de firewall, forward proxy, reverse proxy e secure web gateway. Além disso, entreguei muitas palestras, treinamentos e webcasts sobre TMG e ISA Server de 2010 até 2012…ano em que foi publicado de forma oficial o fim da suíte Forefront:

https://uilson76.wordpress.com/2012/09/12/agora-de-forma-oficial-o-fim-do-forefront-tmg/

Neste post vamos falar um pouco sobre como sobreviver ao fim do suporte ao serviço de Web Protection (URL Filtering, SSL/Network/Malware Inspection e Mail Protection) que após a data citada, continuarão funcionando, porém, não mais receberão atualizações, ou seja, torna-se inseguro manter este serviço.

Lembrando que, o suporte ao produto TMG como um todo vai até Abril de 2020. – detalhes no link acima.

Como tudo tem um ciclo, chegou a hora do produto ser descontinuado e, a meu ver, de forma radical, a Microsoft não mais oferece nenhuma solução de firewall, forward proxy e secure web gateway. Estes serviços você precisa adquirir através de outros players de mercado (Sophos, WebSense, Fortinet, Kemp, etc).

Desde 12/09/2012 – data do post no link acima – orientamos clientes, parceiros e colegas com posts, palestras e muita consultoria sobre como planejar novas soluções e no que tange a este blog (que foi criado exclusivamente para assuntos voltados ao TMG), resolvi aumentar o leque de assuntos com trabalhos, projetos e dicas minhas, não só sobre TMG, mas, também sobre tudo acerca de infra Microsoft (dentro do meu conhecimento).

A algum tempo que não cito nada de TMG, afinal de contas, nem trabalho mais com a ferramenta. Entretanto, vi diversos clientes perdidos acerca de como continuar provendo serviços de firewall, proxy e reverse proxy com outras ferramentas.

Nesse caso resolvi investir muito tempo em estudos e consultoria para clientes meus, clientes que atendi na Microsoft e em diversos webcasts e palestras que entreguei, auxiliando no planejamento e escolha da melhor ferramenta para substituir o TMG.

Desde meados de 2014 publiquei uma série de posts focados em Web Application Proxy – solução de proxy reverso da Microsoft que vem como uma feature da Role Remote Access a partir do Windows Server 2012 R2, com muitas melhorias no Windows Server 2016 (agora no Technical Preview 4) e também sobre Azure AD Application Proxy – proxy reverso para publicações em núvem, disponível nos pacotes basic e premium do Azure Active Directory.

Essa coleção de posts que publiquei aqui, no Technet Wiki e FastVue podem ser encontrados nessa vasta documentação que coloquei no Docs.com da Microsoft:

https://docs.com/uilson-souza—#collection

No link acima você terá acesso a todos os meus posts sobre Web Application Proxy, configurações, dicas, patches necessários e também muitos estudos de caso e posts do pessoal da Microsoft.

Para clientes com poucos recursos e sem tempo para migrar, ou testar uma solução nova, o MVP Richard Hicks deu uma dica muito interessante. Desde o ISA Server, era possível adicionar filtros WEB de terceiros para fazer o serviço de secure web gateway.

Serviços como URL Filtering, Mail Protection, SSL/Network/Malware Inspection eram feitos por soluções de terceiros que pegavam o tráfego de um ISA/TMG e executavam o trabalho. Esta ainda é uma opção para quem possui infra TMG para pós 31/12 deste ano. Soluções como MCAfee e WebSense cobrem essa necessidade – apesar de serem caras e com complexidade de implementação maior que o normal.

Veja neste post do Richard Hicks como proceder, usando a solução ZScaler Cloud Based Security – http://tmgblog.richardhicks.com/2013/09/16/extending-the-life-of-forefront-tmg-2010-with-zscaler-cloud-based-security/

Além disso, meu amigo Scott Glew da FastVue escreveu um post muito bom sobre a necessidade de planejar e migrar a infra TMG – http://fastvue.co/tmgreporter/blog/finding-a-forefront-tmg-replacement-is-more-urgent-than-you-thought?utm_content=buffer9d9ad&utm_medium=social&utm_source=twitter.com&utm_campaign=buffer

Para termos uma perspectiva do ponto de vista das ferramentas disponíveis no mercado, escrevi diversos posts sobre o planejamento da nova infra estrutura com 4 opções distintas – Web Application Proxy, Kemp, Fortinet e Sophos.

Neste endereço você acessa uma collection minha no docs.com contendo os links para todos estes posts – https://doc.co/LQqHoG 

Com o conteúdo acima, o Blog Microsoft Space se despede de 2015, esperando o mesmo possa ser útil e ajudar aos colegas na missão de substituir sua infra TMG. Também quero desejar a todos um excelente natal com um 2016 repleto de sucesso e realizações!

Abraços

Uilson

Tips and Tricks–certificados digitais wildcard ou SAN no IIS Windows Server 2003, Windows Server 2008 e Windows Server 2012 R2

24 de novembro de 2015 Deixe um comentário

Saudações,

Depois de alguns meses carregados de palestras que entreguei e a série de posts sobre migração do TMG para plataformas distintas, comecei um trabalho de migração de aplicações WEB. A principio o processo pedia somente migração do IIS 6.0 para IIS 7.5 e 8.5.

Em alguns casos foi preciso manter a aplicação em ambiente legado (2003) por questões de compatibilidade e falta de tempo da equipe de DEV para migração.

Além disso, para as aplicações em ambiente legado e também as que foram migradas, era necessário uso de certificado digital wildcard. Como eram aplicações que não seriam acessadas externamente, pudemos usar o template Web Server da própria entidade certificadora interna (AD CS).

Nesse ponto encontramos alguns pontos que devem ser observados em aplicações WEB legadas em IIS 6.0. O padrão da empresa era manter diversos sites no IIS, cada um com sua aplicação e para cada uma delas seria necessário certificado. Pensei em gerar um wildcard mas, um certificado SAN contendo todos os comon names dos hosts já havia sido criado.

Em tese no IIS 6.0, você não pode ter diversos sites apontando para um único certicado, nem tampouco usar a porta 443 para mais de um certificado no mesmo IP. Tinha dua opções:

A) Adiconar IP´s associando a cada uma das aplicações

B) Usar uma linha de comando do ADSUTIL para fazer a criação de secure binds que possibilitarão o uso do mesmo certificado para as diversas aplicações associadas a um único IP

Bom, devido as condições e a urgência, optamos pela opção B. Para tal, você precisa executar o seguinte comando do ADSUTIL (lembrando que o ADSUTIL fica na pasta inetpub\adminscripts):

cscript.exe adsutil.vbs set /w3svc/<site identifier> /SecureBindings “:443<host header>”

No comando acima:

<site identifier> – identificação do site no IIS

<host header> – endereço ao qual o site irá responder – ex: app.uilson.net ou www.uilson.net

Antes de colocar o exemplo prático do comando para IIS 6.0, veja como verificar o ID do site nos IIS´s 6.0 e também no 8.5 do 2012 R2:

IIS 6.0 – Windows Server 2003

image

IIS 7.5 e 8.5 – Windows Server 2008 R2 e Windows Server 2012 R2:

image

Agora que você já sabe, ou se lembrou como identificar o ID# do site, vamos ao comando de forma prática. Apenas relembrando que o procedimento abaixo se aplica ao IIS 6.0:

cscript.exe adsutil.vbs set /w3svc/856101042/SecureBindings ":443:www.uilson.net"
cscript.exe adsutil.vbs set /w3svc/620385459/SecureBindings ":443:aplication.uilson.net"
cscript.exe adsutil.vbs set /w3svc/1953820003/SecureBindings ":443:webapp.uilson.net"

Importante frisar que:

. Os sites devem estar parados para que os comandos sejam executados

. Se houver qualquer alteração nas configurações de SSL do site, o comando acima deverá ser aplicado novamente

Dessa forma o problema foi resolvido e temos mais um tempo até a equipe de dev migrar a aplicação.

Para quem usa IIS no Windows Server 2008 e 2012, as coisas são um pouco menos trabalhosas. Uma vez que um site usa o certificado SAN (com mais deu common name criado ou wildcard), assim que vc assinala o certificado em um site, você receberá uma mensagem ao assinalar o mesmo certificado para o próximo, dizendo que o certicado já está sendo usado e que, todos os demais sites, se forem habilitados a porta 443, irão usar o mesmo que foi assinalado para os anteriores. Dessa forma ficou mais rápido e simples de resolver.

O redirect para https poderá ser feito por sua infra de proxy reverso, entretanto você também poderá faze-lo pelo próprio IIS de forma simples:

IIS 6.0 – Windows Server 2003 – Propriedades do site / custom errors / edit no erro 403.1 e inserir a URL https conforme abaixo:

image

IIS 7.5 e 8.5 – Windows Server 2008 e Windows Server 2012 R2 –

image

Estas foram alguns tips and tricks que estou compartilhando com vcs acerca de configuração de certificados digitais no IIS. Recomendo que, por questões de segurança, procure migrar suas aplicações legadas para o IIS 8.5, pois além de toda uma linha de features que você tem a disposição na versão atual, você ainda pode trabalhar com certificados de encriptação maior SHA2 em 256 bits.

Além disso, o IIS 8.5 tem suporte a SNI (Server Name indication), uma extensão TLS a qual possibilita saber o host e o domínio da página onde a requisição está sendo feita. Está disponível a partir do IIS 8.0 do Windows Server 2012 e é suportado em browser a partir do IE 7. Para saber mais detalhes, clique no link abaixo:

https://www.networking4all.com/en/ssl+certificates/faq/server+name+indication/

Outro benefício é o CCS (Centralized Certificate Store), onde você pode armazenar seu certificado em um arquivo PFX dentro de um file server ou onde você quiser, para que seja compartilhado por 1 ou mais web servers com IIS 8.5 do Windows Server 2012 R2.

Para saber detalhes e como implementar, leia o artigo que escrevi sobre esta funcionalidade no link abaixo:

https://uilson76.wordpress.com/2014/03/24/configurando-o-centralized-certificate-store-no-iis-8-5-do-windows-server-2012-r2/

Espero que as dicas e os links possam ajudar. Qualquer outra dúvida sobre certificados digitais no IIS que não foram cobertas neste post, podem deixar seus coments ou me contatar pela minha página no facebook.

Abraços

Uilson

%d blogueiros gostam disto: