在线观看国产区-在线观看国产欧美-在线观看国产免费高清不卡-在线观看国产久青草-久久国产精品久久久久久-久久国产精品久久久

美章網(wǎng) 資料文庫(kù) 軟件工程防篡改技術(shù)研究范文

軟件工程防篡改技術(shù)研究范文

本站小編為你精心準(zhǔn)備了軟件工程防篡改技術(shù)研究參考范文,愿這些范文能點(diǎn)燃您思維的火花,激發(fā)您的寫(xiě)作靈感。歡迎深入閱讀并收藏。

軟件工程防篡改技術(shù)研究

關(guān)鍵詞:軟件保護(hù);防篡改技術(shù);軟件安全

1軟件防篡改技術(shù)的基本概念

1.1軟件防篡改技術(shù)的定義

第一,靜態(tài)防篡改技術(shù)。依賴軟件內(nèi)部代碼的混淆思想,通過(guò)添加執(zhí)行代碼,將原本應(yīng)用程序內(nèi)部代碼混亂后,降低應(yīng)用程序的可讀性,也稱之為代碼混淆技術(shù)。第二,動(dòng)態(tài)防篡改技術(shù)。依賴軟件檢測(cè)響應(yīng)思想,通過(guò)內(nèi)部軟件或外部硬件,阻止軟件被非法修改后應(yīng)用程序正常運(yùn)行。該技術(shù)能夠在發(fā)現(xiàn)軟件被非法篡改后作出錯(cuò)誤結(jié)果輸出,軟件無(wú)響應(yīng),終止程序運(yùn)行,從而保護(hù)軟件安全。

1.2常見(jiàn)的軟件篡改技術(shù)攻擊模型

軟件被下載到客戶端后,可能受到不同宿主的攻擊,比如修改軟件內(nèi)部授權(quán)、修改內(nèi)部商業(yè)信息等。本文分析了常見(jiàn)的三種軟件篡改攻擊模型。第一,獲取非授權(quán)訪問(wèn)。軟件篡改人員通過(guò)繞過(guò)軟件中的訪問(wèn)控制機(jī)制,重新定義軟件授權(quán)內(nèi)容,進(jìn)而繞過(guò)原有軟件內(nèi)部機(jī)制訪問(wèn),重新分發(fā)軟件副本后獲取利益。第二,逆向工程。篡改人員通過(guò)反匯編技術(shù)、反編譯技術(shù)等逆向思維模式,獲取軟件內(nèi)部的全部或部分核心控制源代碼,從而從軟件內(nèi)部破解核心加密信息、核心機(jī)密等內(nèi)容,將軟件據(jù)為己用。第三,破壞代碼完整性。篡改人員通過(guò)向軟件內(nèi)部嵌入惡意代碼或修改、替換部分代碼,擾亂程序或繞過(guò)原有軟件內(nèi)部驗(yàn)證保護(hù)模塊,從而獲取利益。

1.3軟件防篡改技術(shù)的應(yīng)用

第一,商業(yè)軟件作為付費(fèi)軟件,軟件開(kāi)發(fā)人員要保證使用者的商業(yè)利益和使用環(huán)境。例如,當(dāng)訪問(wèn)控制模塊面臨被篡改威脅時(shí),可以啟動(dòng)內(nèi)部校驗(yàn)機(jī)制,驗(yàn)證軟件是否被修改,或采用獨(dú)立模塊加密等方式,確保軟件的安全性和唯一性。第二,Java應(yīng)用程序被開(kāi)發(fā)人員廣泛使用,面臨了更大的威脅。Java程序包內(nèi)包含若干class類文件,該文件中保存了變量池和語(yǔ)義信息定義[1]。因此,保護(hù)人員會(huì)在程序中添加諸多加密算法,有效保護(hù)軟件,防止應(yīng)用程序被惡意篡改。第三,數(shù)字版權(quán)系統(tǒng)中,防篡改技術(shù)會(huì)采用加密或混淆等方式,有效保護(hù)傳輸過(guò)程中產(chǎn)生的數(shù)字內(nèi)容,防止中途被惡意截取,有效保護(hù)數(shù)據(jù)。除上述內(nèi)容外,防篡改技術(shù)在C/S、無(wú)線網(wǎng)絡(luò)傳輸、物聯(lián)網(wǎng)等均有良好的應(yīng)用場(chǎng)景。面對(duì)惡意篡改帶來(lái)的威脅,隨著新技術(shù)的研究和拓展,軟件防篡改技術(shù)會(huì)更加完善。

1.4軟件防篡改技術(shù)的評(píng)價(jià)指標(biāo)

軟件防篡改技術(shù)的主要評(píng)價(jià)指標(biāo)包括以下兩方面內(nèi)容。第一,隱秘性。隱秘性防篡改技術(shù)要求修改后的代碼與源代碼有高度相似性,不會(huì)輕易被攻擊者探測(cè),可以在一定程度上避免攻擊或者繞開(kāi)攻擊代碼。該方案應(yīng)充分考慮空間模塊問(wèn)題,要將隱匿代碼分布在不同模塊,將攻擊者的思路和攻擊內(nèi)容引導(dǎo)至錯(cuò)的區(qū)域,進(jìn)而保護(hù)軟件。第二,彈性。彈性表現(xiàn)了軟件對(duì)攻擊者有一定抵抗性,面對(duì)惡意代碼時(shí),軟件可以依靠自身防御措施,在一定程度上抵御攻擊。例如,某些模塊受到攻擊時(shí),其他模塊仍可正常工作,當(dāng)危險(xiǎn)全面解除,被攻擊模塊代碼安全檢測(cè)通過(guò)后,系統(tǒng)恢復(fù)正常運(yùn)行。

2現(xiàn)有軟件防篡改技術(shù)

2.1靜態(tài)防篡改技術(shù)

軟件靜態(tài)防篡改技術(shù)指通過(guò)添加代碼或替換程序內(nèi)容,加大靜態(tài)分析難度,進(jìn)而阻止攻擊者通過(guò)逆向手段獲取軟件核心代碼[2]。現(xiàn)階段,常見(jiàn)的混淆技術(shù)主要包括詞法混淆、數(shù)據(jù)混淆、流混淆、切片混淆和預(yù)防混淆等技術(shù)。

2.2動(dòng)態(tài)防篡改技術(shù)

動(dòng)態(tài)防篡改技術(shù)主要包括完整性檢測(cè)和響應(yīng)兩部分。第一,完整性檢測(cè)。通過(guò)一種標(biāo)識(shí)位識(shí)別應(yīng)用程序是否遭受破壞。完整性檢測(cè)是動(dòng)態(tài)防篡改技術(shù)的檢驗(yàn)基礎(chǔ),可以針對(duì)當(dāng)前應(yīng)用程序的Hash值、校驗(yàn)和、數(shù)字簽名等內(nèi)容,計(jì)算軟件的完整性是否達(dá)標(biāo)。第二,響應(yīng)檢測(cè)。現(xiàn)階段,常見(jiàn)的響應(yīng)性檢測(cè)方法包括指針置空響應(yīng)、哨兵機(jī)制檢測(cè)響應(yīng)等方式。該設(shè)計(jì)模式主要依賴軟件動(dòng)態(tài)響應(yīng)技術(shù),面對(duì)突發(fā)惡意代碼,可以結(jié)合預(yù)編寫(xiě)探針模塊執(zhí)行指定代碼,將攻擊者引導(dǎo)至錯(cuò)誤方向,防止應(yīng)用程序被篡改。

2.3軟件防篡改模型

軟件開(kāi)發(fā)人員和測(cè)試人員工作過(guò)程中,會(huì)通過(guò)ObliviousHashing等模型來(lái)對(duì)軟件進(jìn)行攻擊模擬實(shí)驗(yàn),并在各個(gè)環(huán)節(jié)計(jì)算Hash值,與原始預(yù)存Hash值對(duì)比,校驗(yàn)程序的完整性。作為一種軟件驗(yàn)證模型,與傳統(tǒng)Hash校驗(yàn)相比,隱式Hash模型依賴程序運(yùn)行變量計(jì)算而非靜態(tài)特征代碼,保證了程序的隱秘性和安全性。

2.4事件日志檢測(cè)機(jī)制

軟件日志很早被應(yīng)用于軟件內(nèi)部Bug檢測(cè),監(jiān)控軟件運(yùn)行情況,后期被安全防護(hù)人員應(yīng)用于防篡改領(lǐng)域。基于事件日志,可以讓開(kāi)發(fā)者驗(yàn)證軟件在使用過(guò)程中是否被修改。開(kāi)發(fā)者將事件日志和指定保護(hù)內(nèi)容編寫(xiě)到應(yīng)用程序,軟件使用過(guò)程中,會(huì)不斷將信息上傳至服務(wù)器,進(jìn)行校驗(yàn)工作。由于校驗(yàn)?zāi)K位于服務(wù)端,因此可以避開(kāi)攻擊。開(kāi)發(fā)者可以隨時(shí)通過(guò)日志內(nèi)容,查看軟件當(dāng)前使用情況及安全策略是否正常。因?yàn)槊織l記錄都會(huì)攜帶時(shí)間戳,所以依據(jù)周期性可以良好把控軟件安全機(jī)制,防止軟件被惡意篡改。

2.5多點(diǎn)設(shè)置的哨兵防篡改技術(shù)

實(shí)際應(yīng)用過(guò)程中,軟件檢測(cè)機(jī)制和響應(yīng)機(jī)制必不可缺。基于該理論,業(yè)內(nèi)知名學(xué)者提出了基于多點(diǎn)設(shè)置的哨兵防篡改模型。該技術(shù)可以依據(jù)不同的內(nèi)容保護(hù)軟件。常見(jiàn)的哨兵防篡改模型主要分為兩種。第一,動(dòng)態(tài)求和模型。該模型中,哨兵具有完全自我感知能力,應(yīng)用程序被啟動(dòng)后,不間斷計(jì)算程序完整性,并與原有庫(kù)中內(nèi)容比對(duì),保證程序的安全性。第二,自我修復(fù)模型,該模型中,哨兵會(huì)檢測(cè)軟件內(nèi)容的代碼模塊,當(dāng)發(fā)現(xiàn)代碼的完整性被破壞后,哨兵會(huì)將該部分代碼恢復(fù)至初始版本,使攻擊者的攻擊無(wú)法產(chǎn)生任何理化效應(yīng),從而保證軟件的安全。哨兵模型實(shí)際應(yīng)用過(guò)程中,會(huì)依照軟件的實(shí)際使用場(chǎng)景和要求,嵌入到不同的模塊中。不同的哨兵模型會(huì)組建成一個(gè)完整的哨兵網(wǎng)絡(luò),攻擊者只有移除整個(gè)哨兵網(wǎng)絡(luò)才能實(shí)施攻擊。由于核心內(nèi)容由哨兵網(wǎng)絡(luò)鎖保護(hù),因此可以達(dá)到保護(hù)軟件不被惡意篡改的核心目的。

2.6加密技術(shù)的應(yīng)用

近年來(lái),加密技術(shù)被應(yīng)用于軟件防篡改領(lǐng)域。軟件開(kāi)發(fā)人員可以加密應(yīng)用程序的部分代碼,通過(guò)計(jì)算校驗(yàn)碼和Hash函數(shù),獲取秘鑰對(duì)比數(shù)據(jù)信息。軟件運(yùn)行中,只有該模塊代碼運(yùn)行時(shí)才能被解密,執(zhí)行完畢后繼續(xù)加密。通過(guò)這種執(zhí)行方法,哨兵模塊被更加深入運(yùn)用。

2.7與硬件相關(guān)的防篡改技術(shù)

單純依靠軟件實(shí)現(xiàn)防篡改技術(shù),不能取得百分百成功。開(kāi)發(fā)人員將原本設(shè)計(jì)的加密方法拆分為軟件和硬件兩個(gè)組成部分。軟件使用者無(wú)法通過(guò)單一的軟件驗(yàn)證秘鑰的完整性。軟件使用過(guò)程中,必須依靠第三方硬件中的非對(duì)稱數(shù)字加密信息才可以使用,在物理層面加以防護(hù),提高軟件的安全性。

3軟件防篡改技術(shù)展望

軟件防篡改技術(shù)領(lǐng)域,目前尚無(wú)行業(yè)統(tǒng)一評(píng)價(jià)體系。因此,建立和完善一套防篡改技術(shù)評(píng)價(jià)體系,對(duì)行業(yè)的發(fā)展有重要意義。對(duì)防篡改技術(shù)而言,檢測(cè)和響應(yīng)兩種機(jī)制必須相互依賴,二者結(jié)合可以大幅度提高破解難度。面對(duì)軟件中重要的內(nèi)容模塊,將用動(dòng)、靜兩種技術(shù)相結(jié)合,增加軟件面對(duì)反編譯和破解時(shí)的理解難度。軟件水印技術(shù)是后期興起的一種保護(hù)技術(shù)。水印可以證明軟件的完整性、統(tǒng)一性和正版版權(quán)。對(duì)于暴力破解或非法篡改,會(huì)破壞軟件內(nèi)部水印,從而判定軟件是否發(fā)生過(guò)非法篡改。

4結(jié)語(yǔ)

軟件防篡改技術(shù)是保護(hù)軟件的重要技術(shù)手段之一。本文結(jié)合現(xiàn)階段常見(jiàn)的軟件防篡改技術(shù)和保護(hù)方法,針對(duì)軟件的實(shí)際應(yīng)用場(chǎng)景,概括分析了業(yè)內(nèi)常見(jiàn)技術(shù)的優(yōu)缺點(diǎn)。

參考文獻(xiàn)

[1]馬健.軟件代碼重構(gòu)的分析與探討[J].河北北方學(xué)院學(xué)報(bào)(自然科學(xué)版),2012,28(1):26-29.

[2]陳容華.軟件代碼重構(gòu)的時(shí)機(jī)[J].科技資訊,2009(28):9.

作者:徐禮金 單位:廣東理工學(xué)院

主站蜘蛛池模板: 亚洲视频中文字幕 | 五月开心六月伊人色婷婷 | 亚洲成a人片77777在线播放 | 亚洲国产成人久久一区久久 | 一男二女在线观看 | 欧美日韩在线视频免费完整 | 五月婷婷激情四射 | 伊人网亚洲 | 三妻四妾韩国电影 | 男女视频在线观看免费高清观看 | 日日操网| 欧美精品在线观看 | 日韩欧美在线观看 | 亚洲理论电影在线观看 | 一级免费电影 | 亚洲人人视频 | 男女视频免费网站 | 亚洲国产成人九九综合 | 亚洲天码中文字幕第一页 | 婷婷伊人五月 | 久久免费视频网站 | 国产成人高清亚洲一区久久 | 亚洲精品tv久久久久久久久 | 亚洲国产影视 | 伊人激情久久综合中文字幕 | 婷婷激情五月综合 | 最近免费最新高清中文字幕韩国 | 亚洲第一免费网站 | 国产精品久久久久久久久久98 | 国产资源免费观看 | 午夜国产福利在线观看 | 欧美 亚洲 一区 | 午夜羞羞视频 | 久久免费精品视频 | 亚洲小视频在线 | 亚洲精品视频在线观看视频 | 综合久青草视频 | 最近在线观看免费完整视频 | 五月开心六月伊人色婷婷 | 日本a级精品一区二区三区 欧洲精品在线观看 | 在线观看视频亚洲 |