支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法
【專利摘要】本發(fā)明公開(kāi)一種支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法,步驟為:1)預(yù)先強(qiáng)制將操作系統(tǒng)的特權(quán)程序分類并與不同的管理員角色進(jìn)行關(guān)聯(lián);2)檢測(cè)用戶的訪問(wèn)請(qǐng)求,當(dāng)檢測(cè)到特權(quán)操作請(qǐng)求時(shí),跳轉(zhuǎn)執(zhí)行步驟3);3)對(duì)發(fā)出特權(quán)操作請(qǐng)求的用戶進(jìn)行身份驗(yàn)證,如果身份驗(yàn)證通過(guò),則派生子進(jìn)程,設(shè)置子進(jìn)程的安全屬性并使子進(jìn)程的安全屬性繼承目標(biāo)特權(quán)程序所對(duì)應(yīng)的管理員角色的安全屬性,通過(guò)子進(jìn)程執(zhí)行目標(biāo)特權(quán)程序;如果身份驗(yàn)證不通過(guò),拒絕用戶的特權(quán)操作請(qǐng)求并退出。本發(fā)明具有實(shí)現(xiàn)方法簡(jiǎn)單、能夠?qū)崿F(xiàn)用戶提權(quán)操作且支持強(qiáng)制訪問(wèn)控制、操作系統(tǒng)安全性高且可用性強(qiáng)的優(yōu)點(diǎn)。
【專利說(shuō)明】支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)操作系統(tǒng)的用戶提升權(quán)限【技術(shù)領(lǐng)域】,尤其涉及一種支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法。
【背景技術(shù)】
[0002]隨著計(jì)算機(jī)技術(shù)及網(wǎng)絡(luò)技術(shù)的發(fā)展,計(jì)算機(jī)系統(tǒng)的安全變得越來(lái)越重要,而操作系統(tǒng)作為計(jì)算機(jī)資源的管理者,更是整個(gè)主機(jī)系統(tǒng)安全的基礎(chǔ)。一個(gè)有效可靠的操作系統(tǒng)也應(yīng)具有很強(qiáng)的安全性和相應(yīng)的保護(hù)措施,即能夠杜絕或限制天窗、隱蔽通道、特洛伊木馬等對(duì)系統(tǒng)構(gòu)成的安全隱患,對(duì)系統(tǒng)中的信息提供足夠的保護(hù),防止未授權(quán)用戶的濫用或毀壞系統(tǒng)軟件的資源。
[0003]許多用戶喜歡用管理員賬戶(Windows系統(tǒng)下為Administrator, Unix、Linux等類Unix系統(tǒng)下為root)登錄系統(tǒng),這樣用戶可以獲取操作系統(tǒng)的最高權(quán)限,執(zhí)行任何操作都不會(huì)受到權(quán)限限制。然而用戶通過(guò)使用管理員賬號(hào)帶來(lái)便利的同時(shí)也會(huì)對(duì)計(jì)算機(jī)系統(tǒng)的安全性造成重大威脅,例如如果存在隱藏在系統(tǒng)中的惡意程序,當(dāng)用戶使用管理員賬戶登錄系統(tǒng)時(shí),在系統(tǒng)感染病毒或者未知情況下執(zhí)行了惡意程序,那么惡意程序也獲得了與管理員賬戶相同的權(quán)限,即能夠?qū)Σ僮飨到y(tǒng)所有的資源進(jìn)行管理,這是十分危險(xiǎn)的,甚至?xí)?duì)系統(tǒng)造成重大損失。
[0004]為了應(yīng)對(duì)日益突出的安全問(wèn)題,在使用操作系統(tǒng)時(shí)通常建議使用普通賬戶登錄,當(dāng)需要執(zhí)行特權(quán)操作時(shí),再通過(guò)提權(quán)的方法來(lái)完成操作。所謂的提權(quán)是指通過(guò)一定的方式使得普通用戶暫時(shí)具有管理操作系統(tǒng)資源的權(quán)限的過(guò)程。使用上述方法,即使用戶執(zhí)行了惡意程序,惡意程序所獲得的權(quán)限也僅限于普通用戶的權(quán)限,無(wú)法執(zhí)行特權(quán)程序,不會(huì)對(duì)系統(tǒng)造成重大危害。
[0005]目前主流操作系統(tǒng)都提供了相應(yīng)的用戶提權(quán)的解決方案,包括:
Dffindows系統(tǒng)提供的UAC (用戶賬戶控制)機(jī)制。
[0006]UAC是從Windows Vista開(kāi)始引進(jìn)的技術(shù),該技術(shù)通過(guò)限制用戶執(zhí)行特權(quán)程序用來(lái)增強(qiáng)Windows系統(tǒng)的安全性,只有用戶信任的程序才可以獲取管理員權(quán)限。目前在Windows系統(tǒng)下提供了 UAC的權(quán)限控制機(jī)制,防止用戶對(duì)計(jì)算機(jī)進(jìn)行未經(jīng)授權(quán)的更改,當(dāng)用戶執(zhí)行一些安裝軟件或者設(shè)置防火墻等操作時(shí)都會(huì)觸發(fā)UAC,需要用戶完成身份認(rèn)證后由UAC進(jìn)行一次權(quán)限的提升,使得登錄的用戶在提權(quán)后才具有更高的管理員權(quán)限來(lái)執(zhí)行這些特權(quán)操作。
[0007]2) Unix/Linux 系統(tǒng)提供的 su/sudo/polkit 機(jī)制。
[0008]Unix/Linux系統(tǒng)提供了 su/sudo/polkit等機(jī)制來(lái)讓用戶提升權(quán)限。su和sudo是UNIX/Linux系統(tǒng)下提供的命令行程序,通過(guò)它們可以使用戶以指定的WD(用戶ID)或者GID (組ID)來(lái)執(zhí)行程序。su命令使用切換到的用戶的密碼來(lái)完成認(rèn)證,而sudo命令使用用戶自身的密碼來(lái)認(rèn)證,通過(guò)sudo認(rèn)證后會(huì)有大概15分鐘的寬限期,在這段時(shí)間內(nèi)用戶再次執(zhí)行sudo命令不需要認(rèn)證。針對(duì)su/sudo沒(méi)有圖形界面的缺點(diǎn),gksu/gksudo提供了圖形界面認(rèn)證;Polkit則提供了一個(gè)pkexec命令來(lái)提權(quán),該命令可以以指定用戶來(lái)執(zhí)行程序,同時(shí)它也提供一個(gè)圖形界面來(lái)認(rèn)證,認(rèn)證中使用的是root用戶的密碼。
[0009]操作系統(tǒng)的某一合法用戶可任意修改該用戶擁有的文件訪問(wèn)控制信息,但是操作系統(tǒng)無(wú)法區(qū)別這種修改是用戶自己的合法操作還是惡意程序的非法操作;另外,也沒(méi)有一種有效的方法能夠防止計(jì)算機(jī)病毒將信息通過(guò)共享客體從一個(gè)進(jìn)程傳遞給另一個(gè)進(jìn)程。因此,為了解決上述問(wèn)題,使操作系統(tǒng)具有更高的安全性,引入了強(qiáng)制訪問(wèn)控制機(jī)制。在啟用了強(qiáng)制訪問(wèn)控制的系統(tǒng)中,系統(tǒng)為主體與客體均分配一個(gè)特殊的一般不能更改的安全屬性,系統(tǒng)通過(guò)比較主體與客體的安全屬性來(lái)決定一個(gè)主體是否能夠訪問(wèn)某個(gè)客體。用戶為某個(gè)目的而運(yùn)行程序時(shí),不能改變它自己及任何其它客體的安全屬性,包括該用戶自己擁有的客體。然而在支持強(qiáng)制訪問(wèn)控制的系統(tǒng)中,普通的提權(quán)僅僅是改變了用戶的ID和組ID,特權(quán)進(jìn)程對(duì)應(yīng)的強(qiáng)制訪問(wèn)控制安全屬性默認(rèn)是繼承自父進(jìn)程的,沒(méi)有隨著提權(quán)作相應(yīng)的改變,因此提權(quán)后的操作可能仍然受到強(qiáng)制訪問(wèn)控制的阻止,從而造成最終提權(quán)失敗。
[0010]綜上所述,現(xiàn)有的提權(quán)方法中不支持或部分支持強(qiáng)制訪問(wèn)控制,而在支持強(qiáng)制訪問(wèn)控制系統(tǒng)中進(jìn)行提權(quán)時(shí),提權(quán)后的進(jìn)程的安全屬性沒(méi)有進(jìn)行正確設(shè)置,導(dǎo)致提權(quán)后的特權(quán)操作仍然受到強(qiáng)制訪問(wèn)控制系統(tǒng)的阻止,用戶無(wú)法執(zhí)行特權(quán)操作。
【發(fā)明內(nèi)容】
[0011]本發(fā)明要解決的技術(shù)問(wèn)題就在于:針對(duì)現(xiàn)有技術(shù)存在的技術(shù)問(wèn)題,本發(fā)明提供一種實(shí)現(xiàn)方法簡(jiǎn)單、能夠?qū)崿F(xiàn)用戶提權(quán)操作且支持強(qiáng)制訪問(wèn)控制、操作系統(tǒng)安全性高且可用性強(qiáng)的支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法。
[0012]為解決上述技術(shù)問(wèn)題,本發(fā)明提出的技術(shù)方案為:
一種支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法,具體實(shí)施步驟如下:
1)預(yù)先強(qiáng)制將操作系統(tǒng)的特權(quán)程序分類并與不同的管理員角色進(jìn)行關(guān)聯(lián);
2)檢測(cè)普通用戶的訪問(wèn)請(qǐng)求,當(dāng)檢測(cè)到特權(quán)操作請(qǐng)求時(shí),跳轉(zhuǎn)執(zhí)行步驟3);
3)對(duì)發(fā)出特權(quán)操作請(qǐng)求的普通用戶進(jìn)行身份驗(yàn)證,如果身份驗(yàn)證通過(guò),則派生子進(jìn)程,設(shè)置所述子進(jìn)程的安全屬性并使所述子進(jìn)程的安全屬性繼承特權(quán)操作請(qǐng)求的目標(biāo)特權(quán)程序所關(guān)聯(lián)的管理員角色的安全屬性,通過(guò)所述子進(jìn)程執(zhí)行目標(biāo)特權(quán)程序;如果身份驗(yàn)證不通過(guò),則拒絕用戶的特權(quán)操作請(qǐng)求并退出。
[0013]作為本發(fā)明的進(jìn)一步改進(jìn),所述步驟I)的具體實(shí)施步驟如下:
1.0預(yù)先強(qiáng)制將操作系統(tǒng)的特權(quán)程序按功能進(jìn)行分類;
1.2)根據(jù)所述特權(quán)程序的分類,將歸類后的每一類特權(quán)程序分別與對(duì)應(yīng)的管理員角色進(jìn)行關(guān)聯(lián),得到每一個(gè)特權(quán)程序與管理員角色之間的關(guān)聯(lián)關(guān)系;
1.3)將所述每一個(gè)特權(quán)程序與管理員角色之間的關(guān)聯(lián)關(guān)系作為配置文件存儲(chǔ),且針對(duì)所述配置文件提供修改配置文件的特權(quán)程序,將修改配置文件的特權(quán)程序與指定的管理員角色進(jìn)行關(guān)聯(lián),使得普通用戶只有提權(quán)至指定的管理員角色才具有對(duì)所述配置文件的讀寫(xiě)權(quán)限。
[0014]作為本發(fā)明的進(jìn)一步改進(jìn):所述步驟1.1)中的管理員角色具體包括系統(tǒng)管理員、安全管理員、審計(jì)管理員三類,所述預(yù)先強(qiáng)制將操作系統(tǒng)的特權(quán)程序按功能進(jìn)行分類具體是指強(qiáng)制將操作系統(tǒng)的特權(quán)程序按功能分類為由系統(tǒng)管理員執(zhí)行、由安全管理員執(zhí)行、由審計(jì)管理員執(zhí)行三類。
[0015]作為本發(fā)明的進(jìn)一步改進(jìn):所述步驟1.3)中指定的管理員角色具體是指安全管理員。
[0016]作為本發(fā)明的進(jìn)一步改進(jìn):所述步驟2)的詳細(xì)實(shí)施步驟如下:
2.1)截獲普通用戶的訪問(wèn)請(qǐng)求,如果收到特權(quán)操作請(qǐng)求,則跳轉(zhuǎn)執(zhí)行步驟2.2),否則繼續(xù)返回重新執(zhí)行步驟2.1);
2.2)觸發(fā)啟動(dòng)C/S模式的客戶端,所述C/S模式的客戶端具有所述存儲(chǔ)有特權(quán)程序和管理員角色之間關(guān)聯(lián)關(guān)系的配置文件的只讀權(quán)限;所述C/S模式的客戶端讀取所述存儲(chǔ)有特權(quán)程序和管理員角色之間的關(guān)聯(lián)關(guān)系的配置文件,解析收到的特權(quán)操作請(qǐng)求并將特權(quán)操作請(qǐng)求的用戶信息、目標(biāo)特權(quán)程序、與目標(biāo)特權(quán)程序關(guān)聯(lián)的管理員角色通過(guò)進(jìn)程間通信的方式發(fā)送給C/S模式的服務(wù)端,通過(guò)C/S模式的服務(wù)端執(zhí)行步驟3)。
[0017]作為本發(fā)明的進(jìn)一步改進(jìn):所述步驟3)具體是通過(guò)作為C/S模式的服務(wù)端的服務(wù)框架程序?qū)崿F(xiàn)的,且所述服務(wù)框架程序的安全屬性被強(qiáng)制控制為只能進(jìn)行設(shè)置派生子進(jìn)程的安全屬性、執(zhí)行特權(quán)程序,和操作系統(tǒng)的密碼驗(yàn)證模塊進(jìn)行進(jìn)程間通信實(shí)現(xiàn)對(duì)普通用戶進(jìn)行身份驗(yàn)證,以及C/S模式的客戶端進(jìn)行進(jìn)程間通信。
[0018]與現(xiàn)有技術(shù)相比,本發(fā)明具有下述技術(shù)效果:
I)本發(fā)明通過(guò)預(yù)先將操作系統(tǒng)的特權(quán)程序分類并與不同的管理員角色進(jìn)行關(guān)聯(lián),限定特權(quán)程序的訪問(wèn)權(quán)限,實(shí)現(xiàn)強(qiáng)制訪問(wèn)控制,操作系統(tǒng)的安全性高;通過(guò)接收普通用戶的特權(quán)操作請(qǐng)求及普通用戶的身份驗(yàn)證完成提權(quán)操作,能夠在使用普通用戶登錄的情況下通過(guò)提權(quán)執(zhí)行特權(quán)操作,提高支持強(qiáng)制訪問(wèn)控制的操作系統(tǒng)的易用性;同時(shí)在提權(quán)后派生子進(jìn)程并對(duì)子進(jìn)程的安全屬性進(jìn)行設(shè)置,使子進(jìn)程的安全屬性繼承與特權(quán)程序關(guān)聯(lián)的管理員角色的安全屬性,確保提權(quán)成功,完成特權(quán)程序的執(zhí)行。
[0019]2)本發(fā)明采用C/S模式的提權(quán)方式時(shí),通過(guò)客戶端截獲用戶的特權(quán)操作請(qǐng)求,由客戶端解析后將信息發(fā)送給服務(wù)端,由服務(wù)端進(jìn)行安全屬性的設(shè)置并代替用戶執(zhí)行特權(quán)操作,實(shí)現(xiàn)方法簡(jiǎn)單、提權(quán)方式靈活。
[0020]3)本發(fā)明通過(guò)為特權(quán)程序與管理員角色關(guān)聯(lián)的配置文件設(shè)置特殊安全屬性,防止未經(jīng)授權(quán)的惡意程序修改配置文件,保證系統(tǒng)安全;同時(shí)對(duì)C/S模式中服務(wù)端的服務(wù)框架程序設(shè)置特殊安全屬性,使特權(quán)程序、服務(wù)框架程序均在限定的范圍內(nèi)運(yùn)行,實(shí)現(xiàn)了最小特權(quán)原則以及責(zé)任分離原則。
【專利附圖】
【附圖說(shuō)明】
[0021]圖1是本實(shí)施例支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法的實(shí)現(xiàn)流程示意圖。
[0022]圖2是本實(shí)施例中特權(quán)程序與管理員角色關(guān)聯(lián)關(guān)系示意圖。
[0023]圖3是本實(shí)施例中C/S模式時(shí)步驟2)的具體實(shí)施流程示意圖。
【具體實(shí)施方式】
[0024]以下結(jié)合說(shuō)明書(shū)附圖和具體優(yōu)選的實(shí)施例對(duì)本發(fā)明作進(jìn)一步描述,但并不因此而限制本發(fā)明的保護(hù)范圍。
[0025]如圖1所示,本實(shí)施例支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法的具體實(shí)施步驟如下:1)預(yù)先強(qiáng)制將操作系統(tǒng)的特權(quán)程序分類并與不同的管理員角色進(jìn)行關(guān)聯(lián);
2)檢測(cè)普通用戶的操作請(qǐng)求,當(dāng)檢測(cè)到特權(quán)操作請(qǐng)求時(shí),跳轉(zhuǎn)執(zhí)行步驟3);
3)對(duì)發(fā)出特權(quán)操作請(qǐng)求的普通用戶進(jìn)行身份驗(yàn)證,如果身份驗(yàn)證通過(guò),則派生子進(jìn)程,設(shè)置子進(jìn)程的安全屬性并使子進(jìn)程的安全屬性繼承特權(quán)操作請(qǐng)求的目標(biāo)特權(quán)程序所關(guān)聯(lián)的管理員角色的安全屬性,通過(guò)子進(jìn)程執(zhí)行目標(biāo)特權(quán)程序;如果身份驗(yàn)證不通過(guò),拒絕用戶的特權(quán)操作請(qǐng)求并退出。
[0026]本實(shí)施例通過(guò)強(qiáng)制將特權(quán)程序進(jìn)行分類并與不同的管理員角色進(jìn)行關(guān)聯(lián),限定特權(quán)程序的訪問(wèn)權(quán)限,實(shí)現(xiàn)強(qiáng)制訪問(wèn)控制,操作系統(tǒng)的安全性高;通過(guò)接收用戶的特權(quán)操作請(qǐng)求及用戶的身份驗(yàn)證完成用戶的提權(quán)操作,操作系統(tǒng)能夠在使用普通用戶登錄的情況下通過(guò)提權(quán)執(zhí)行特權(quán)操作,提高支持強(qiáng)制訪問(wèn)控制的操作系統(tǒng)的易用性;同時(shí)在提權(quán)后派生子進(jìn)程并對(duì)子進(jìn)程的安全屬性進(jìn)行設(shè)置,使子進(jìn)程的安全屬性繼承與特權(quán)程序關(guān)聯(lián)的管理員角色的安全屬性,確保提權(quán)的最終成功,完成特權(quán)程序的執(zhí)行。
[0027]本實(shí)施例中,步驟I)的具體實(shí)施步驟如下:
1.0預(yù)先強(qiáng)制將操作系統(tǒng)的特權(quán)程序按功能進(jìn)行分類;
1.2)根據(jù)特權(quán)程序的分類,將歸類后的每一類特權(quán)程序分別與對(duì)應(yīng)的管理員角色進(jìn)行關(guān)聯(lián),得到每一個(gè)特權(quán)程序與管理員角色之間的關(guān)聯(lián)關(guān)系;
1.3)將每一個(gè)特權(quán)程序與管理員角色之間的關(guān)聯(lián)關(guān)系作為配置文件存儲(chǔ),且針對(duì)配置文件提供修改配置文 件的特權(quán)程序,將修改配置文件的特權(quán)程序與指定的管理員角色進(jìn)行關(guān)聯(lián),使得普通用戶只有提權(quán)至指定的管理員角色才具有對(duì)配置文件的讀寫(xiě)權(quán)限。
[0028]本實(shí)施例步驟1.1)中的管理員角色具體包括系統(tǒng)管理員、安全管理員、審計(jì)管理員三類,預(yù)先強(qiáng)制將操作系統(tǒng)的特權(quán)程序按功能進(jìn)行分類具體是指強(qiáng)制將操作系統(tǒng)的特權(quán)程序按功能分類為由系統(tǒng)管理員執(zhí)行、由安全管理員執(zhí)行、由審計(jì)管理員執(zhí)行三類。將現(xiàn)有操作系統(tǒng)中可以執(zhí)行所有特權(quán)程序的root的權(quán)限分別分配到系統(tǒng)管理員、安全管理員和審計(jì)管理員三類管理員角色上,每個(gè)管理員角色具有的特權(quán)只是root的一部分。
[0029]本實(shí)施例中,根據(jù)特權(quán)程序的功能,將操作系統(tǒng)中的特權(quán)程序劃分為由系統(tǒng)管理員執(zhí)行、由安全管理員執(zhí)行以及由審計(jì)管理員執(zhí)行三類,分類后的特權(quán)程序再與對(duì)應(yīng)的管理員角色進(jìn)行關(guān)聯(lián),即由系統(tǒng)管理員執(zhí)行的特權(quán)程序與系統(tǒng)管理員角色關(guān)聯(lián),由安全管理員執(zhí)行的特權(quán)程序與安全管理員角色關(guān)聯(lián),由審計(jì)管理員執(zhí)行的特權(quán)程序與審計(jì)管理員角色管理。系統(tǒng)中存在多個(gè)特權(quán)程序,每個(gè)特權(quán)程序只能與一個(gè)管理員角色關(guān)聯(lián),一個(gè)管理員角色則可以關(guān)聯(lián)多個(gè)特權(quán)程序。如圖2所示,以η個(gè)特權(quán)程序(特權(quán)程序I~特權(quán)程序η)和η個(gè)管理員角色(管理員角色I(xiàn)~管理員角色η)為例,特權(quán)程序I與管理員角色2關(guān)聯(lián),特權(quán)程序2與管理員角色I(xiàn)關(guān)聯(lián),特權(quán)程序3與管理員角色3關(guān)聯(lián),……,特權(quán)程序η與管理員角色η關(guān)聯(lián)。需要說(shuō)明的是,圖2僅僅是對(duì)特權(quán)程序與管理員角色之間的多對(duì)一的關(guān)聯(lián)關(guān)系的部分列舉,由于特權(quán)程序與管理員角色是以多對(duì)一的方式進(jìn)行關(guān)聯(lián),因此每個(gè)特權(quán)程序必然對(duì)應(yīng)一個(gè)管理員角色,一個(gè)管理員角色可能對(duì)應(yīng)多個(gè)特權(quán)程序。
[0030]本實(shí)施例中,每一個(gè)特權(quán)程序與管理員角色的關(guān)聯(lián)關(guān)系存儲(chǔ)在系統(tǒng)的配置文件中,通過(guò)對(duì)配置文件安全屬性的設(shè)置,使配置文件受到強(qiáng)制訪問(wèn)控制的保護(hù),防止未授權(quán)程序的修改,具體方法為:針對(duì)配置文件提供修改配置文件的特權(quán)程序,將修改配置文件的特權(quán)程序與安全管理員角色進(jìn)行關(guān)聯(lián),使得只有提權(quán)至指定的管理員角色才能對(duì)配置文件進(jìn)行訪問(wèn)和編輯,普通用戶和其它管理員均無(wú)法直接對(duì)配置文件進(jìn)行訪問(wèn)和編輯。
[0031]本實(shí)施例通過(guò)為存儲(chǔ)每一個(gè)特權(quán)程序與管理員角色的關(guān)聯(lián)關(guān)系的配置文件設(shè)置特殊安全屬性,并提供修改配置文件的特權(quán)程序,且將修改配置文件的特權(quán)程序與安全管理員關(guān)聯(lián)。普通用戶只有提權(quán)至指定的管理員角色才具有對(duì)配置文件的讀寫(xiě)權(quán)限,從而能夠?qū)ε渲梦募M(jìn)行訪問(wèn)、編輯,普通用戶、系統(tǒng)管理員和審計(jì)管理員的角色均無(wú)法直接進(jìn)行訪問(wèn)、編輯或查看,防止普通用戶、系統(tǒng)管理員、審計(jì)管理員角色的修改,從而實(shí)現(xiàn)將修改配置文件的特權(quán)程序與安全管理員角色進(jìn)行關(guān)聯(lián),對(duì)配置文件實(shí)施保護(hù),使得普通用戶只能提權(quán)至安全管理員角色才能對(duì)配置文件進(jìn)行修改,防止未經(jīng)授權(quán)的惡意程序修改配置文件,保證系統(tǒng)安全。
[0032]本實(shí)施例中,步驟2)的詳細(xì)實(shí)施步驟如下:
2.1)截獲普通用戶的訪問(wèn)請(qǐng)求,如果收到特權(quán)操作請(qǐng)求,則跳轉(zhuǎn)執(zhí)行步驟2.2),否則繼續(xù)返回重新執(zhí)行步驟2.1);
2.2)觸發(fā)啟動(dòng)C/S模式的客戶端,C/S模式的客戶端具有存儲(chǔ)有特權(quán)程序和管理員角色之間關(guān)聯(lián)關(guān)系的配置文件的只讀權(quán)限;C/S模式的客戶端讀取存儲(chǔ)有特權(quán)程序和管理員角色之間的關(guān)聯(lián)關(guān)系的配置文件,解析特權(quán)操作請(qǐng)求并將特權(quán)操作請(qǐng)求的用戶信息、目標(biāo)特權(quán)程序、與目標(biāo)特權(quán)程序關(guān)聯(lián)的管理員角色通過(guò)進(jìn)程間通信的方式發(fā)送給C/S模式的服務(wù)端,通過(guò)C/S模式的服務(wù)端執(zhí)行步驟3)。
[0033]本實(shí)施例中,步驟2)、步驟3)通過(guò)C/S模式實(shí)現(xiàn),步驟2)由C/S模式的客戶端實(shí)現(xiàn),步驟3)由C/S模式的服務(wù)端實(shí)現(xiàn),在其它實(shí)施例中也可以采用其它方式實(shí)現(xiàn)。當(dāng)普通用戶執(zhí)行提權(quán)程序時(shí),便會(huì)觸發(fā)C/S模式的客戶端讀取配置文件,系統(tǒng)中C/S模式的客戶端(C/S客戶端)是被配置為具有存儲(chǔ)有特權(quán)程序和管理員角色之間關(guān)聯(lián)關(guān)系的配置文件的只讀權(quán)限,因此可以直接讀取配置文件(只讀);而普通用戶只有提權(quán)至指定的管理員角色才具有對(duì)配置文件的讀寫(xiě)權(quán)限,從而能夠?qū)ε渲梦募M(jìn)行訪問(wèn)、編輯,通過(guò)上述設(shè)置,主要目的是保護(hù)配置文件不被非法訪問(wèn)和修改,配置文件的讀取權(quán)限只有運(yùn)行C/S的客戶端(運(yùn)行時(shí)會(huì)轉(zhuǎn)換到特殊的上下文)和配置文件修改的程序(提權(quán)到安全管理員)。
[0034]本實(shí)施例中,當(dāng)截獲到普通用戶的訪問(wèn)請(qǐng)求時(shí),觸發(fā)客戶端接收特權(quán)操作請(qǐng)求并由客戶端對(duì)特權(quán)操作請(qǐng)求進(jìn)行解析,將對(duì)應(yīng)的發(fā)起特權(quán)操作請(qǐng)求的用戶、特權(quán)操作請(qǐng)求執(zhí)行的目標(biāo)特權(quán)程序、配置文件中與目標(biāo)特權(quán)程序關(guān)聯(lián)的管理員角色以及相關(guān)的系統(tǒng)環(huán)境變量等信息通過(guò)進(jìn)程間通信的方式發(fā)送給C/S模式的服務(wù)端。
[0035]本實(shí)施例中,步驟3)具體是通過(guò)作為C/S模式的服務(wù)端的服務(wù)框架程序?qū)崿F(xiàn)的,且服務(wù)框架程序的安全屬性被強(qiáng)制控制為只能進(jìn)行設(shè)置派生子進(jìn)程的安全屬性、執(zhí)行特權(quán)程序,和操作系統(tǒng)的密碼驗(yàn)證模塊進(jìn)行進(jìn)程間通信實(shí)現(xiàn)對(duì)普通用戶進(jìn)行身份驗(yàn)證,以及C/S模式的客戶端進(jìn)行進(jìn)程間通信。服務(wù)框架程序在收到C/S模式的客戶端通過(guò)進(jìn)程間通信的方式發(fā)送的信息后,首先通過(guò)進(jìn)程間通信調(diào)用操作系統(tǒng)的密碼驗(yàn)證模塊來(lái)對(duì)發(fā)起特權(quán)操作請(qǐng)求的普通用戶進(jìn)行身份驗(yàn)證,如果身份驗(yàn)證通過(guò),則派生子進(jìn)程并設(shè)置子進(jìn)程的安全屬性,使子進(jìn)程的安全屬性繼承特權(quán)操作請(qǐng)求的目標(biāo)特權(quán)程序所對(duì)應(yīng)的管理員角色的安全屬性,然后通過(guò)派生的子進(jìn)程執(zhí)行特權(quán)程序;如果身份驗(yàn)證不通過(guò),則拒絕普通用戶的特權(quán)操作請(qǐng)求并退出。本實(shí)施例采用C/S模式的提權(quán)方式時(shí),通過(guò)客戶端截獲用戶的特權(quán)操作請(qǐng)求,由客戶端解析后將信息發(fā)送給服務(wù)端,由服務(wù)端進(jìn)行安全屬性的設(shè)置并代替用戶執(zhí)行特權(quán)操作,實(shí)現(xiàn)方法簡(jiǎn)單、提權(quán)方式靈活。本實(shí)施例同時(shí)給服務(wù)框架程序設(shè)置特殊安全屬性,服務(wù)框架程序運(yùn)行時(shí),其進(jìn)程的安全屬性也被設(shè)置特殊安全屬性,通過(guò)強(qiáng)制訪問(wèn)控制系統(tǒng)來(lái)限制特權(quán)服務(wù)框架的權(quán)限,使其只能設(shè)置派生子進(jìn)程的安全屬性、執(zhí)行配置文件中存在的特權(quán)程序,和C/S模式的客戶端、密碼驗(yàn)證模塊進(jìn)行進(jìn)程間通信,其它操作均會(huì)受到限制。
[0036]本實(shí)施例通過(guò)對(duì)存儲(chǔ)特權(quán)程序與管理員角色的關(guān)聯(lián)關(guān)系的配置文件以及C/S模式時(shí)的服務(wù)框架進(jìn)程設(shè)置特殊安全屬性,使特權(quán)程序、特權(quán)服務(wù)框架進(jìn)程均在限定的范圍內(nèi)運(yùn)行,實(shí)現(xiàn)了最小特權(quán)原則以及責(zé)任分離原則。
[0037]如圖3所示,本實(shí)施例中C/S模式下步驟2)的具體實(shí)施流程,普通用戶發(fā)送請(qǐng)求特權(quán)服務(wù)請(qǐng)求時(shí),由客戶端截獲普通用戶的請(qǐng)求,客戶端接收到特權(quán)服務(wù)請(qǐng)求后向服務(wù)端的特權(quán)服務(wù)框架發(fā)送信息,其中信息包括用戶信息、目標(biāo)特權(quán)程序、與目標(biāo)特權(quán)程序關(guān)聯(lián)的管理員角色;服務(wù)端的特權(quán)服務(wù)框架接收到客戶端的信息后,調(diào)用密碼驗(yàn)證模塊驗(yàn)證發(fā)起特權(quán)服務(wù)請(qǐng)求的用戶的身份,判斷用戶是否為授權(quán)用戶,如果用戶成功授權(quán)后,切換用戶角色,即由特權(quán)服務(wù)框架派生子進(jìn)程并設(shè)置子進(jìn)程的安全屬性,使子進(jìn)程的安全屬性繼承特權(quán)操作請(qǐng)求的目標(biāo)特權(quán)程序所對(duì)應(yīng)的管理員角色的安全屬性,再通過(guò)子進(jìn)程執(zhí)行目標(biāo)特權(quán)程序;如果用戶未成功授權(quán),返回執(zhí)行用戶身份驗(yàn)證。
[0038]上述只是本發(fā)明的較佳實(shí)施例,并非對(duì)本發(fā)明作任何形式上的限制。雖然本發(fā)明已以較佳實(shí)施例揭露如上,然而并非用以限定本發(fā)明。任何熟悉本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明技術(shù)方案范圍的情況下,都可利用上述揭示的技術(shù)內(nèi)容對(duì)本發(fā)明技術(shù)方案做出許多可能的變動(dòng)和修飾,或修改為等同變化的等效實(shí)施例。因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明技術(shù)實(shí)質(zhì)對(duì)以上實(shí)施例所做的任何簡(jiǎn)單修改、等同變化及修飾,均應(yīng)落在本發(fā)明技術(shù)方案保護(hù)的范圍內(nèi)。
【權(quán)利要求】
1.一種支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法,其特征在于具體實(shí)施步驟如下: 1)預(yù)先強(qiáng)制將操作系統(tǒng)的特權(quán)程序分類并與不同的管理員角色進(jìn)行關(guān)聯(lián); 2)檢測(cè)普通用戶的訪問(wèn)請(qǐng)求,當(dāng)檢測(cè)到特權(quán)操作請(qǐng)求時(shí),跳轉(zhuǎn)執(zhí)行步驟3); 3)對(duì)發(fā)出特權(quán)操作請(qǐng)求的普通用戶進(jìn)行身份驗(yàn)證,如果身份驗(yàn)證通過(guò),則派生子進(jìn)程,設(shè)置所述子進(jìn)程的安全屬性并使所述子進(jìn)程的安全屬性繼承特權(quán)操作請(qǐng)求的目標(biāo)特權(quán)程序所關(guān)聯(lián)的管理員角色的安全屬性,通過(guò)所述子進(jìn)程執(zhí)行目標(biāo)特權(quán)程序;如果身份驗(yàn)證不通過(guò),則拒絕用戶的特權(quán)操作請(qǐng)求并退出。
2.根據(jù)權(quán)利要求1所述的支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法,其特征在于,所述步驟O的具體實(shí)施步驟如下: 1.1)預(yù)先強(qiáng)制將操作系統(tǒng)的特權(quán)程序按功能進(jìn)行分類; 1.2)根據(jù)所述特權(quán)程序的分類,將歸類后的每一類特權(quán)程序分別與對(duì)應(yīng)的管理員角色進(jìn)行關(guān)聯(lián),得到每一個(gè)特權(quán)程序與管理員角色之間的關(guān)聯(lián)關(guān)系; 1.3)將所述每一個(gè)特權(quán)程序與管理員角色之間的關(guān)聯(lián)關(guān)系作為配置文件存儲(chǔ),且針對(duì)所述配置文件提供修改配置文件的特權(quán)程序,將修改配置文件的特權(quán)程序與指定的管理員角色進(jìn)行關(guān)聯(lián),使得普通用戶只有提權(quán)至指定的管理員角色才具有對(duì)所述配置文件的讀寫(xiě)權(quán)限。
3.根據(jù)權(quán)利要求2所述的支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法,其特征在于,所述步驟1.0中的管理員角色具體包括系統(tǒng)管理員、安全管理員、審計(jì)管理員三類,所述預(yù)先強(qiáng)制將操作系統(tǒng)的特權(quán)程序按功能進(jìn)行分類具體是指強(qiáng)制將操作系統(tǒng)的特權(quán)程序按功能分類為由系統(tǒng)管理員執(zhí)行、由安全管理員執(zhí)行、由審計(jì)管理員執(zhí)行三類。
4.根據(jù)權(quán)利要求3所述的支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法,其特征在于,所述步驟1.3)中指定的管理員角色具體是指安全管理員。
5.根據(jù)權(quán)利要求廣4中任意一項(xiàng)所述的支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法,其特征在于,所述步驟2)的詳細(xì)實(shí)施步驟如下: 2.1)截獲普通用戶的訪問(wèn)請(qǐng)求,如果收到特權(quán)操作請(qǐng)求,則跳轉(zhuǎn)執(zhí)行步驟2.2),否則繼續(xù)返回重新執(zhí)行步驟2.1); 2.2)觸發(fā)啟動(dòng)C/S模式的客戶端,所述C/S模式的客戶端具有所述存儲(chǔ)有特權(quán)程序和管理員角色之間關(guān)聯(lián)關(guān)系的配置文件的只讀權(quán)限;所述C/S模式的客戶端讀取所述存儲(chǔ)有特權(quán)程序和管理員角色之間關(guān)聯(lián)關(guān)系的配置文件,解析收到的特權(quán)操作請(qǐng)求并將特權(quán)操作請(qǐng)求的用戶信息、目標(biāo)特權(quán)程序、與目標(biāo)特權(quán)程序關(guān)聯(lián)的管理員角色通過(guò)進(jìn)程間通信的方式發(fā)送給C/S模式的服務(wù)端,通過(guò)C/S模式的服務(wù)端執(zhí)行步驟3)。
6.根據(jù)權(quán)利要求5所述的支持強(qiáng)制訪問(wèn)控制的用戶提權(quán)方法,其特征在于:所述步驟3)具體是通過(guò)作為C/S模式的服務(wù)端的服務(wù)框架程序?qū)崿F(xiàn)的,且所述服務(wù)框架程序的安全屬性被強(qiáng)制控制為只能進(jìn)行設(shè)置派生子進(jìn)程的安全屬性、執(zhí)行特權(quán)程序,和操作系統(tǒng)的密碼驗(yàn)證模塊進(jìn)行進(jìn)程間通信實(shí)現(xiàn)對(duì)普通用戶進(jìn)行身份驗(yàn)證,以及C/S模式的客戶端進(jìn)行進(jìn)程間通信。
【文檔編號(hào)】G06F21/31GK104036166SQ201410257094
【公開(kāi)日】2014年9月10日 申請(qǐng)日期:2014年6月11日 優(yōu)先權(quán)日:2014年6月11日
【發(fā)明者】陳松政, 羅求, 魏立峰, 董攀, 黃辰林, 付松齡, 丁滟, 唐曉東 申請(qǐng)人:中國(guó)人民解放軍國(guó)防科學(xué)技術(shù)大學(xué)