Podcast de kernel do Linux com Open Source Summit Europe 2018



A Cúpula Europeia de Código Aberto 2018 foi realizada na semana passada em Edimburgo, Escócia. Apresento a você uma seleção de relatórios interessantes sobre o kernel do Linux que pude participar.

1. Entre os principais discursos, eu gostaria de destacar o Relatório do Kernel, de Jonathan Corbet. Ele destacou as principais tendências de desenvolvimento do kernel Linux nos últimos anos. Separadamente, ele se concentrou em eliminar as vulnerabilidades sensacionais de Spectre e Meltdown. Achei seus pensamentos interessantes sobre como o eBPF obscurece os limites entre o espaço do usuário e do kernel.


2. Especialistas da OTH Regensburg e Siemens desenvolveram o tema Spectre e Meltdown em relação às tarefas em tempo real. Eles conversaram sobre como a correção dessas vulnerabilidades afetou o desempenho do kernel Linux com o patch Preempt-RT e o desempenho do hypervisor Jailhouse.


3. Christoph Lameter fez uma excelente introdução ao gerenciamento de memória do kernel do Linux. Ele falou sobre a organização da memória física e virtual do processo, sobre como rastrear em detalhes seu status no espaço do usuário. Em suma, tudo perfeitamente disposto nas prateleiras. E de que outra forma um mantenedor de alocador nuclear pode atuar? Slides:



4. Deixe-me também contar sobre o meu relatório sobre as lições da participação no Projeto de Autoproteção do Kernel. O objetivo do relatório era envolver mais entusiastas da segurança do kernel Linux e compartilhar minha experiência no desenvolvimento de ferramentas de proteção do kernel. Falei sobre o alinhamento de forças na comunidade de segurança e o mapa das principais ferramentas de autodefesa . Em seguida, sobre como bloquear a desalocação de memória dupla no kernel Linux e trabalhar com a introdução de PAX_MEMORY_STACKLEAK no kernel vanilla. Após o relatório, comunicação útil e troca de idéias se seguiram. Slides:



5. Darren Hart falou sobre arrumar o kernel do Linux com o Kconfig usando fragmentos de configuração. O kernel possui mais de 10.000 opções diferentes; eles dependem um do outro de uma maneira complexa; portanto, é muito inconveniente rastrear alterações na configuração do kernel usando o sistema de controle de versão. Para facilitar a tarefa de gerenciamento de configuração, o script merge_config.sh foi introduzido do projeto Yocto no kernel vanilla, que permite trabalhar com fragmentos de configuração. Darren disse como usá-lo.


6. Will Deacon fez uma excelente e complexa palestra sobre as primitivas do kernel do Linux que definem a ordem das operações de E / S e DMA. Ele começou descrevendo um modelo formal de memória do kernel, revisou as barreiras comuns da memória e depois passou para a semântica das barreiras de E / S. Sua excelente maneira de falar manteve o público focado até o fim.


7. Lukas Bulwahn, da BMW, falou muito bem do projeto de pesquisa SIL2LinuxMP , do qual também participei este ano. Este projeto está explorando a possibilidade de usar o Linux em sistemas com sistemas críticos de segurança. Antes de tudo, Lucas explicou o conceito de confiabilidade do ponto de vista da engenharia e depois falou sobre os aspectos técnicos e organizacionais do projeto SIL2LinuxMP, que envolve várias grandes empresas de manufatura, pessoas da comunidade acadêmica e especialistas independentes.


8. Matthew Garrett, que trabalha recentemente no Google, falou sobre uma série de patches chamados Kernel Lockdown . A idéia é muito boa - é necessário ser capaz de proteger o kernel do superusuário, por exemplo, para que ele não possa colocar o rootkit. Portanto, o kernel do Windows faz isso há muito tempo. Acontece que todas as principais distribuições Linux já são fornecidas com o Kernel Lockdown. No entanto, essa série de patches ainda não está no núcleo da baunilha, e Matthew também explicou o contexto político desse fato.

9. No fórum da KVM, participei de uma excelente apresentação sobre o modelo de segurança QEMU. Stefan Hajnoczi descreveu a arquitetura de virtualização baseada no QEMU / KVM, o perímetro de ataque de seus componentes e as formas de reduzi-lo. Slides:



10. Greg Kroah-Hartman fez uma conversa fervorosa sobre como a comunidade de kernel Linux eliminou as várias opções do Meltdown e Spectre, como a Intel se comportou, quais lições foram aprendidas em toda a história e o que devemos esperar no futuro. Por alguma razão, não há slides ou vídeos em domínio público, mas eu apenas tenho que mencionar o discurso dele.

11. Também quero falar sobre o relatório de Knut Omang (Knut Omang) sobre o sistema de teste de unidade para o kernel do Linux. Gostei muito da performance dele e do trabalho em si. O palestrante trabalha no Oracle e, infelizmente, ele recebeu a tarefa de suportar um driver de kernel Linux de 20.000 linhas. Este driver é de qualidade muito baixa e não é adequado para o kernel da baunilha. No entanto, a Oracle fornece e você precisa manter esse código. Mas Knut não se desesperou, ele decidiu corrigir sistematicamente a situação com a ajuda do desenvolvimento orientado a testes e testes de unidade. O palestrante falou sobre o Kernel Test Framework , que ele está desenvolvendo para isso.

12. Por fim, falarei sobre o relatório anual de Kees Cook sobre o status do Projeto de Autoproteção do Kernel (KSPP). A idéia do projeto é que a segurança do sistema operacional seja mais do que apenas corrigir erros no código e compartilhar o acesso aos recursos. O sistema operacional deve ser executado com segurança em caso de erro ou tentativa de ataque. Portanto, o KSPP visa eliminar classes inteiras de vulnerabilidades e métodos de exploração no kernel do vanilla Linux. A Case Cook é a líder deste projeto e também a mantenedora de vários subsistemas nucleares. Em seu discurso, ele deu uma visão geral dos resultados do KSPP da versão 4.14 a 4.20 do kernel. Slides:



Tenha uma bela vista!

Source: https://habr.com/ru/post/pt428165/


All Articles