Transcrição do áudio
Bom, vou mostrar para vocês agora um reporte, um reporte final do mofa.govmm. Esse reporte, ele apenas com a análise da vulnerabilidade, porque não tem um ambiente de homologação para executar as atividades e confirmar e até mesmo, cara, tirar o falso positivo. Lembre-se que uma vulnerabilidade existe, mas não quer dizer que ela é explorada, 100% das vezes, porque talvez depende do contexto. Então, está aqui, né? Só para mostrar para vocês, lembrando que vai sair um projeto chamado Meu Deus. Lá no projeto Meu Deus é uma máquina virtual que nós podemos brincar de invadir ela, porque ela é feita para ser invadida mesmo. Aqui o mofa.gov.mm, nós descobrimos coisas pesadas sim, tá? Eles não passaram tão bem assim não, tá? Avaliação de segurança, coloca o nome da empresa ou do serviço que está sendo avaliado, o nome do consultor ou da empresa está executando esse trabalho, marca d'água, aqui em cima você pode pôr no topo o nome do reporte, espaço, empresa, no outro canto. Faz documento bacaninho. Então aqui está o alvo, que é a análise do Ministério de Relações Estrangeiras, principalmente com negócios. O cliente preparado, revisado, período, data de admissão desse documento e a versão desse documento e que ele é confidencial. Lembrando que, lógico, não estaria aqui assim tão disponível, não seria como eu posso dizer, vamos lá, não estaria sendo guardado de qualquer forma isso aqui, tá? Lembrando que todos os dados são públicos, vocês acompanharam, vocês viram que os dados são públicos, estão lá no site deles. As que colocaram, aqui você coloca o sumário automático gerado pela ferramenta, no caso Word ou OpenOffice, versão, data, autor e o que aconteceu. Geralmente essa lista aqui é grande. Eu não deixo passar de 10 não, porque se não fico enorme, eu começo a pagar os mais antigos, deixo ali uns 10 ali. Um aviso de confidencialidade, tem um contrato assinado, tudo mais. Sumário executivo, é aqui que o chefe da empresa vem, cara. Aqui o chefe da empresa vem, é aqui que ele vem e olhar. Ele está cagando para a parte técnica, ele quer tomar uma decisão rápida. Lembre-se que uma vulnerabilidade ou uma falha de segurança, gente, ela quando localizada, foi um pouco mais caro. Não tem como falar, vou dormir hoje sem pensar nessa falha. Se eu for dormir, naturalmente eu vou pensar na falha. O ideal é não dormir e corrigir a falha. Então o cara tem que tomar uma decisão muito rápida. Ele tem que sair dessa reunião com a tomada de decisão ali. Já realizada e a escolha se vai fazer a correção, se não vai, se vai parar o sistema, se vai desligar tudo, não sei, cara. Não sei o que está sobre a mesa ali naquele momento. Já vi, sim, desligar, inclusive minha palavra foi final às vezes, em desligamento, mais de uma vez inclusive, de desligamento total, que é o pior de tudo, cara, porque o serviço para, né? Para tudo. Bom, normal. Bom, então aqui repare que eu não estou vendo nenhuma severidade crítica no ambiente dos caras, está exposto, tem uma alta, três medes e uma baixa. Eu não costumo ignorar as severidades baixas, porque a severidade baixa pode ser, por exemplo, um DOS, desculpe, um DOS básico. Como assim? Vou explicar para vocês. As vulnerabilidades do tipo de negação de serviço são classificadas sempre ali embaixo. No máximo um médio. No máximo. E a galera negligencia isso aqui. Aí o site deles acaba tomando o DOS, na verdade, nem é um DOS, é um DOS de pacote único, e ninguém sabe o porquê. Porque o WAF nos segura. Você acha que o WAF vai segurar um ataque de negação de serviço de uma máquina única, uma única requisição, com uma única requisição? E tem cara na literatura em numeras vulnerabilidades e que a negação de serviço é feita com uma única requisição. Inclusive em 2026 tivemos uma. Não lembro onde foi, se foi na Apache. Eu não lembro, mas foi na Engine X, foi agora, em 2026. Uma única requisição. O era foi o Lightspeed, da Rostinger. Acho que foi esse, hein galera. Uma única requisição. Tá, derrubou. O WAF nos segura. Porque o WAF vem para segurar o quê? Tentativas de falhas conhecidas, principalmente payloads, vem URL's conhecidas do mal, não é isso? Segurar, ele é um dos elementos, ataque de negação de serviço nós defendemos em profundidade, tá? Ele é um dos elementos para nos ajudar a nos defender em uma determinada camada, não é isso? Então, mas como é que ele vai me proteger? Isso é um único hit. E é classificado como médio, cara. Foi classificado como médio. Esse último aí. Então, nós nunca podemos negligenciar esses baixos, médios aqui, tá? Informativo negligenciamos, mas não deveríamos também. A galera vai vir aqui, ó. Bom, complicado, hein? Então, aqui tem toda uma descrição, né? A avaliação tem por objetivo mapear de forma externa, a superfície de ataque conforme falamos é externa, pela internet, no site, a fase de documentação corresponde ao reconhecimento, footprint, enumeração passiva e ativa, afinal nós disparamos ali alguns pacotes, lembra? Serviços de tecnologia, etapas de validação, exploração mais cara, nós só olhamos, né? Nós não fomos não. Foram identificados serviços administrativos expostos conforme vimos, tá na internet. Cabeçalhar HTTP com problemas ali, por exemplo, de pressão de segurança, no WordPress inclusive, cara, isso aí é grave. Aí tá aqui. E aí o cenário do contexto, aí você coloca o contexto. Você define o que um sumar executivo desse tamanho mesmo. Não passa disso não. O chefe da empresa, ele olha isso, olha para esses números e decide, cara, pô, vamos chamar a equipe, tá? Vamos desligar, vamos suportar, não sei. Cara vai decidir aqui rapidamente aqui. A equipe técnica vai estar lá, tá? Não leva muita gente não, tá? Leva um só da equipe técnica, porque senão vira carnaval. Beleza? Todo mundo quer desfilar. Leva um. Um. E para a brincadeira, se for o caso, né? Se for o caso, vai para a brincadeira. O Alvo é um portal de infraestrutura do Ministério de Relações Exteriores, da República Democrática de Mianmar, que é a segunda ou terceira ditadura mais terrível do planeta hoje. Tem sistemas autônomos e distintos. Tem aqui a questão de detalhes técnicos. Esse é o site, essa é a organização, a hospedagem está aqui, o DNS está aqui e o fuso horário dele está aqui. Escopo. Lembra que eu falei do escopo? Tem que definir. Então definimos as tecnologias. Cara, talvez você até poderia colocar o cenário com o texto de um escopo, cara. O que é o que define o escopo? Domínio e subdomínio. Identificador puro ausente, em grande parte. Fizemos muito ausente aqui no curso, né galera? Faixas de rede associadas aos IP 103, 89, 48, 0. O 203, 81, 64, 0. E o 203, 81, 92, 0. Ele tem as máscaras de rede. Também nas barras. Serviços de resposta à internet nos hosts enumerados. HTTP, HTTPS, email, SSH, RDP e DNS. Não está tão trivial não, cara. Para essa empresa resolver esse problema. Porque SSH tão associado, pensa, você tem um SSH tão associado ao domínio que muita gente vai querer atacar, está fácil demais. Ou seja, o SSH tinha que estar em outro endereço IP, que não estaria no range. Poderia ser até de uma outra empresa. Mas como é uma ditadura, tudo é o mesmo bloco. Complicado. Não é como o capitalismo. Tem múltiplas e múltiplas empresas e dá para fazer isso. Então você tem SSH e RDP associadas aos IPs que estão associados ao site. Já é um grande problema para essa organização. Recomendaria trocar isso. Essa ideia. Se você quer realmente o DNS, o SSH e RDP, colocaria uma VPN em um outro IP que não estaria nesse range. E aí colocaria então uma subrede dentro da VPN. E fariam ainda um firewall dentro da VPN para a rede deles. Igual está no livro de Linux. Naquele meu livro de Linux, que está lá no GitHub, o último capítulo é VPN. Olha o que eu fiz lá para você ver. Você entender como faz um serviço decente com VPN. Então naturalmente. Fora de escopo. Exploração ativa. Lembra? Não vamos fazer isso não. Nós não vamos fazer engenharia social. Nós não vamos tentar roubar credencial de ninguém. Está fora do escopo. Está dentro do que nós combinamos. Detalhar janelas de testes, endereços e origem automatizados. Aí você coloca mais algumas observações ali. Responsável técnico, nome, gestor, consultor e tudo mais. Você tem que ter a metodologia. Porque a metodologia é usada para replicar o trabalho. Será que o seu documento é verídico? Será que o seu documento é sério? Bom, tem um monte de número ali. Um monte de informação. Então como eu refaço essa metodologia? Abordagem estruturada, alinhada referencial de reconhecimento de mercado, PENTEST ou ASPTEST e OSSTM entrega e conserta nas duas primeiras fases. E aí, remunera-se reconhecimento. Coleta passiva o ZIN de DNS, RUIs, subdomínios, tecnologias, enumerações em geral, banners, análise de vulnerabilidade conversões, conhecidas na base de exploração. Aqui você poderia arrancar, por isso está pendente aqui. Não fazemos e não inicializamos uma pós-exploração. Porque não tem como a gente fazer esses dois. Você poderia até chegar aqui e fazer assim, na boa. Pete ali o amarelinho ali. Para ficar bem claro, não foi feito não. Beleza? Análise preliminar de vulnerabilidades, porque nós não conseguimos localizar todas as vulnerabilidades. Ferramentas, DNS, consultas, DNS, procura do isso, inspeção de cabeçários HTTP, o ASPT Security cabeçários, leitura de API REST, Wordpress. Aqui, vou ler a chance. Enumeração de portas e serviços. Quer dizer que, contra esse alvo, desse contexto, nesse escopo, contra esses alvos, se você executar isso, você chega nos mesmos resultados que eu vou chegar. A severidade segue faixas de CVSS 3.1. Aqui é a severidade definida pela NIST. De 0 a 9 é crítico, de 9 a 10 é crítico, de 7 a 8 é 8.9, sacanagem. Alta, média, baixa, está ali. Então nós vamos trabalhar com isso aqui. Cronograma de atividades. Sempre tem que ter um cronograma de atividades. É importante. Eu hoje utilizo uma ferramenta. Por favor, se eu abrir ela aqui, eu vou expor o projeto. Eu vou colocar ela no Kali Linux e vou dar uma aula para vocês de uma ferramenta que eu fiz para fazer cronograma. Eu chamo de timeline. Lá eu chamo de timeline. O cronograma é interessante. Você fazer um cronograma se você vai fazer essas duas fases que eu deixei grifada aqui. Me pediram para fazer uma análise de um endereço IP da própria empresa. Endereço IP da própria empresa. Fiz um documento solicitando a permissão para fazer tal dia, tal horário. Não teve aprovação até o período que estava no meu cronograma. Eu abortei. Eu abortei. Quando você vai fazer qualquer tipo de exploração, reconhecimento ativo, se você não tiver um cronograma e as partes bem... Eu costumo também no serviço abrir o Tinos e ir nos grupos deles de TI e começar a colocar executando comando tal na máquina tal, executando comando tal na máquina tal, para deixar rastro que eu fiz aquele horário para não ser encarado como um agente interno malicioso. Cara, é muito perigoso. Um cronograma te salva de você ser demitido pelo próprio fato de ser o cara de segurança. Lembre-se, a TI, a Security tem dois pilares muito consolidados. Um é o conhecimento, o outro é a confiança. Se você perder um desses pilares, o prédio desaba. Entende? Dois pilares são importantes. Um deles caiu, meu amigo. Um deles é fraco? É fraco? Qualquer um desses dois caiu. Você caiu. Avaliação baseia exclusivamente em fontes abertas, os int, consultas passivas, para evitar encostar mãos caras, para evitar deixar rastro. Mas mesmo assim, ainda fiz alguns NMAP lá, né, galera? Severidades são estimativas, devem ser confirmadas, devem ser vistas. Os resultados... É uma fotografia puntual daquele momento, o cronograma que está ali, aconteceu ali. Quer dizer que pode ser que quando esse report chegue lá já foi corrigido, só que sem a necessidade do report parece que alguém trombou com isso e acabou corrigindo. Você não pareceu um ser humano mentiroso porque você fez um cronograma e bateu o print screen. Não é isso? Você não inventou nada. É por isso que a importância do print screen, esses documentos. E a cobertura limita-se aos ativos descobertos por os int. Ativos não indexados publicamente podem não constar nisso aqui porque não foi indexado e nós não tentamos invadir ninguém. Plug-ins, detalhados, certificados, tudo lá. Então vamos lá. Resumo de vulnerabilidades. Então o chefe decidiu ver detalhes. Então você pula do sumário executivo para cá. Já que eles decidiram ver as severidades. Então nós temos um problema aqui, serviço RDP exposto é alto. Nós podemos discutir aqui agora. A ausência de cabeçado de segurança HTTP segundo o WASP é médio. Segundo o WASP API West médio. Aqui nós temos também superfície de email ampla e SPF permissivo mal nas caixas de email deles lá, nos serviços de email dele. Isso é médio. Open SSH depreciado com CVE. Ele é baixo. Ele é baixo. Nós não conseguimos explorar ele. Beleza? Mas esse cara aqui tá vulnerável. Tem que rever isso aqui. Talvez podemos rever isso aqui. Podemos rever isso aqui. E divulgação de informações que podem... Viou o zinho que podem... Mas é muito difícil você parar isso aqui. Cara, é aquilo ali. Aí o cara fala assim, eu duvido que isso tá acontecendo. Duvido que isso tá acontecendo. Aí você desce. Vamos descer. A cada vez que nós estamos descendo, gente, nós estamos indo mais para o deep da história. Nós estamos indo mais para o inferno de Dante, que são níveis, não é isso? Nós estamos descendo, cara, essa bosta. Então tem aqui o RDP. Olha só, foi possível verificar até a versão do Windows com isso. Foi possível fazer uma enumeração com a leguinha. Descobri que o Windows é esse. É alto. 8.1, segunda escala lá do Mist. Tá aqui o CVSS. CVSS. É complicado, hein cara? A evidência, você pode bater um print screen ou você pode simplesmente pegar o output de um comando. E eu tô pegando o output de comando nessa ferramenta que eu utilizo. Por quê? Essa ferramenta que eu utilizo hoje, que eu desenvolvi, e ela é de graça, tá cara? Eu tô te vendo nada não. Ela é de graça. Ela é criptografada. E garante que não foi adulterado, que não foi roubado e que aquilo foi eu que coloquei. Praticamente, lembra? Que a criptografia serve pra isso? Então eu usei essas técnicas lá. Então cara, dá pra ver o impacto é alto, o RDP dando sopa. Beleza? Ainda mais com a enumeração de Microsoft Windows. Cara pode brutalmente tentar alguma coisa lá. Aqui nós temos um severidade médio, 5.4 segundo a NIST. É o CVSS estimado. Responsa HTTP do portal principal, inclui HSTS, que é positivo, porém não apresenta cabeçalho de segurança recomendado pelo WASP para Security Red Projects. Cara, você tem que ver isso aqui. Eu tô falando sério. A WASP tem esse projeto aqui que diz tudo que é interessante que se tem nos cabeçalhos HTTPS e o que não pode ter nos cabeçalhos HTTP. Eu fiz um comando script python, se não tá nesse curso aqui de Kali Linux, tá naquele curso lá de python para pentesters. Que eu mostro para vocês como que você extrai esses cabeçalhos e classifica vermelho, verde. Lembra? Vermelho, verde. Procura. X frame. Sempre que você tem um X ele é um cabeçalho não oficial, ele é um adicionado. Vamos colocar assim. E aí é interessante ter aqueles caras ali. A falta desses caras reduz as defesas dos navegadores contra click hijacking e mime sniffing. Só para ter noção. E naturalmente execução de conteúdo malicioso pelo seu próprio site. Então aqui tá um recorte. Poderia ter sido uma imagem. Aqui um recorte do output. E a recomendação é implementar content security policy completo segundo a OASP. Aqui nós temos um REST do WordPress exposto e enumeração de fingerprint, trazendo informação para o usuário sobre tecnologias. Isso é muito ruim. Muito ruim. O AdPresa, API, o Capitáculo P.Jason, restrição de campo de autenticação vazio, ou seja, bateu você consegue ir. Complicado. Tá aqui feito um GET sem nenhum tipo de autenticação e veio alguma coisa. Legal? Então opa, é interessante ver. Superfície de e-mail ampla, SPF e permissível. Então você tem lá no host de e-mail, no serviço de e-mail dos caras. Pontoação 4.3. Múltiplos serviços de internet ampliando a superfície de ataque justamente na caixa de e-mail. Além da caixa de e-mail, também tem uma pancada de serviço no mesmo endereço IP. O servidor identifica-se como Engine X frente a um post fix de transporte. Ou seja, o Engine X você consegue fazer isso. Ele consegue ser um concentrador de portas e serviços. Ele não serve só para HTTP, como nós usamos por padrão. Ele serve, por exemplo, para caixa de e-mail. O registro SPF utiliza então o qualificador AL, que apenas marca sem rejeitar mensagens de origens não autorizadas. Em contrapartida, o DMERC está corretamente em rejeite. Ponto positivo. Por isso que talvez uma exploração não seja tão efetiva aqui. Mas repara que o Engine X deles tornou para nós até versão de protocolos mais internos. Como você endurece essa política. O PSSH 8.9 não precisa dizer. Cara, embora essa severidade seja baixa, ela é altamente exploitável. Porque hoje nós temos exploits para isso. Vou explicar. O CVS nascem com os dados técnicos. Está lá no meu livro Hacker. Está lá a explicação sobre o VDP. V D P. E um número desse, uma severidade dessa de CVS, não é perpétua. Ou seja, esse CVS pode, com o passar do tempo, ter uma severidade aumentada ou reduzida. Com o passar do tempo descobre-se novas coisas. E não abre-se o novo CVS. Um CVS existente. Então eles ajustam. Então por isso que sempre você tem, todo dia, os CVS alterados. O alterado quer dizer novo e editado. O incrível que pareça. E aqui está explicando versão ou tal. Remonstrou, numerou até um Ubuntu. Cara dos caras. Dá para saber até que Ubuntu é, bicho. Sujeita a vulnerabilidade. Versões futuras foram corrigidas. Vamos fazer isso. No caso lá em 2023. Futuro para... Em 2023. Passado para nós, 2026. Chaves, Smartcard, AUSSH-Gente. Sem restrição de destino. Isso é ruim. A divulgação da versão facilita a correlação automática com vulnerabilidades conhecidas. E localizar mais detalhes sobre o ambiente. Aqui uma informação. Para escapar, Admin 1, MoFa, GovB. Para fazer uma engenharia social. Um Windows aqui também. Tem algumas informações aqui que vazaram. Beleza? Está aqui. As informações que vazaram. Está no Windows. Dá para brincar. Dá para brincar. Recomendações técnicas. Se o cara chegou aqui e ainda não acredita no seu reporte. E eu não duvido que isso aconteça. Eu tenho um trabalho que até agora está incompleto. Porque outra parte é retruca. Outra parte não aceita. Baixou a cabeça, não aceita. Outra parte não aceita. Não aceita. Está aberto. Eu só não liguei o foda-se porque eu não sou desse tipo de pessoa. Entendeu? Não é retruca. Então isso é normal. Mas chegar nesse ponto, o cara ainda retrucar? Bom, lá é uma ditadura, não é uma ditadura? O que acontece nas ditaduras? O que traz o reporte morre? O que é responsável pela merda morre? Gente, a Coreia do Norte é mais libertária que eles. E está aqui a severidade, quando foi localizado, o responsável que localizou. Porque a equipe pode ser grande. Então aqui nós temos uma conclusão. Uma conclusão bem xoxa. Porque eu sempre achei ridículo. Colocamos conclusão. Mas eu sempre achei ridículo. Porque para mim essa conclusão já é o que está lá no sumário executivo. Lá em cima. Obrigatoriamente esse campo tem que ter. Gente, esse aqui é o exemplo real. Usei umas ferramentas ali de forma real, contra um alvo real. E um penteste básico que poderia abrir portas. Então, como assim abrir portas? Esse penteste está bem claro que ele não foi na parte de exploração. Então agora você tem que fazer o seguinte. Próximo passo. Negociar com o teu cliente a montagem de um ambiente. Clone. Para isso você vai usar um tal de SGSGNS3. Estou com dificuldade de cilôrdia, galera. GNS3. Monta esse ambiente de homologação. Aí então você explora. Aí você pode falar assim, não, eu vou explorar. Porque do nada a equipe de TI pode virar e falar assim, cara, concordo. Não precisa nem de explorar. Vamos corrigir tudo isso. Porque a exploração demora 10 vezes a 15 vezes mais do que achar. Porque você tem que montar a ambi... Ah, a detalhe. Esqueci de falar. Aqui está então a conclusão. Você tem que entender, gente, que o... Que o... Você achar é um x do tempo. Cara, você explorar é de 10 a 15 x do tempo. Então eu gastei quanto tempo para fazer isso? Ah, eu gastei lá, tipo assim, dois dias de trabalho. Tá bom, então para explorar pode ser que nós vamos trabalhar em torno de... Ali, de 20 dias de trabalho a 30 dias de trabalho. A um custo por pessoa de 150 reais a hora. Ou você já quer corrigir já. O cara vai olhar assim, por que eu preciso para corrigir? Ah, puxa, tá aqui, né, cara? O que você tem que fazer? Tá aqui. Então, né? Eu duvido que o cara chegaria até aqui com... E aqui aqueles outputs que nós tivemos. A minha máquina está travando, galera. Aquelas capturas que nós tivemos durante as aulas. Que eu gravei para vocês. Estou aqui cuspido aqui embaixo apenas como comprovação. Beleza? Embora eu tenha colocado mais ali o textual mesmo. Porque o cara chega na página 12 e já... Então, tenta assim. Ou negocia, monta um ambiente de homologação para você testar. Ou ele já parte para correção. Próximo passo. Próximo passo você poderia fechar com ele um outro trabalho também. Que seria... Você provou sua capacidade. Então, o próximo passo seria propor para ele um pen test de APIs. Um pen test de infraestrutura. Um pen test de aplicações móveis. Se ele tem. Pode partir por isso aí. Você pode propor para ele também treinamento, para equipe, para as equipes. Cara, um cara que faz pen test, ele tem um leque de produtos amarrados. Então, ele sempre tem um cliente. Sempre tem um cliente. Falou, tem mais...