[發明專利]基于動態插樁的大塊內存分配系統及方法有效
| 申請號: | 201710398778.6 | 申請日: | 2017-05-31 |
| 公開(公告)號: | CN107239410B | 公開(公告)日: | 2020-06-09 |
| 發明(設計)人: | 張媛媛;胡正浩;劉慧;李卷孺;谷大武 | 申請(專利權)人: | 上海交通大學 |
| 主分類號: | G06F12/02 | 分類號: | G06F12/02;G06F12/06;G06F21/56 |
| 代理公司: | 上海交達專利事務所 31201 | 代理人: | 王毓理;王錫麟 |
| 地址: | 200240 *** | 國省代碼: | 上海;31 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 動態 大塊 內存 分配 系統 方法 | ||
一種基于動態插樁的大塊內存分配系統及方法,首先獲得程序內存布局信息,然后通過動態插樁工具攔截mmap和brk系統調用,即首先對二進制程序的基本塊進行指令翻譯;然后對翻譯過后的基本塊檢查是否有系統調用指令;最后對檢測到的系統調用指令進行插樁,并對mmap系統調用進行隨機化分配、對brk系統調用使用污點跟蹤處理,從而實現大塊內存分配。本發明通過自動化定位相似的代碼,從而將已經分析完成的代碼信息同步遷移到不同的平臺上,著重于對實際系統中存在的通用性系統缺陷進行防護,更為注重對實時系統的防御以及性能開銷。
技術領域
本發明涉及的是一種計算機領域的技術,具體是一種基于動態插樁的針對大于4KB內存塊的分配系統及方法。
背景技術
隨著Linux操作系統在個人計算機、服務器、移動終端等領域的廣泛普及,其安全性隨之成為了一個所有人無法回避的話題。操作系統的安全性直接影響了運行于操作系統之上的應用程序的安全性,并對所有用戶的隱私與利益構成威脅。為了增強Linux系統的安全性,多種安全增強技術被設計并應用到現實的生產環境中,其中就包含內存地址隨機化技術,該技術能夠有效的阻止攻擊者通過應用程序漏洞對應用程序實施內存攻擊。
內存隨機化的程度是用于衡量一個內存地址隨機化技術安全性的最重要的指標。在實際使用時,當內存分配請求過大時,所有的內存分配技術都會直接使用操作系統的mmap以及brk系統調用來進行內存分配。而在Linux操作系統中,這兩個系統調用返回的內存不是完全隨機的:連續的系統調用,返回的地址也是連續的。該特性導致了即使對于安全內存隨機化分配技術來說,大內存塊的分配隨機性仍然存在缺陷,可以被攻擊者利用。
盡管國內外的研究中有很多針對這類系統調用隨機化措施,但是在可移植性,以及brk系統調用的防御上始終存在一些缺陷。
發明內容
本發明針對現有技術只能支持線下分析的缺陷檢測功能,一來缺少對檢測到缺陷的防護功能,二來對一些實時性要求較高的軟件,其性能上的開銷也無法達到實際生產中線上檢測/防護的要求,提出一種基于動態插樁的大塊內存分配系統及方法,通過自動化定位相似的代碼,從而將已經分析完成的代碼信息同步遷移到不同的平臺上,著重于對實際系統中存在的通用性系統缺陷進行防護,更為注重對實時系統的防御以及性能開銷。
本發明是通過以下技術發明實現的:
本發明涉及一種基于動態插樁的大塊內存分配系統,包括:內存布局獲取模塊、調用攔截模塊、內存隨機化分配模塊和污點跟蹤模塊,其中:內存布局獲取模塊與內存隨機化分配模塊相連并傳輸空閑內存塊信息,調用攔截模塊與內存隨機化分配模塊以及污點跟蹤模塊相連并傳輸上層應用程序系統調用信息,內存隨機化分配模塊連接用戶進程并傳輸隨機化后的內存地址信息,污點跟蹤模塊與內存隨機化分配模塊相連并傳輸對brk內存區域污點跟蹤信息。
本發明涉及上述系統的大塊內存分配方法,首先獲得程序內存布局信息,然后通過動態插樁工具攔截mmap和brk系統調用,即首先對二進制程序的基本塊進行指令翻譯;然后對翻譯過后的基本塊檢查是否有系統調用指令;最后對檢測到的系統調用指令進行插樁,并對mmap系統調用進行隨機化分配、對brk系統調用使用污點跟蹤處理,從而實現大塊內存分配。
所述的隨機化分配是指:
i)當上層應用請求的內存大小超過4KB時,從現有內存中滿足大小的最小的空閑內存塊開始,并隨機選取一個空閑內存塊,從中隨機選取一個偏移值進行內存分配;
ii)當請求內存不超過4KB,即一個內存頁時,從另一塊單頁空閑內存池中隨機進行分配;
iii)單頁空閑內存池在內存分配開始時進行初始化,為滿足隨機化要求,單頁空閑內存池中應保證一定數量的內存頁供隨機化選擇。
所述的污點跟蹤處理是指:對brk系統調用使用污點跟蹤技術,并對內存塊進行實時遷移,具體包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于上海交通大學,未經上海交通大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710398778.6/2.html,轉載請聲明來源鉆瓜專利網。





