梅強(qiáng)
(江西工程學(xué)院,江西 新余 338029)
基于敏感信息分類的網(wǎng)絡(luò)信息安全編程方法優(yōu)化研究
梅強(qiáng)
(江西工程學(xué)院,江西 新余 338029)
敏感信息指的是容易丟失或容易被他人竊取的信息,而網(wǎng)絡(luò)安全指的是網(wǎng)絡(luò)系統(tǒng)的硬件及軟件系統(tǒng)中對數(shù)據(jù)的保護(hù),使得數(shù)據(jù)不會因意外或蓄意因素而遭到泄漏、更改、毀壞等情況。網(wǎng)絡(luò)信息安全編程一般要經(jīng)過安全設(shè)計、安全編程和安全測試三個階段,而基于敏感信息分類的網(wǎng)絡(luò)安全編程則是以基本網(wǎng)絡(luò)安全編程為基礎(chǔ)的復(fù)雜編程手段。在設(shè)計并優(yōu)化了基于敏感信息分類的網(wǎng)絡(luò)安全編程之后,還應(yīng)設(shè)計接近實際情況的仿真實驗,測試軟件的實用效果。
敏感信息分類;網(wǎng)絡(luò)信息安全;編程方法
隨著網(wǎng)絡(luò)信息安全問題日益嚴(yán)重,安全編程技術(shù)隨之受到了廣泛的重視。安全編程技術(shù)能夠有效降低甚至消除網(wǎng)絡(luò)安全風(fēng)險,避免信息尤其是敏感信息遭到竊取或破壞。
目前,市場上對軟件的需求日益加強(qiáng),為了提高軟件編程的速度,很多軟件開發(fā)公司已經(jīng)開始聘請大量沒有軟件安全經(jīng)驗的編程人員參與到軟件的制作當(dāng)中。安全的程序編程非常重要,因此必須對安全編程的方法進(jìn)行優(yōu)化。
容易丟失被不法分子竊取的、具有一定價值的信息被稱之為敏感信息,根據(jù)我國工業(yè)與信息化部的要求,個人信息只有在個人主體知情并同意的前提下,他人或組織才有權(quán)對其使用。并且,處理敏感信息時必須遵循以下八項基本原則:明確目標(biāo)、最少夠用、公開告知、達(dá)到質(zhì)量要求、獲準(zhǔn)同意、保證安全、履行誠信以及明確責(zé)任。
網(wǎng)絡(luò)安全指的是網(wǎng)絡(luò)系統(tǒng)的硬件、軟件以及系統(tǒng)中的數(shù)據(jù)會受到保護(hù),不會因為突發(fā)狀況括蓄意因素而導(dǎo)致數(shù)據(jù)信息遭到泄漏、更改甚至破壞[1]。網(wǎng)絡(luò)安全是保障系統(tǒng)能夠持續(xù)正常運(yùn)行的關(guān)鍵因素,是確保網(wǎng)絡(luò)服務(wù)不會中斷的最主要措施。網(wǎng)絡(luò)安全主要具有保密性、完整性、可控性以及可審查性。
建立安全威脅的模型是應(yīng)對并解決軟件安全問題的有效方法之一,其基本理論為,只有明確了應(yīng)用程序所受到的威脅以及需要減少風(fēng)險的目標(biāo)數(shù)量才能夠建立起有效的安全系統(tǒng)。因此,應(yīng)首先分析軟件的安全環(huán)境等情況明確軟件可能受到威脅的種類、頻率以及程度,然后根據(jù)這些信息和要求建立起軟件安全的基礎(chǔ)點,將模型中創(chuàng)造出來的威脅關(guān)聯(lián)到相應(yīng)解決方案的組件上,對所有威脅的安全代價進(jìn)行計算,最后根據(jù)風(fēng)險的級別對威脅進(jìn)行消除或減輕。
3.1 基本網(wǎng)絡(luò)安全編程
(1)安全設(shè)計。對編程的代碼安全性問題應(yīng)在設(shè)計階段就提出,并針對相應(yīng)的安全性問題設(shè)計解決的方案。軟件的安全性在設(shè)計時就應(yīng)被當(dāng)做是程序的基礎(chǔ)功能之一,如果僅僅在設(shè)計結(jié)束后補(bǔ)充安全措施,那僅僅是在已有功能的基礎(chǔ)上添加安全模塊而已,從預(yù)防風(fēng)險的效果和效率上來看都不會達(dá)到理想狀態(tài)。而且事后增添安全模塊還有可能改變程序的接口,使得那些依賴此接口的所有代碼都無法運(yùn)行,給軟件本身帶來更大的安全問題。
(2)安全編程。安全編程的原則在于保證數(shù)據(jù)的秘密性和完整性以及數(shù)據(jù)的有效性,避免使用非安全的C函數(shù)為例,很多緩沖區(qū)溢出的問題都能夠最終追溯到標(biāo)準(zhǔn)C庫的幾個函數(shù)當(dāng)中,特別是對于未經(jīng)安全檢查的字符串操作來說。并且,類似于C+或C++這種基于C語言的計算機(jī)編程語言中,非安全函數(shù)的問題還是會出現(xiàn),但這些危險的函數(shù)可以在本語言中找到安全的替代函數(shù)[2],只要盡量避免使用這樣的函數(shù),就可以有效降低漏洞的出現(xiàn)率,而這也是軟件安全編程的基本要求之一。
(3)安全測試。主要方法有五種:第一,以網(wǎng)絡(luò)駭客的思維特征測定程序安全性;第二,對軟件中的所有緩沖區(qū)進(jìn)行檢測;第三,對所有命令行的參數(shù)輸入進(jìn)行測試;第四,確保所有測試人員均為該程序編程的內(nèi)部工程師,絕對禁止外部人員參與到安全測試當(dāng)中;第五,使用檢測工具。關(guān)于軟件安全測試的檢測工具,一般分為靜態(tài)工具和動態(tài)工具兩種,靜態(tài)工具只負(fù)責(zé)對代碼進(jìn)行檢測,但不運(yùn)行程序;而動態(tài)工具要通過運(yùn)行程序的方式,使程序隨機(jī)產(chǎn)生出一些緩沖區(qū),對這些緩沖區(qū)進(jìn)行安全監(jiān)測。
3.2 基于敏感信息分類的網(wǎng)絡(luò)安全編程
TN915.08
A
1671-0711(2016)10(下)-0096-02