Please use this identifier to cite or link to this item: https://cuir.car.chula.ac.th/handle/123456789/74178
Title: Boundwarden: thread-enforced spatial memory safety through compile-time transformations
Other Titles: ผู้คุมขอบเขต: สายโยงใยรักษาความปลอดภัยเชิงพื้นที่สำหรับหน่วยความจำผ่านทางการแปลงชุด คำสั่งโดยตัวแปลโปรแกรม
Authors: Smith Dhumbumroong
Advisors: Krerk Piromsopa
Other author: Chulalongkorn University. Faculty of Engineering
Advisor's Email: Krerk.P@Chula.ac.th,krerk.p@chula.ac.th
Issue Date: 2018
Publisher: Chulalongkorn University
Abstract: This dissertation presents BoundWarden, a novel runtime spatial memory safety enforcement technique that comprehensively detects and prevents buffer overflow and other out-of-bound errors in buffers on stack, heap, and BSS and data segments of memory. BoundWarden leverages the ubiquity of multi-core processors by offloading most of the works to a dedicated bound checking thread, which performs bound checking and manages metadata, thus reducing the runtime overhead. Since BoundWarden stores base and bound of buffers in a dedicated bound table, the memory layout of programs remains unchanged, thus preserving compatibility with existing libraries and binaries. Experiments showed that the prototype of BoundWarden is effective at enforcing spatial memory safety by successfully detected all 850 attacks of RIPE test suite, and 94% (1,092 out of 1,164 tests) of NIST SARD Test Suite 89, while the results from Olden benchmark showed that on average BoundWarden introduced roughly 2.25x overhead, compared to the uninstrumented code.
Other Abstract: วิทยานิพนธ์ฉบับนี้นำเสนอผู้คุมขอบเขต โดยผู้คุมขอบเขตคือระบบรักษาความปลอดภัยเชิงพื้นที่ สำหรับหน่วยความจำที่สามารถทำการตรวจจับและป้องกันบัฟเฟอร์โอเวอร์โฟลว์และข้อผิดพลาดต่างๆ ที่เกิดขึ้นจากการอ่านหรือเขียนข้อมูลที่อยู่นอกขอบเขตของบัฟเฟอร์ ไม่ว่าบัฟเฟอร์นั้นจะอยู่ในหน่วยความจำแบบกองซ้อน, ฮีป, BSS, หรือ ดาต้าเซกเมนต์ก็ตาม ผู้คุมขอบเขตใช้ประโยชน์จากความแพร่ หลายของตัวประมวลผลหลายแกน โดยทำการผลักภาระการตรวจสอบขอบเขตไปให้สายโยงใยตรวจ สอบขอบเขตให้มากที่สุด เพื่อลดผลกระทบทางลบของการตรวจสอบขอบเขตต่อประสิทธิภาพในการทำงานของโปรแกรม นอกจากนี้ ผู้คุมขอบเขตยังทำการบันทึกขอบเขตของแต่ละบัฟเฟอร์ลงในตารางบันทึกขอบเขตแทนที่จะต้องทำการแก้ไขโครงสร้างของหน่วยความจำ ทำให้ลดปัญหาที่อาจจะเกิดขึ้น จากการทำงานร่วมกับคลังโปรแกรมและไบนารี่ต่างๆ ผลจากการทดลองแสดงให้เห็นว่า ผู้คุมขอบเขต มีประสิทธิภาพในการรักษาความปลอดภัยเชิงพื้นที่ โดยผู้คุมขอบเขตนั้นสามารถตรวจจับและป้องกัน การโจมตีทั้ง 850 แบบของชุดทดสอบ RIPE และผ่านการประเมินของแบบทดสอบ 1,092 แบบ จากทั้งหมด 1,164 (คิดเป็น 94%) ของชุดทดสอบหมายเลข 89 ของ SARD ในขณะที่ผลจากการทดสอบสมรรถนะการทำงานโดยใช้เกณฑ์เปรียบเทียบสมรรถนะ Olden แสดงให้เห็นว่าโปรแกรมที่ใช้ผู้คุมขอบเขตมีสมรรถนะการทำงานลดลงโดยประมาณ 2.25 เท่าโดยเฉลี่ย เมื่อเทียบกับโปรแกรมที่ไม่ได้ใช้ผู้คุมขอบเขต
Description: Thesis (D.Eng.)--Chulalongkorn University, 2018
Degree Name: Doctor of Engineering
Degree Level: Doctoral Degree
Degree Discipline: Computer Engineering
URI: http://cuir.car.chula.ac.th/handle/123456789/74178
URI: http://doi.org/10.58837/CHULA.THE.2018.154
metadata.dc.identifier.DOI: 10.58837/CHULA.THE.2018.154
Type: Thesis
Appears in Collections:Eng - Theses

Files in This Item:
File Description SizeFormat 
En_5571432021_Smith Dh.pdf653.72 kBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.