그들은 이미 알 것입니다 오픈 BSD, BSD 제품군의 운영 체제입니다. 당신이 그것을 모른다면 그것은 오픈 소스 Unix와 같은 시스템이며 분명히 Linux 커널을 기반으로하지 않습니다. NetBSD에서 파생 된 후손이지만 이식성을 두 번째로두고 보안에 중점을 두었습니다. 음, OpenBSD 6.2의 출시와 함께 매우 흥미로운 기능을 가진 커널이 나올 것입니다.
OpenBSD 6.2는 시스템 사용자가 시스템을 재부팅하거나 업데이트 할 때마다 고유 한 커널을 생성합니다. 이 기능 KARL이라고합니다 (Kernel Address Randomized Link) 내부 커널 파일을 무작위 순서로 다시 연결하여 매번 고유 한 바이너리 Blob을 생성하도록합니다. 이것은 OpenBSD의 현재 버전이 미리 정의 된 위치를 사용하기 때문에 새로운 것입니다. 그 결과 내부 파일이 매번 모든 사용자를 위해 동일한 바이너리에 링크되고로드됩니다.
발전 테오 드 라트 설치 중, 업데이트 또는 부팅 중에이 특정 이미지를 생성하여 작동합니다. 사용자가 시스템을 부팅, 업데이트 또는 재부팅하면 새로 생성 된 커널이 새 바이너리로 대체됩니다. 그리고이 모든 것이 무엇입니까? 음, 이런 식으로 각 항목에 대해 계층 또는 메모리 세그먼트가 이미 정의되어있는 대신 애플리케이션 및 커널 코드가 실행되는 메모리 주소에 대해 임의의 위치가 만들어져 메모리 영역을 가리키는 공격의 사용이 복잡해지고 성능이 향상됩니다. 보안.
또 다른 유사한 기술이 있습니다. KASLR(커널 공간 레이아웃 무작위화), KASLR은 매번 다른 바이너리를 생성하는 대신 동일한 바이너리를 임의의 위치에로드한다는 점에서 KARL과 다릅니다. 이는 오늘날 Windows 및 Linux 기반 운영 체제가 사용하는 운영 체제입니다. 둘 다 같은 목적을 위해.