"*" indica campos obrigatórios
Preencha o formulário a seguir para efetuar um novo cadastro de acesso ao site ESR.
Em caso de não possuir CPF, por favor entre em contato conosco clicando aqui.
"*" indica campos obrigatórios
A área de login está de cara nova!
O novo acesso a área de alunos passará a ser feito por meio do CPF ou e-mail, e será necessário atualizar sua senha de cadastro.
* Para os usuários que acessam via CAFe, não será necessário realizar a troca de senha, o login permanece o mesmo.
Atualize sua senha:
"*" indica campos obrigatórios
R$21.000,00
Carga horária:
12 horas
Nível do curso:
Avançado
A Internet das Coisas (IoT) assumiu o controle. Onde quer que olhemos, vemos mais sistemas entrando online, de roteadores a refrigeradores. Mas, à medida que esses sistemas se tornam cada vez mais integrados em nossas redes domésticas e comerciais, como sua postura de segurança acompanha sua crescente popularidade? A arquitetura Advanced Reduced Instruction Set Computing […]
Se você precisa de uma proposta personalizada para se capacitar e/ou capacitar sua equipe, preencha o formulário e fale com nossos consultores.
A Internet das Coisas (IoT) assumiu o controle. Onde quer que olhemos, vemos mais sistemas entrando online, de roteadores a refrigeradores. Mas, à medida que esses sistemas se tornam cada vez mais integrados em nossas redes domésticas e comerciais, como sua postura de segurança acompanha sua crescente popularidade? A arquitetura Advanced Reduced Instruction Set Computing Machines (ARM) introduziu uma nova família de processadores de computador que fornecem uma plataforma robusta que é ideal para executar uma ampla variedade de pequenos sistemas especializados.Infelizmente, a rápida expansão de novos dispositivos chegando ao mercado, juntamente com os ciclos de vida de desenvolvimento acelerados, significa que a segurança costuma ser uma reflexão tardia. A postura de segurança de muitos dispositivos IoT é ainda mais restrita devido a limitações de hardware e à necessidade de manter baixos custos de produção.Agora, mais do que nunca, há uma demanda por profissionais de segurança altamente qualificados que entendam as vulnerabilidades da IoT e a exploração no processadores ARM. No entanto, a complexidade do desenvolvimento do exploit e a dificuldade de adquirir e analisar o software que roda em sistemas IoT pode criar barreiras intimidadoras para quem deseja entrar nesse campo.SEC661: Desenvolvimento de Exploit ARM é projetado para quebrar essas barreiras. Ele foi desenvolvido desde o início para fornecer aos alunos uma base sólida no desenvolvimento de exploits na plataforma ARM.O curso começa examinando os fundamentos da arquitetura e algumas montagens básicas do ARM. A ênfase inicial é colocada nas principais estruturas de dados e em como elas funcionam juntas para que os alunos compreendam melhor por que certas vulnerabilidades ocorrem.Os alunos recebem as ferramentas necessárias para configurar e trabalhar em um ambiente ARM. A partir daí, passamos por vários laboratórios práticos que exploram as vulnerabilidades de corrupção de memória e mostram como criar entradas personalizadas para obter o controle da execução. Também abordaremos mitigações de exploração comuns e técnicas para contorná-las. Por fim, os alunos demonstrarão sua compreensão dos principais conceitos ensinados neste curso altamente técnico criando suas próprias explorações contra dois roteadores ARM emulados.
TODO CONTEÚDO DO CURSO É MINISTRADO EM INGLÊS.Importante! Traga seu próprio sistema configurado de acordo com estas instruções!Um sistema configurado corretamente é necessário para participar totalmente deste curso. Se você não ler e seguir cuidadosamente estas instruções, provavelmente sairá insatisfeito da aula porque não poderá participar dos exercícios práticos essenciais para este curso. Portanto, recomendamos fortemente que você chegue com um sistema que atenda a todos os requisitos especificados para o curso.É fundamental que você faça backup do seu sistema antes da aula. Também é altamente recomendável que você não traga um sistema que armazene dados confidenciais.Requisitos de hardware do sistemaCPU: o processador do seu sistema deve ser um processador Intel i5 ou i7 de 2,0 GHz ou superior de 64 bits. Sua CPU e sistema operacional devem suportar uma máquina virtual convidada de 64 bits.o A VMware fornece uma ferramenta gratuita para Windows que detecta se o seu host oferece suporte ou não a máquinas virtuais convidadas de 64 bits.o Os usuários do Windows podem usar este artigo para saber mais sobre seus recursos de CPU e sistema operacional.o Os usuários da Apple podem usar esta página de suporte para obter mais informações sobre a capacidade do Mac de 64 bits.BIOS: a tecnologia de virtualização de hardware VT (VT-x) da Intel deve ser habilitada nas configurações de BIOS ou UEFI do seu sistema. Você deve ser capaz de acessar o BIOS do seu sistema durante a aula. Se seu BIOS for protegido por senha, você deve ter a senha.USB: Pelo menos uma porta USB 3.0 tipo A disponível é necessária para copiar grandes arquivos de dados das unidades USB 3.0 que fornecemos em sala de aula. A porta USB não deve estar bloqueada em hardware ou software. Alguns laptops mais novos podem ter apenas portas Type-C menores. Nesse caso, você precisará trazer um adaptador USB Type-C para Type-A.RAM: 16 GB de RAM são necessários para a melhor experiência. Para verificar no Windows 10, pressione a tecla Windows + I” para abrir Configurações e, em seguida, clique em Sistema e, em seguida, Sobre. Suas informações de RAM estarão na parte inferior da página. Para verificar em um Mac, clique no logotipo da Apple na parte superior do canto esquerdo da tela e clique em Sobre este Mac. Espaço livre no disco rígido: 100 GB de espaço GRATUITO no disco rígido é essencial para hospedar as VMs e os arquivos adicionais que distribuímos. As unidades SSD também são altamente recomendadas, pois permitem que as máquinas virtuais funcionem muito mais rápido do que os discos rígidos mecânicos.Sistema operacional: qualquer sistema operacional (Windows, macOS ou Linux) que possa executar VMware Workstation Player/Pro ou VMware Fusion. Aqueles que usam um host Linux devem poder acessar as partições ExFAT usando o kernel apropriado ou os módulos FUSE. Requisitos Adicionais de HardwareOs requisitos abaixo são adicionais aos requisitos básicos fornecidos acima. Antes do início da aula, você deve instalar o software de virtualização e atender aos requisitos adicionais de hardware e software conforme descrito abaixo. Se você não ler e seguir atentamente estas instruções, sairá insatisfeito da aula, pois não poderá participar dos exercícios práticos essenciais para este curso.Requisitos Adicionais de Software7-Zip: Os arquivos zip da máquina virtual podem ser muito grandes (50 GB ou mais) e algumas ferramentas de arquivamento, mesmo as ferramentas integradas do Windows, podem falhar. 7-Zip é conhecido por funcionar.VMware Workstation ou Fusion: Observação: VMware Workstation ou Fusion é obrigatório. O VMware Player não atenderá a esse requisito. Você deve ter a capacidade de tirar instantâneos da máquina virtual e não pode fazer isso com o VMware Player.O VirtualBox não é compatível e pode interferir em nossos laboratórios. Ele não deve ser instalado em um sistema que você planeja usar para esta aula. Se você não possui uma cópia licenciada do VMware Workstation ou Fusion, pode baixar uma cópia de avaliação gratuita de 30 dias da VMware. A VMware enviará a você um número de série com limite de tempo se você se registrar para a avaliação em seu site.Credential Guard: se o seu computador host estiver executando o Windows, o Credential Guard pode interferir na capacidade de executar VMs. É importante que você inicie o VMWare antes da aula e confirme se as máquinas virtuais podem ser executadas. É necessário que o Credential Guard seja desligado antes de entrar na aula. Definições de configuração do sistemaAdministrador local: Algumas das ferramentas usadas no curso exigirão acesso de administrador local. Isso é absolutamente necessário. Se sua empresa não permitir esse acesso durante o curso, você deve providenciar um sistema diferente.
SEÇÃO 1: Fundamentos de Exploit no ARMA Seção 1 começa com uma visão geral do ARM e como ele se diferencia de outras arquiteturas. Em seguida, mergulhamos em algumas instruções comuns de montagem do ARM e mostramos como elas interagem com o sistema. Com a emulação, podemos trabalhar diretamente em um ambiente onde podemos depurar programas ARM e percorrê-los uma instrução por vez. Analisamos detalhadamente a pilha e como ela pode ser abusada por vulnerabilidades que permitem que um invasor obtenha o controle da execução. Nós desenvolvemos esse conhecimento escrevendo nossos próprios exploits ARM para alguns cenários diferentes. Encerramos a seção um examinando diferentes tipos de mitigações de exploração e como elas mudaram o jogo para os invasores. SEÇÃO 2: Explorando dispositivos IoT Começamos a Seção 2 examinando detalhadamente alguns shellcode ARM. Examinamos caracteres ruins e diferentes cenários que podem exigir modificação e remontagem do shellcode. A partir daí, mudamos nosso foco para a Internet das Coisas (IoT) e começamos extraindo algum firmware. Em seguida, analisamos uma exploração do Netgear que foi divulgada recentemente em 2020. A Programação Orientada a Retorno (ROP) é abordada em detalhes e mostramos como encontrar gadgets e construir cadeias ROP personalizadas. Em seguida, examinamos como esse tipo de exploração pode ser usado contra um roteador Dlink emulado. Por fim, examinamos as diferenças entre o ARM de 32 bits e o de 64 bits, percorrendo alguns shellcode do ARM de 64 bits e usando-o para explorar um estouro de buffer.
Recomenda-se familiaridade com algum tipo de linguagem assembly. Abordaremos alguns dos fundamentos em aula, mas qualquer experiência em uma linguagem de montagem seria um grande avanço.Conhecimento prático da linguagem de programação CFamiliaridade com o sistema operacional Linux, incluindo navegação no sistema de arquivos e execução de comandos básicos, bem como uso de um editor baseado em console, como vim ou nano.Capacidade de editar e executar scripts Python básicos
Ao final do curso, o (a) aluno (a) será capaz de: Utilizar técnicas para executar o ARM em um ambiente emulado Entender os fundamentos da montagem ARM Escrever explorações ARM para aproveitar estouros de buffer baseados em pilha Explorar mitigações e soluções alternativas comuns Trabalhar com shellcode ARM Construir algoritmos utilizando a Programação Orientada a Retorno (ROP) Explorar dispositivos IoT em ARM Realizar o desenvolvimento de algoritmos para a exploração de processadores ARM de 64 bits