亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        非交互式全盤加密系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)*

        2020-03-26 08:26:40楊景賀
        通信技術(shù) 2020年2期
        關(guān)鍵詞:設(shè)備系統(tǒng)

        黃 沾,楊景賀

        (中國(guó)電子科技網(wǎng)絡(luò)信息安全有限公司,四川 成都 610041)

        0 引 言

        隨著計(jì)算機(jī)和網(wǎng)絡(luò)的飛速發(fā)展,海量的數(shù)據(jù)存儲(chǔ)在各種設(shè)備中。其中,塊設(shè)備是最主要的存儲(chǔ)設(shè)備,攜帶著大量涉密文檔。倘若系統(tǒng)存在漏洞被未授權(quán)使用或者塊設(shè)備被盜、丟失,都會(huì)引起政府、企業(yè)或個(gè)人的重大經(jīng)濟(jì)和精神損失。如何有效地保護(hù)涉密文檔的安全性,尤其在計(jì)算機(jī)丟失或失竊后,防止機(jī)密信息非法泄露,對(duì)目前普遍存在的存儲(chǔ)安全提出了新的挑戰(zhàn)。在通用消費(fèi)者領(lǐng)域,Android智能手機(jī)操作系統(tǒng)在其3.0版本中提供了存儲(chǔ)加密功能[1],而微軟的Windows也推出了BitLocker功能[2],可以對(duì)整個(gè)磁盤進(jìn)行加密。但式,這些解決方案需要大量的用戶響應(yīng)(如輸入密碼),無(wú)疑不適應(yīng)于工業(yè)環(huán)境中運(yùn)行的設(shè)備,因?yàn)檫@些設(shè)備要求7×24 h運(yùn)行,無(wú)人工干預(yù)。因此,本文設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)適用于工業(yè)環(huán)境的非交互式全盤加密系統(tǒng),下面將從設(shè)計(jì)目標(biāo)、方案和實(shí)現(xiàn)3個(gè)方面分別進(jìn)行描述。

        1 全盤加密系統(tǒng)設(shè)計(jì)目標(biāo)

        本系統(tǒng)的設(shè)計(jì)目標(biāo)是一個(gè)盡量利用現(xiàn)有硬件設(shè)施,在不增加硬件成本的基礎(chǔ)上,使用軟件方來(lái)提高設(shè)備存儲(chǔ)私密性,同時(shí)對(duì)現(xiàn)有應(yīng)用做到無(wú)縫銜接。

        (1)兼容性:設(shè)計(jì)方案必須保持對(duì)現(xiàn)有設(shè)備的兼容性,如ARM平臺(tái)、X86平臺(tái)和龍芯平臺(tái)等。

        (2)密鑰隨機(jī):每臺(tái)設(shè)備的密鑰都可以隨機(jī)設(shè)置,避免一臺(tái)主機(jī)被破解后所有主機(jī)都告破,形成事實(shí)上的“后門”。

        (3)硬件綁定:每個(gè)存儲(chǔ)的訪問(wèn)都與該存儲(chǔ)所在設(shè)備綁定,將存儲(chǔ)通過(guò)物理方法取出直接訪問(wèn),或者放置到其他任何設(shè)備無(wú)法直接訪問(wèn)存儲(chǔ)。

        (4)易用性:方案應(yīng)盡量減少對(duì)現(xiàn)有應(yīng)用的干擾,即現(xiàn)有應(yīng)用可以不做任何更改。

        (5)非交互式:由于設(shè)備運(yùn)行要求7×24 h無(wú)人值守運(yùn)行,必須要求系統(tǒng)必須是非交互式的,與現(xiàn)有的加密系統(tǒng)有根本區(qū)別。

        2 全盤加密系統(tǒng)設(shè)計(jì)方案

        2.1 概述

        將系統(tǒng)分為MBR鏡像、Bootloader(這里為GRUB2)、內(nèi)核與文件系統(tǒng)和其他分區(qū)等,位置如圖1所示。

        圖1 存儲(chǔ)分區(qū)

        MBR鏡像位于是磁盤第一個(gè)扇區(qū)(512 Bytes),包含了分區(qū)表與GRUB2的stage1加載代碼。GRUB2鏡像位于MBR與實(shí)際分區(qū)間的空隙,由于設(shè)備本身沒(méi)有加解密設(shè)施,所以GRUB2這里未被加密。而內(nèi)核與文件系統(tǒng)及后面的分區(qū)都已被加密處理(圖1中陰影部分)。GRUB2會(huì)在啟動(dòng)過(guò)程中自動(dòng)獲取密鑰并將內(nèi)核與文件系統(tǒng)解密,然后再啟動(dòng)解密后的內(nèi)核。

        基于設(shè)計(jì)目標(biāo),需要將密鑰存放于設(shè)備的硬件中,以達(dá)到與設(shè)備綁定的目的,同時(shí)存儲(chǔ)的信息必須保留。同時(shí),為了安全性,密鑰至少需要保留16 Bytes以上,以防止暴力破解?;谝陨峡紤],選擇網(wǎng)卡ROM存放密鑰。

        2.2 系統(tǒng)初始化及加密

        在設(shè)備未加密前,需要進(jìn)行系統(tǒng)初始化工作。在進(jìn)入系統(tǒng)后:

        (1)隨機(jī)生成密鑰并將密鑰寫(xiě)入網(wǎng)卡ROM中;

        (2)調(diào)用cryptsetup工具,將未加密分區(qū)轉(zhuǎn)換為加密分區(qū)。

        2.3 GRUB2解密

        在GRUB2中,需要應(yīng)對(duì)分區(qū)加密與未加密兩種情況。最重要的是獲取密鑰并解密,因?yàn)榫W(wǎng)卡一般采用PCI接口與設(shè)備相連,而GRUB2提供了完善的PCI訪問(wèn)接口,可以較容易地進(jìn)行PCI設(shè)備寄存器訪問(wèn)。

        2.4 文件系統(tǒng)解密

        在設(shè)備運(yùn)行過(guò)渡到內(nèi)核并切換到文件系統(tǒng)后,為了讓其他應(yīng)用程序能訪問(wèn)存儲(chǔ)分區(qū),需要再次將存儲(chǔ)解密。這里比較簡(jiǎn)單,獲取ROM以及解密都有現(xiàn)成的工具可用。

        3 全盤加密系統(tǒng)的實(shí)現(xiàn)

        為了實(shí)現(xiàn)上述系統(tǒng),需要整合多個(gè)現(xiàn)有技術(shù)。下面從關(guān)鍵技術(shù)及其用法出發(fā),闡述功能實(shí)現(xiàn)的方法。

        3.1 關(guān)鍵技術(shù)

        3.1.1 GRUB2

        GRUB2(GRand Unified Bootloader 2) 是 原GRUB的升級(jí)版本,支持多個(gè)體系平臺(tái)和多種部署方式,同時(shí)內(nèi)置了對(duì)多個(gè)加密方法的支持,包括LUKS、geli等。此外,GRUB2支持密碼鎖定等常見(jiàn)安全措施。

        3.1.2 LUKS

        LUKS(Linux Unified Key Setup)是 Linux硬盤加密標(biāo)準(zhǔn),通過(guò)提供標(biāo)準(zhǔn)的磁盤格式,不僅可以促進(jìn)發(fā)行版之間的兼容性,還可以提供對(duì)多個(gè)用戶密碼的安全管理。

        對(duì)于本方案而言,使用LUKS有以下幾點(diǎn)考慮:

        (1)實(shí)現(xiàn)相對(duì)容易,在GRUB2中已有基本的LUKS模塊,實(shí)現(xiàn)了基本的LUKS加密分區(qū)讀取,后續(xù)只要獲取密鑰傳遞給LUKS模塊即可。

        (2)支持多個(gè)密碼:LUKS支持增加和刪除用戶密碼,后續(xù)在系統(tǒng)更新時(shí)可隨時(shí)更換密碼,提高了安全性。

        (3)LUKS作為廣泛應(yīng)用的加密標(biāo)準(zhǔn),安全性得到了良好驗(yàn)證,同時(shí)其對(duì)應(yīng)的工具cryptsetup功能強(qiáng)大、穩(wěn)定可靠。

        3.2 密鑰的存放與獲取

        密鑰的存放與獲取是本方案的關(guān)鍵,這里以網(wǎng)卡ROM作為密鑰存放點(diǎn)為例。實(shí)際使用中還可以將ROM中的信息做多重變換,如使用pbkdf2算法增加破解難度。

        密鑰的設(shè)置是在文件系統(tǒng)啟動(dòng)后進(jìn)行,而密鑰的讀取同時(shí)存在于GRUB2與文件系統(tǒng)啟動(dòng)后。

        所以,設(shè)置一個(gè)可執(zhí)行文件diskkey作為文件系統(tǒng)啟動(dòng)后密鑰的寫(xiě)入與讀取,而在GRUB2流程中將作為補(bǔ)丁打入GRUB2的LUKS模塊,替換原有的提示用戶輸入密碼部分。

        3.2.1 diskkey實(shí)現(xiàn)

        diskkey實(shí)現(xiàn)密鑰的讀取與寫(xiě)入,實(shí)現(xiàn)必須保密,防止對(duì)外泄露。diskkey的實(shí)現(xiàn)與設(shè)備高度關(guān)聯(lián),而且應(yīng)該不定時(shí)變換。

        示例:

        ethtool -e eth0 raw on offset 0 length 32

        ethtool讀取網(wǎng)卡ROM信息中前32位信息作為密鑰輸出。

        3.2.2 GRUB2實(shí)現(xiàn)

        以Intel網(wǎng)卡芯片82540為例,其開(kāi)發(fā)手冊(cè)記錄了如何使用EEPROM Read register(EERD)寄存器來(lái)訪問(wèn)網(wǎng)卡ROM。

        示例:

        regs是寄存器基地址,根據(jù)手冊(cè)EERD位于0x14h,即第5個(gè)雙字的位置。regs[0x5]=eerd將想要訪問(wèn)的ROM地址賦予EERD寄存器,后續(xù)檢測(cè)EERD的DONE bit是否置位,置位表示網(wǎng)卡已經(jīng)將ROM內(nèi)容寫(xiě)入EERD寄存器。需要注意,該函數(shù)每次能夠讀取兩字節(jié)(一個(gè)字)長(zhǎng)度的ROM,需要按照密鑰存儲(chǔ)約定多次調(diào)用。而regs變量的獲得,可以通過(guò)調(diào)用grub2 pci接口相關(guān)API獲取。

        3.3 GRUB2啟動(dòng)流程

        設(shè)備啟動(dòng)后會(huì)加載GRUB2,而GRUB2必須判斷存儲(chǔ)是否已經(jīng)加密。如果未加密,則走初始化流程;如果已經(jīng)加密,則必須調(diào)用解密命令,再加載解密后的內(nèi)核與文件系統(tǒng)。

        一個(gè)GRUB2配置文件示例:

        GRUB2一開(kāi)始加載biosdisk和part_msdos兩個(gè)模塊,以便后續(xù)訪問(wèn)設(shè)備上的存儲(chǔ)及其分區(qū),然后加載LUKS模塊。LUKS模塊已經(jīng)經(jīng)過(guò)修改,不會(huì)再提示用戶輸入密碼,能自動(dòng)加載磁盤密碼。

        if linux (hd0,msdos1)/vmlinuz這行嘗試直接加載分區(qū)上的內(nèi)核,如果成功,說(shuō)明磁盤還沒(méi)有加密,繼續(xù)加載initramfs,然后啟動(dòng)。如果加載失敗,系統(tǒng)嘗試使用cryptomount解密分區(qū)。解密后的分區(qū)用crypto0表示,如果linux指令依然無(wú)法訪問(wèn)內(nèi)核,則表示解密過(guò)程失敗,設(shè)備可能存在異常情況,系統(tǒng)進(jìn)行關(guān)機(jī)處理。

        3.4 文件系統(tǒng)啟動(dòng)流程

        系統(tǒng)啟動(dòng)后,需要將原加密分區(qū)進(jìn)行解密,這樣對(duì)其他應(yīng)用不會(huì)造成干擾。解密過(guò)程主要使用cryptsetup工具[3],示例如下(DEVICE變量為L(zhǎng)UKS所在分區(qū)設(shè)備名):

        cryptsetup isLuks判斷分區(qū)是否經(jīng)過(guò)LUKS加密。diskkey讀取加密密鑰,cryptsetup luksOpen完成解密過(guò)程,最后調(diào)用mount掛載加密分區(qū),后續(xù)使用與普通分區(qū)相同。

        3.5 系統(tǒng)防護(hù)

        系統(tǒng)啟動(dòng)后,必須確保系統(tǒng)訪問(wèn)是授權(quán)情況。如果解密方式公開(kāi),意味著加密失效。所以,在現(xiàn)有Linux安全防護(hù)措施基礎(chǔ)上,對(duì)整個(gè)啟動(dòng)流程進(jìn)行了全方面的系統(tǒng)安全加固。

        3.5.1 鎖定GRUB2

        GRUB2是系統(tǒng)啟動(dòng)的第一步,可以任意指定內(nèi)核、文件系統(tǒng)、內(nèi)核參數(shù)等。所以,為了系統(tǒng)的安全啟動(dòng),必須鎖定GRUB2。GRUB2提供了鎖定其運(yùn)行配置文件的方法,使GRUB2只能按照指定的流程運(yùn)行,包括固定的內(nèi)核、內(nèi)核參數(shù)等。

        示例:

        set superusers="root"設(shè)置超級(jí)用戶為root,后面password_pbkdf2設(shè)置root密碼(即XXXX部分),root密碼調(diào)用grub-mkpasswd-pbkdf2命令生成。menuentry表示后面的啟動(dòng)命令無(wú)需認(rèn)證即可執(zhí)行。

        最后達(dá)到的效果是menuentry中的啟動(dòng)流程可以無(wú)干擾執(zhí)行,而要修改啟動(dòng)項(xiàng)如修改內(nèi)核參數(shù),需要輸入root用戶密碼進(jìn)行認(rèn)證。

        3.5.2 禁用init與rdinit內(nèi)核參數(shù)

        由于GRUB2是未加密的,雖然在上一步已做鎖定GRUB2,但是仍然要堤防GRUB2配置文件被修改。必須假定GRUB2傳給內(nèi)核的參數(shù)已經(jīng)被修改,而內(nèi)核默認(rèn)提供了init(rdinit)內(nèi)核參數(shù)來(lái)自定義內(nèi)核啟動(dòng)的init進(jìn)程執(zhí)行文件路徑。通過(guò)修改init參數(shù),如直接修改為/bin/sh,可以直接繞過(guò)登錄認(rèn)證訪問(wèn)文件系統(tǒng),就直接暴露了diskkey的實(shí)現(xiàn),導(dǎo)致加密系統(tǒng)告破。由于使用initramfs啟動(dòng),對(duì)應(yīng)的是rdinit參數(shù),只需要禁用rdinit參數(shù)即可。解決辦法比較簡(jiǎn)單,將內(nèi)核中rdinit參數(shù)處理函數(shù)注釋掉即可,對(duì)應(yīng)的代碼位于init/main.c中,不做贅述。

        3.5.3 系統(tǒng)固件加密

        系統(tǒng)揭秘方法也在系統(tǒng)的升級(jí)固件中可以獲取,所以系統(tǒng)固件必須加密。由于各個(gè)系統(tǒng)實(shí)現(xiàn)不同,這部分不做展開(kāi)。

        4 結(jié) 語(yǔ)

        本文提出的非交互式全盤加密系統(tǒng)解決了在現(xiàn)有硬件設(shè)備存儲(chǔ)安全的問(wèn)題,同時(shí)系統(tǒng)還有很多需要改進(jìn)的地方,包括對(duì)現(xiàn)有安全硬件技術(shù)的支持(如UEFI Secure Boot、TPM)等,將是下一步的研究?jī)?nèi)容。

        猜你喜歡
        設(shè)備系統(tǒng)
        諧響應(yīng)分析在設(shè)備減振中的應(yīng)用
        Smartflower POP 一體式光伏系統(tǒng)
        WJ-700無(wú)人機(jī)系統(tǒng)
        ZC系列無(wú)人機(jī)遙感系統(tǒng)
        基于PowerPC+FPGA顯示系統(tǒng)
        半沸制皂系統(tǒng)(下)
        基于VB6.0+Access2010開(kāi)發(fā)的設(shè)備管理信息系統(tǒng)
        基于MPU6050簡(jiǎn)單控制設(shè)備
        電子制作(2018年11期)2018-08-04 03:26:08
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        500kV輸變電設(shè)備運(yùn)行維護(hù)探討
        成人片99久久精品国产桃花岛| 亚洲av无码专区在线观看成人| 欧美 丝袜 自拍 制服 另类| 欧美另类视频在线| 久久久精品人妻一区二区三区日本| 国产一区二区三区不卡视频| 草色噜噜噜av在线观看香蕉| 老熟妻内射精品一区| 色系免费一区二区三区| 中文字幕手机在线精品| 日韩经典午夜福利发布| 国产精成人品| 亚洲福利天堂网福利在线观看| 色婷婷久色国产成人免费| 大尺度无遮挡激烈床震网站| 人妻暴雨中被强制侵犯在线| 日本久久久免费高清| 亚洲国产精品久久性色av| 国产精品久久国产精麻豆99网站| 四虎影视在线影院在线观看| 91超碰在线观看免费| 一卡二卡国产av熟女| 97se亚洲国产综合自在线观看| 国产看黄网站又黄又爽又色| 亚洲色无码中文字幕| 青青草视频是针对华人| 亚洲成在人线av品善网好看| 久久久久亚洲av无码尤物| 日韩在线精品视频观看| 亚洲最好看的中文字幕| 久久久久久国产精品无码超碰动画 | 亚洲成av人片天堂网九九| 久久国产精品懂色av| 国产成人无码专区| 国产精品成人99一区无码| 久久aⅴ无码av高潮AV喷| 在线观看国产激情视频| 中文www新版资源在线| 毛片无遮挡高清免费久久| 九一精品少妇一区二区三区| 国产一区二区高清不卡在线|