
Pelo terceiro ano consecutivo, continuamos com sucesso a tradição de estágios de verão. Como nos anos anteriores, realizamos estagiários em duas áreas técnicas: o departamento de pesquisa e o departamento de análise de segurança. Os resultados dos estágios anteriores podem ser encontrados aqui:
E hoje contaremos como foi o
verão de h4ck 2018 .
Como mostra a prática, o fluxo principal de currículos internos chega ao departamento de análise de segurança; Havia muito mais pessoas desejando passar o verão na Digital Security e, portanto, criamos um questionário especial para candidatos, disponível em nosso site. Os candidatos tiveram que se esforçar e demonstrar não apenas seus conhecimentos e habilidades, mas também um desejo de se desenvolver profissionalmente. Graças a isso, pudemos avaliar o nível de treinamento de futuros estagiários e escolher o mais digno deles. Além disso, desta vez a Segurança Digital se concentrou exclusivamente no estágio do escritório - não consideramos a opção de estágio remoto.
Breve informaçãoOs funcionários do departamento de análise de segurança
dividem o Wi-Fi vizinho, realizam testes de penetração em redes corporativas, analisam a segurança de aplicativos da Web e software corporativo e também examinam cuidadosamente o código fonte, incluindo aplicativos móveis e bancários.
Os funcionários do departamento de pesquisa resolvem problemas relacionados à engenharia reversa, pesquisa e exploração de vulnerabilidades, desenvolvimento de sistemas e auditoria do código C / C ++; realizar pesquisas em aprendizado de máquina, blockchain e outras áreas interessantes. A equipe está desenvolvendo ativamente plug-ins, scripts, ferramentas para automatizar a busca por vulnerabilidades tanto estáticas quanto dinâmicas (difusas).
Por quem estávamos esperando? Amantes de tarefas interessantes que não cedem a dificuldades e que amam o que fazem!
1. IntroduçãoFicamos felizes em ver nomes e sobrenomes familiares nas listas de candidatos ao estágio novamente - alguns de nós já nos visitaram no ano passado e gostaram muito de tudo :) A empresa apóia apenas essa iniciativa. Além disso, se você voltar, terá mais DSec-merch da marca!
Estes são os presentes que preparamos este anoUm pouco mais sobre o processo de seleção. Questionários eletrônicos foram publicados em nosso site: o questionário do departamento de pesquisa permitiu obter uma idéia inicial das habilidades potenciais do estagiário ao contrário, e no questionário do departamento de análise de segurança havia dez pequenas tarefas que poderiam / deveriam ser resolvidas. Não exigimos a solução de todas as tarefas, mas, quanto mais respostas corretas o candidato deu e melhor ele explicou o curso de seu raciocínio, mais atenção recebeu durante a avaliação. No entanto, isso não significa que era mais fácil entrar no departamento de pesquisa :) Em vez de um questionário detalhado, os funcionários preferiram realizar uma fase de entrevista pessoal, onde descobriram detalhes sobre o nível de treinamento em uma conversa pessoal.
Como antes, foi oferecido aos estagiários uma lista de tópicos que eles poderiam fazer durante o estágio. Além disso, os caras podiam oferecer seu próprio tópico, estávamos sempre prontos para ouvi-los.
Demos palestras aos trainees sobre várias áreas de estudo; Obviamente, eu queria que essas palestras fossem interessantes e úteis para todos, independentemente do nível de treinamento do trainee.
As palestras incluíram:
- Auditoria de segurança do Active Directory
- Redes de dispositivos e protocolos de rede
- Vulnerabilidades na Web
- Escalonamento de privilégios no Linux e Windows
- A exposição da arquitetura Intel 64
- O estudo de grandes projetos C ++ no exemplo do Chromium
- Recuperação de nomes de funções na ausência de informações simbólicas
- Instrumentação de código
- SMT, Z3, SSE, DSE, ...
- E outros ...
No final do
Summ3r 0f h4ck, os participantes deram palestras para nós - eles nos disseram se haviam atingido seus objetivos, que dificuldades encontraram durante a pesquisa e quais foram os resultados do estágio. Todos que chegaram à final receberam um certificado de participação
Summ3r 0f h4ck 2018 . Alguns dos estagiários preferiram se unir e trabalhar juntos, e é claro que apenas recebemos esse desejo.
Por uma boa tradição, realizamos uma pequena pesquisa com participantes que chegaram ao final com sucesso e agora compartilham com você seus comentários sobre o verão em Segurança Digital.
As perguntas para a mini entrevista foram as seguintes:- Por que você decidiu fazer um estágio na Digital Security? O que te atraiu para a empresa?
- Você gostou do estágio? O que foi especialmente memorável? Como a realidade coincidiu com suas expectativas?
- Conte-nos sobre sua tarefa / tarefas.
- As tarefas nas quais você trabalhou durante o estágio pareciam interessantes? Havia algo que você queria fazer, mas falhou?
- Você está pronto para retornar à empresa para um estágio ou trabalhar?
E aqui estão algumas respostas dadas por alguns estagiários:
Pavel Knyazev, tópico “Análise de contaminação da arquitetura ARM”:- Depois de terminar o segundo ano, percebi que não tinha habilidades em segurança da informação. Eu queria não apenas ouvir os cursos, mas trabalhar com as mãos. A primeira coisa que me ocorreu foi um artigo sobre o Summer of H3ck da Digital security on Habré. Tendo quase zero de experiência, eu decidi ir.
- Gostei do estágio. Uma sala espaçosa, uma mesa grande e silêncio - recebi um local de trabalho na sala para estagiários. Dois estagiários, um viciado em trabalho, estão sentados nas proximidades. De tempos em tempos, os mentores vêm até nós para discutir planos, ações adicionais. Eles estão sempre prontos para explicar algo, para colocar o link necessário. Lembro-me especialmente da facilidade de comunicação com eles - apenas Anton, Sasha, Dima. Você pode esquecer por um tempo que um grande chefe está sentado na sua frente e apenas conversar.
- Parece-me que eu tinha um tópico muito exótico: "Análise contaminada da arquitetura ARM". Considerando que nem a análise da contaminação nem a arquitetura do ARM realmente sabiam alguma coisa, fiquei "incrivelmente feliz" por ter esse tópico. Para começar, era necessário entender as diferenças entre o ARM e o x86 (eu estava familiarizado apenas com ele), estudar o montador dessa arquitetura e abordar os modos. Então era necessário lidar com os meios existentes, que ... não eram. Em vez disso, eles eram, no entanto, uma ferramenta não adequada para tarefas de segurança da informação, a segunda não possuía flexibilidade e funcionalidade suficientes e a terceira, a biblioteca DrTaint , apenas recentemente começou a existir. Minha tarefa era finalizar esta biblioteca. Uma agradável surpresa me aguardou aqui: a biblioteca DrTaint é baseada no DynamoRIO, e eu sabia um pouco. Apesar do DrTaint ser muito pequeno, demorou quase duas semanas para estudar o código-fonte e entender os princípios de sua operação. Somente após essas duas semanas eu senti que não estava indo para o fundo. Mais uma semana se passou e tudo começou a melhorar. Eu parei de ter medo e comecei a mudar o código fonte. Se algo desse errado, o DynamoRIO imediatamente me informou com a queda. Como resultado do estágio, consegui encontrar e corrigir vários erros na biblioteca, adicionar novos recursos e demonstrar seu desempenho. No final, fiquei surpreso ao perceber que entendo DBI e assembler para ARM.
- Depois que descobri que a análise de contaminação facilita o trabalho dos inversores e até ajuda a detectar vulnerabilidades de software, o desenvolvimento do DrTaint realmente me interessou. O que eu fiz foi o suficiente para mim.
- Eu coleciono coisas.
Executando um dos testesEugene Lukin, tema do Golang Social Bot:- Pelo fato de o DSek tratar os alunos normalmente e permitir que eles trabalhem com projetos de trabalho reais. Além disso, ouvi falar da empresa há muito tempo e sei que pessoas legais trabalham nela.
- Provavelmente foi ainda melhor do que eu pensava. Gostei que todo mundo do departamento possa falar sobre praticamente qualquer assunto e, se houver algum problema, resolva-o. Esperavam mais formalidades, por assim dizer
- Eu tinha um tema do Golang Social Bot. Este bot é usado durante o teste de penetração. O objetivo principal era escrever módulos que coletam os dados necessários, por exemplo, senhas, arquivos de configuração e arquivos, em princípio, permitem interagir com o sistema de arquivos. Também era necessário pensar em corrigir o trabalho do sistema e da rede dentro da rede corporativa.
- Sim, como eu disse, escrevi módulos. E, embora muito trabalho tenha sido feito, ainda há muito a ser feito.
- Sim, pessoas legais trabalham aqui, com quem você pode aprender muito.
Uma parte do trabalho pode ser encontrada
aqui .
Dmitry Frolov, tópico “Finalização do novo mecanismo UEFITool”:- Depois de ler resenhas de estagiários de anos anteriores, percebi que projetos interessantes relacionados ao reverso estão me esperando aqui. E eu não perdi.
- Gostei muito do estágio e a realidade superou todas as minhas expectativas. A atmosfera muito amigável da equipe criou condições favoráveis para o trabalho no projeto, e a solução das tarefas definidas para mim trouxe prazer.
- Estou interessado no desenvolvimento reverso de várias partes de baixo nível há muito tempo, em particular o BIOS, então escolhi a tarefa apropriada. Consistiu na finalização do programa UEFITool NE , projetado para funcionar com imagens do UEFI BIOS. A assinatura NE significa New Engine: o UEFITool original foi decidido reescrever uma vez, e assim nasceu sua nova filial NE. Mas o UEFITool New Engine ainda não suportava a possibilidade de modificar o firmware com sua remontagem subsequente, como era na ramificação original, e eu tive a tarefa de retornar essa função e até adicionar a capacidade de modificar as seções da NVRAM (que não eram suportadas na ferramenta antiga ) Eu lidei com a tarefa e realizei mais algumas (por exemplo, era necessário adicionar a capacidade de analisar algumas estruturas complexas). Meu curador e eu contatamos o desenvolvedor da ferramenta e em breve uma solicitação de recebimento será enviada.
- As tarefas são muito interessantes. No processo de resolvê-los, obtive uma base de conhecimento muito boa no campo da BIOS e quero continuar desenvolvendo-a.
- Eu adoraria voltar para um estágio e um emprego.
Arquitetura generalizada do UEFITool New Engine modificadoO progresso da aceitação de uma solicitação pull no repositório principal UEFItool pode ser visto
aqui .
Tema "Cisco Config Analysis Tool"Os seguintes estagiários trabalharam em um grupo em um tópico comum, a Cisco Config Analysis Tool. O resultado do trabalho deles pode ser encontrado
aqui .
Natalia Khodukina :
- Há muito tempo ouvi falar da empresa como uma das empresas líderes no campo da segurança da informação na Rússia.
- Eu gostei e a realidade coincidiu completamente com as expectativas. Descobrimos que nós três trabalhamos no tópico, portanto, além das habilidades práticas e teóricas, aprendi a trabalhar em equipe. Nas discussões, surgiram novas idéias e soluções; além disso, nos ajudamos a encontrar e corrigir erros e deficiências, compartilhamos nossa (pequena) experiência e recebemos uma nova. Também foi bom se comunicar com os funcionários, todos eles tentaram transmitir informações da maneira mais compreensível, estavam prontos para responder a todas as perguntas e explicar o que permanecia incompreensível.
- Fomos confrontados com a tarefa de desenvolver um utilitário para analisar arquivos de configuração de equipamentos de rede quanto à presença de pontos fracos e configurações inseguras. Para isso, era necessário familiarizar-se com o equipamento de rede, aprender sobre várias configurações, tentar configurar o switch e verificar sua operabilidade e resistência a ataques.
- As tarefas foram realmente interessantes, porque Estudei tecnologias de rede antes do estágio. Tudo o que foi planejado acabou por ser feito. No entanto, no processo de pesquisa e desenvolvimento, surgiram muitas novas idéias que, espero, vamos perceber.
- Claro que sim.
Mikhail Dryagunov:- Empresa de segurança conhecida. Entre os demais, destaca-se por diversos estudos e publicações.
- Sim, está tudo super! Relatórios interessantes e tópicos do projeto. Dos mais lembrados - desenvolvimento de equipe e tudo relacionado a ele.
- Eu tive um projeto em grupo. Primeiro, decidimos pela funcionalidade básica, depois dividimos os tópicos (era necessário entender o que e como funciona antes de escrever verificações para tudo isso), criamos uma espécie de wiki para possíveis pontos fracos e recursos de segurança nos comutadores. Quando tudo estava pronto, começamos a escrever o próprio programa. No final do estágio, escrevemos a funcionalidade originalmente planejada, mas surgiram ainda mais idéias e recursos desejados. Planejamos concluí-los e fazer uma apresentação na ZN.
- No começo, eu queria lidar com o tópico de trabalhar com o PayPass / PayWave, mas ele já foi utilizado. O tópico da pesquisa sobre protocolos de roteamento dinâmico também foi interessante, mas me pareceu muito aberto.
- Claro!
Ekaterina Fedoshchenko, tópico “Restaurando estruturas de dados ao longo de caminhos dinâmicos”:- A reputação da DSec é quase lendária. Ouvido sobre as atividades de pesquisa da empresa, foi incrivelmente interessante tocar tudo isso. Pareceu-me que essa é uma grande chance de descobrir como o trabalho está sendo realizado em segurança prática da informação, quais habilidades são necessárias.
- Dizer que você gostou é não dizer nada. Lembrei-me de muitas coisas: e maravilhosas palestras, muito obrigado aos rapazes que prepararam os discursos; e comunicar-se com mentores e colegas em estágios - que tipo de pessoas entusiasmadas e decididas existem, quanto você pode aprender com elas. Realidade e expectativas - nem idealistas nem pessimistas - coincidiram perfeitamente, e essa foi apenas a experiência mais legal. E também consegui experimentar uma sensação incrível quando o conhecimento adquirido foi útil não apenas como parte do estágio.
- O tópico do meu estágio foi a restauração de estruturas de dados ao longo de traços dinâmicos. Há uma quantidade razoável de trabalho acadêmico em domínio público, mas as ferramentas que resolvem esse problema podem ser contadas nos dedos. No decorrer do trabalho, considerou-se duas dessas ferramentas - Recuperador e dynStruct ; descobriu-se que apenas um está gerenciando (dynStruct), mas requer refinamento. Também foi necessário combinar os resultados com a estática do HexRaysPyTools - um plugin legal para o IDA Pro , escrito por meu mentor. Apesar de alguns sucessos terem sido alcançados, ainda existem muitos problemas não resolvidos. Além disso, seguindo o conselho de Dmitry, o trabalho foi iniciado em um aplicativo de teste que deveria abranger o máximo possível de maneiras de trabalhar com estruturas e classes para verificar a eficácia das ferramentas existentes, porque essa também é uma tarefa bastante urgente.
- Tudo foi muito interessante. Eu queria, mas não pude dedicar mais tempo às tarefas do estágio: é bem possível combinar com o trabalho, embora às vezes não houvesse força e disciplina psicológica suficientes. Um excelente, no entanto, motivo para conhecer a si mesmo e entender no que trabalhar.
- Com muito prazer. Muito obrigado aos organizadores e estagiários!
Novos módulos para dynStructVitaliy S., tópico “Procurando bugs nas interfaces da web de hipervisores (proxmox / kimchi / oVirt)”:- Esta é a única empresa da cidade que realiza esses eventos. Pode haver outras empresas, mas elas são desconhecidas para mim. Eu acho que algumas universidades podem de alguma forma interagir diretamente com empresas de segurança da informação, sem disponibilizar estágios, como a Digital Security. Eu sei sobre essas práticas. Acredito que outras empresas devam aprender com a Segurança Digital. Se não estiver na organização, pelo menos na ideia e acessibilidade. A empresa atua profissionalmente na segurança prática da informação.
- Gostei do estágio. Ela não pode deixar de gostar. Lembrei-me do fato de ter conversado com os caras que estudavam na universidade, da qual uma vez me formei. Em especialidades familiares para mim com um conhecido corpo docente :). Os laboratórios são legais. Eu não esperava que houvesse tantas máquinas virtuais. Expectativa / Realidade. Percebi que minhas habilidades deixavam muito a desejar. Eu percebi que direções eu deveria seguir. O que ler e onde procurar.
- Minha tarefa era encontrar pontos fracos e vulnerabilidades na virtualização de sistemas de controle (web) (código aberto). Nesse caso, são projetos nos quais os desenvolvedores monitoram a segurança de seus desenvolvimentos, mas não em todos os lugares. O tópico acabou sendo bastante volumoso e o trabalho continua além do escopo do estágio.
- A maioria das tarefas é interessante. Eu não os chamaria de luz. Ao escolher um tópico, é difícil decidir sem se apressar ao extremo. É bom ver palavras familiares nos títulos dos tópicos. Existem alguns hacks da vida. Não pegue mais de um tópico. Será difícil para você combinar os tópicos em si e o trabalho, a menos que o tópico não coincida com o trabalho principal. Pegue um tópico, que inclui áreas que você pode ter encontrado ou no qual está trabalhando atualmente. Existem várias orientações pessoais, mas são muito pequenas. Basicamente, o que você encontra no trabalho prático, e que existem pensamentos, mas não há tempo para verificar.
- Pronto para retornar para um estágio. Trabalho - pode estar no futuro.
Hipervisores afetados no estudo:
Nikita Knizhov, o tema de “Projetos de código-fonte aberto distorcido orientados por feedback”:- Porque só conheço algumas empresas além da Digital Security que lidam com as mesmas coisas interessantes do departamento de pesquisa.
- Eu realmente gostei. Foi especialmente interessante conversar com aqueles que trabalham profissionalmente no campo, algumas palestras úteis com exemplos da vida são muito úteis.
- Minha tarefa era realizar um estudo de fuzzers (garfos e afins em afl), entender os princípios de trabalho, estruturar e comparar em um aplicativo de teste que fuzzer encontrou quantas vulnerabilidades.
- Uma tarefa muito interessante, a área é relevante na ciência e na indústria. Eu não sabia que os difusores são tão astutos e difíceis de organizar. Eu até enlouqueci a vulnerabilidade dos dos no ffmpeg durante o estágio.
- Claro que estou pronto!
Resumo de Fuzzing dos Recursos de Código AbertoStepan Besklubov, tópico “Rastreamento com base nos recursos de hardware do processador ARM”:- Eu conheço o DSec há muito tempo, principalmente de amigos e conhecidos no campo da segurança da informação, também estou muito atraído pela participação ativa da empresa na vida da segurança da informação russa e internacional.
- Eu certamente gostei do estágio. , . .
- « ARM ». ARM CoreSight, IDA Pro. ARM TrustZone, , .
- . ARM-. , .
- .
IDA Pro, ,
( CoreSight ).
, “ ”:- , , , .
- , : , , , , (/), () () .
- « ». IDA PRO. , , , , () . , () , , , , . .
- Sim , , , .
- Claro!
IDA PROConclusão, , , , . , , :)
!