Linux 커널이 “Retpoline”을 활성화했는지 확인하는 방법은 무엇입니까? 완화하는 솔루션으로 소개되었습니다. 그러나 나는 언급

“스펙터 (Spectre)”보안 취약점은 “레토 폴린 (Retpoline)”이 위험을 완화하는 솔루션으로 소개되었습니다. 그러나 나는 언급 한 게시물을 읽었습니다.

없이 커널을 빌드하는 경우 CONFIG_RETPOLINE썽크 기호가 내보내지지 않기 때문에 retpoline으로 모듈을 빌드 한 다음로드 할 것으로 예상 할 수 없습니다.

retpoline으로 커널을 빌드하면 retpoline 으로 빌드되지 않은 모듈을 성공적으로로드 할 수 있습니다 . ( 소스 )

커널에 “Retpoline”이 활성화되어 있는지 확인하는 쉽고 일반적인 / 일반 / 통합 방법이 있습니까? 설치 프로그램이 적절한 커널 모듈 빌드를 사용할 수 있도록 설치하고 싶습니다.



답변

메인 라인 커널 또는 대부분의 주요 배포판 커널을 사용하는 경우 전체 retpoline 지원을 확인하는 가장 좋은 방법은 ( , 커널이로 구성 CONFIG_RETPOLINE되어 있고 retpoline 가능 컴파일러로 빌드 된 경우)“전체 일반 retpoline을 찾는 것입니다. 에서”입니다 /sys/devices/system/cpu/vulnerabilities/spectre_v2. 내 시스템에서 :

$ cat /sys/devices/system/cpu/vulnerabilities/spectre_v2
Mitigation: Full generic retpoline, IBPB, IBRS_FW

보다 포괄적 인 테스트를 원한다면 spectre_v2systree 파일 없이 커널에서 리포 틀린을 탐지 하려면 어떻게되는지 확인하십시오 spectre-meltdown-checker.


답변

retpoline 지원에는 새로운 컴파일러 버전이 필요하기 때문에 Stephen Kitt의 답변은이 특정 경우에보다 포괄적입니다.

그러나 일반적으로 대부분의 배포판에는 다음 위치 중 하나에서 커널 구성 파일을 사용할 수 있습니다.

  • /boot/config-4.xx.xx-...
  • /proc/config.gz

그럼 간단하게 zgrep CONFIG_RETPOLINE /boot/config* /proc/config.gz


답변