grsecurity 패치가 Vanilla Kernel에 포함되지 않은 이유는 무엇입니까?


22

grsecurity패치 (또는 패치가 제공하는 보안 기능)가 기본적으로 커널에 포함되지 않는 이유는 무엇입니까? 보안의 이점을 살펴보면 바닐라 커널이 그다지 안전하지 않은 것 같습니다.

이것이 절충 (보안 조치를 피하려는 일부 응용 프로그램) 인 경우 grsecurity, 바닐라 커널에서 사용 가능하게하는 옵션 일 수 있습니다.

주류 바닐라 커널에 많은 것들이 있기 때문에 커뮤니티가 포함하고 싶지 않은 이유를 이해하기가 어렵습니다 grsecurity.


정치적 문제인 것 같습니다. Torvalds는 패치 중 일부가 쓰레기라고 생각합니다. 또한 참조 퀄리스 보안 권고를 - 스택 영역으로 충돌 하고 UAF refcount_t, 더 CONFIG_VMAP_STACK 취약점을, 그리고 무시 안전 부팅 우회 / 루트킷 방법 OSS의 보안 메일 링리스트.

커널 암호화 메일 링리스트에 대한 과거의 제안들로부터, 나 자신과 다른 사람들은 Torvalds 레이블 "inane"에 배치되었습니다. 따라서 문제에 직면 한 사람들은 단지 탐욕스러운 사람들 만이 아닙니다. 랜덤 : 컴파일러 경고 침묵 및 레이스 수정을 참조하십시오 . 이 스레드는 {u} 랜덤을 준비하기 전에 사용하는 드라이버에 dmesg를 제공하는 것에 대한 토론입니다. (잘 모르겠지만 많은 드라이버가 장치를 올바르게 시드하기 전에 사용합니다. Cf. systemd는 초기화 전에 urandom에서 읽습니다 )

답변:


23

(저는 grsecurity 개발자입니다.)

jsbillings의 답변LWN 기사 에서 논의 된 이메일 게시물을 기반으로합니다 .

여기서 중요한 맥락은 grsecurity 나 PaX 개발자 모두 메일 링리스트 토론에 참여하지 않았다는 것입니다. LWN 기사에 대한 PaX 팀의 의견이이를 정리합니다. 우리는 기본 포함을위한 패치를 제출 한 적이 없습니다. 간단한 이유 중 하나는 우리가 업스트림으로 해결하지 못할 아이디어와 구현을 가진 사람들이기 때문입니다. 또한, 우리는 안티 보안이 매우 많은 개발자 그룹과 번거로운 메일 링리스트 논쟁에 참여해야합니다 ( 2012 H2HC 프레젠테이션 참조).이에 대한 자세한 내용은). 우리는 시간과 자원이 제한되어 있으므로 가능한 한 가장 효과적인 방법으로 미래의 보안 기술을 만들고 모든 사람이 무료로 사용할 수 있도록하기로 결정했습니다. PaX 팀이 논평에서 언급했듯이, 우리는 보안에 대한 포괄적 인 견해를 가지고 있으므로 개별 기능의 분리 및 업스트림에 많은 장점이 있다고 믿지 않습니다.


흥미로운 LWN 기사에 대한 링크가 마음에 들었습니다. 고맙습니다. 나는 아직도 커널 개발자 그룹이 "대부분의 안티-보안"이라는 의견을 읽고 혼란스러워하고 있습니다. 물론 어떤 종류의 통찰력도 갖지 못하지만 걱정되는 것처럼 보입니다 : (. 혼란은 보안이 OpenSource와 Linux에 대한 "가장 강력한 논쟁"중 하나라고 생각합니다. 현재 우분투 기반 시스템에 대해 매우 위협 받고 있습니다. ? 내가 얘기 할 grsecurity처럼, 그것을 주셔서 감사합니다 우리가 무지 인 경우 OS 워스의 - 보안 "을 더 눈에 볼 수있는"무엇을 할 것, 조금으로 남겨 남아 있습니다.
humanityANDpeace에게

10

과거 grsecurity 개발자들이 Linus가 커널 변경을 받아들이도록 설득하는 데 문제 가 있었던 것 같습니다 . 문제는 다음과 같습니다.

  1. 거대한 코드 덩어리를 제출하고 조각으로 나누지 않음
  2. Linus는 많은 변경 사항을 "미친"것으로 생각합니다. 이는 Linus가 향후 개발 계획과 함께 작동하지 않는다고 말하는 방법 일 것입니다.

이것들은 꽤 흥미로운 점입니다. 아직도 배우기-BLOB조차도 알지 못했습니다 (이진 데이터 일 것입니다. 맞습니다. 오픈 소스가 아닌 것 같습니다). 잘 정보가 좋습니다. 언급 된 이유가 사실이라면 여전히 부끄러운 일입니다. 나는 grsecurity 패치 세트와 관련된 보안 개선 아이디어를 좋아합니다.
humanandANDpeace

1
@humanityANDpeace "blob"는 "이진 큰 개체"(일반적으로 데이터베이스 의미이지만 때로는 다른 곳에서도)를 의미하거나 "무엇이든 큰 덩어리"에 대한 속어 일 수 있습니다. 이 경우 jsbillings는 후자를 의미합니다. 더 세분화되지 않은 큰 소스 코드 덩어리입니다. 프로그래머 자신이기 때문에 리뷰를 보지 않고도 그 사람들과 함께 일하는 것이 얼마나 실망 스럽습니다.
CVn
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.