พวกเขาจะรู้อยู่แล้ว OpenBSDซึ่งเป็นระบบปฏิบัติการของตระกูล BSD หากคุณไม่รู้จักระบบนี้เป็นระบบที่มีลักษณะคล้าย Unix แบบโอเพนซอร์สและไม่ได้ใช้เคอร์เนลของ Linux อย่างเห็นได้ชัด เป็นลูกหลานที่เกิดขึ้นจาก NetBSD แต่ทิ้งความสามารถในการพกพาไปยังสถานที่ที่สองเพื่อเน้นเรื่องความปลอดภัยเป็นจุดแข็ง ด้วยการเปิดตัว OpenBSD 6.2 จะมาพร้อมกับเคอร์เนลที่มีคุณสมบัติที่น่าสนใจมาก
ปรากฎว่า OpenBSD 6.2 จะสร้างเคอร์เนลที่ไม่ซ้ำกันทุกครั้งที่ผู้ใช้ระบบรีบูตหรืออัปเดตระบบ ฟังก์ชั่นนี้ เรียกว่า KARL (ลิงก์สุ่มที่อยู่เคอร์เนล) และทำงานโดยการเชื่อมโยงไฟล์เคอร์เนลภายในใหม่ตามลำดับแบบสุ่มเพื่อให้สร้างหยดไบนารีที่ไม่ซ้ำกันในแต่ละครั้ง นี่เป็นเรื่องใหม่เนื่องจาก OpenBSD เวอร์ชันปัจจุบันใช้ตำแหน่งที่กำหนดไว้ล่วงหน้าซึ่งส่งผลให้ไฟล์ภายในถูกเชื่อมโยงและโหลดลงในไบนารีเดียวกันทุกครั้งและสำหรับผู้ใช้ทั้งหมด
การพัฒนาของ Theo de Raadt Ra มันจะทำงานโดยสร้างอิมเมจเฉพาะนี้ระหว่างการติดตั้งระหว่างการอัพเดตหรือเวลาบูต หากผู้ใช้บู๊ตอัพเดตหรือรีบูตเครื่องเคอร์เนลที่สร้างขึ้นใหม่จะถูกแทนที่ด้วยไบนารีใหม่ และทั้งหมดนี้เพื่ออะไร? นี่คือวิธีสร้างตำแหน่งแบบสุ่มสำหรับที่อยู่หน่วยความจำที่มีการเรียกใช้แอปพลิเคชันและโค้ดเคอร์เนลแทนที่จะมีลำดับชั้นหรือเซ็กเมนต์หน่วยความจำที่กำหนดไว้แล้วสำหรับแต่ละสิ่งซึ่งทำให้การใช้ประโยชน์จากช่องโหว่ที่ชี้ไปยังพื้นที่หน่วยความจำมีความซับซ้อนและ ปรับปรุงความปลอดภัย
มีอีกเทคนิคหนึ่งที่คล้ายกันเรียกว่า KASLR (การสุ่มเค้าโครงพื้นที่เคอร์เนล)ซึ่งแตกต่างจาก KARL ตรงที่แทนที่จะสร้างไบนารีที่แตกต่างกันในแต่ละครั้ง KASLR จะโหลดไบนารีเดียวกันในตำแหน่งสุ่มซึ่งเป็นระบบปฏิบัติการเช่น Windows และ Linux ที่ใช้อยู่ในปัจจุบัน ทั้งสองเพื่อวัตถุประสงค์เดียวกัน