OpenBSD é a primeira família BSD do sistema operacional a lançar atualizações para seus lançamentos estáveis para mitigar o Meltdown.
Vulnerabilidade. Como faço para corrigir Meltdown no sistema operacional OpenBSD Unix?
Como já dito antes no artigo Uma Breve Introdução ao BSD, Part II, o OpenBSD é um sistema operacional de código aberto do tipo Unix, que é descendente da Berkeley Software Distribution (BSD). Theo de Raadt o forkeou do NetBSD. Um problema de segurança muito grave foi encontrado e corrigido no kernel do OpenBSD.
Um problema de segurança muito grave foi encontrado nas CPUs da Intel. Vulnerabilidade da CPU Meltdown CVE-2017-5754 quebra o isolamento mais fundamental entre as aplicações do usuário e o sistema operacional. Este ataque permite que um programa acesse a memória e, portanto, também os “segredos” de outros programas e do sistema operacional. Foi anunciado em 3 de janeiro de 2018. Foi descoberto e relatado de forma independente por várias equipes, incluindo o Google Project Zero. Esta página mostra como proteger ou corrigir a vulnerabilidade Meltdown no OpenBSD Unix.
Corrigindo vulnerabilidade Meltdown no OpenBSD
A correção da vulnerabilidade Meltdown suportada para as versões do OpenBSD versão 6.1 e 6.2 (amd64) e a atualização do syspatch para a versão 6.2 estão agora disponíveis. Primeiro, faça o login no OpenBSD Box usando o comando ssh ou o console do sistema:
$ ssh vivek@192.168.122.124
Encontre sua versão atual do Kernel
Execute o seguinte comando uname:
$ uname -r
Deve retornar algo semelhante a isto:
6.2
Torne-se usuário root com o comando su ou doas:
$ su -
Aplicando Patch
O OpenBSD usa um comando chamado syspatch. É um utilitário para buscar, verificar, instalar e reverter os patches binários do OpenBSD. Ele deve ser executado como usuário root. Quando executado sem quaisquer opções, o comando syspatch deve instalar todos os patches ausentes, incluindo o meltdown. Digite o seguinte comando syspatch:
# syspatch
Você pode verificar os patches instalados com o seguinte comando:
# syspatch -l
Deve retornar algo semelhante a isto:
001_tcb_invalid 002_fktrace 003_mpls 004_libssl 005_ahopts 006_prevhdr 007_etherip 008_unbound 009_meltdown
Reinicie a Box
Escreva o seguinte comando para reiniciar:
# reboot
Verifique a instalação da correção:
# dmesg | grep -i meltdown
Deve retornar algo semelhante a isto:
cpu0: FPU,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,SSE3,PCLMUL,SSSE3,FMA3,CX16,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,DEADLINE,AES,XSAVE,OSXSAVE,AVX,HV,NXE,RDTSCP,LONG,LAHF,3DNOWP,FSGSBASE,BMI1,HLE,AVX2,SMEP,BMI2,ERMS,INVPCID,RTM,RDSEED,ADX,SMAP,MELTDOWN cpu1: FPU,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,SSE3,PCLMUL,SSSE3,FMA3,CX16,PCID,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,DEADLINE,AES,XSAVE,OSXSAVE,AVX,HV,NXE,RDTSCP,LONG,LAHF,3DNOWP,FSGSBASE,BMI1,HLE,AVX2,SMEP,BMI2,ERMS,INVPCID,RTM,RDSEED,ADX,SMAP,MELTDOWN
Você pode querer atualizar pacotes, para isso use o comando pkg_add:
# pkg_add -Uuv
Deve retornar algo semelhante a isto:
Update candidates: quirks-2.367 -> quirks-2.367 quirks-2.367 signed on 2017-10-03T11:21:28Z Update candidates: gettext-0.19.8.1p1 -> gettext-0.19.8.1p1 Update candidates: lftp-4.7.8 -> lftp-4.7.8 Update candidates: libiconv-1.14p3 -> libiconv-1.14p3 Update candidates: libidn-1.33 -> libidn-1.33 Update candidates: readline-6.3 -> readline-6.3 Update candidates: rsync-3.1.2p0 -> rsync-3.1.2p0
Consulte OpenBSD Commit sobre a vulnerabilidade Meltdown no OpenBSD.