程序員如何正確規(guī)范的寫編碼?鄭州北大青鳥與您分享
軟件程序員,在編譯的時候會存在很多漏洞,而這些漏洞在日后的應(yīng)用過程中會帶來想象不到的惡果。今天鄭州北大青鳥技術(shù)老師,將給大家分享一下關(guān)于如何提高編碼安全性的八大注意點。
下面列舉的這些方法會有助于開發(fā)人員提高編碼的安全性:
一、注意編譯器警告
程序員應(yīng)當(dāng)使用編譯器的最高警告等級。在編譯過程中,應(yīng)當(dāng)修改程序中的錯誤,直到警告解除。應(yīng)當(dāng)使用靜態(tài)和動態(tài)的分析工具來檢測和清除安全缺陷。
二、驗證輸入
程序設(shè)計者在設(shè)計程序時必須驗證來自所有不可信數(shù)據(jù)源的輸入。適當(dāng)?shù)妮斎腧炞C可以清除多數(shù)軟件漏洞。在設(shè)計程序時,必須對多數(shù)外部的數(shù)據(jù)源抱著懷疑的態(tài)度,其中包括命令行參數(shù)、網(wǎng)絡(luò)接口、環(huán)境變量、用戶控制的文件等。
三、根據(jù)安全策略設(shè)置軟件架構(gòu)
設(shè)計者應(yīng)創(chuàng)建一個軟件架構(gòu),并在設(shè)計軟件的過程中實施和強化安全策略。例如,如果你的系統(tǒng)在不同的時間要求不同的特權(quán),就不妨考慮將系統(tǒng)分解成能夠互聯(lián)通信的不同的子系統(tǒng),每一個系統(tǒng)都有自己適當(dāng)?shù)奶貦?quán)。這種“分而治之”的方法可以有效地提高應(yīng)用程序的安全性。
四、拒絕默認訪問
訪問決策的制定應(yīng)當(dāng)根據(jù)許可權(quán)限而不是根據(jù)其它的任何方面。這意味著,默認情況下,應(yīng)當(dāng)拒絕訪問,程序的保護機制應(yīng)當(dāng)根據(jù)“允許誰訪問”來確認訪問條件。
五、保持程序簡單
設(shè)計者要盡量使程序短小精悍。復(fù)雜的設(shè)計會增加實施、配置、使用過程中出現(xiàn)錯誤的可能性。程序越復(fù)雜,就需要越多的復(fù)雜的安全控制,企業(yè)需要付出的努力也就會越多。
六、遵循最小特權(quán)原則
程序的每個處理過程在執(zhí)行時,都應(yīng)當(dāng)僅使用為完成其工作而需要的最小特權(quán)。任何提升的許可權(quán)限都要盡量持續(xù)最短的時間。這種方法可以減少攻擊者用提升的特權(quán)執(zhí)行任意代碼的可能性。
七、實施深度防御
程序設(shè)計必須能夠利用多種防御策略來管理風(fēng)險。只有這樣,才能在一層防御不夠用或失效時,另外一層防御可以防止將安全設(shè)計上的缺陷變成可被利用的漏洞,從而可以限制攻擊者利用漏洞的后果。例如,將安全編程技術(shù)與安全運行環(huán)境結(jié)合起來,可以減少在部署階段殘存在代碼中的漏洞被攻擊者在操作環(huán)境中利用的可能性。
八、“凈化”傳送給其它系統(tǒng)的數(shù)據(jù)
所謂“凈化”是指從用戶輸入的數(shù)據(jù)中清除惡意數(shù)據(jù),如清除用戶提交表單時的惡意的或錯誤的字符。
程序設(shè)計者必須對傳送到復(fù)雜的子系統(tǒng)(如命令外殼、關(guān)系型數(shù)據(jù)庫、購買的商業(yè)軟件組件)的所有數(shù)據(jù)進行“凈化”。攻擊者有可能通過使用 SQL 注入命令或其它注入攻擊來調(diào)用這些組件中沒有被使用的功能。這未必是輸入驗證問題,因為被調(diào)用的復(fù)雜的子系統(tǒng)并不理解調(diào)用過程中的前后關(guān)系。由于調(diào)用程序 理解前后關(guān)系,所以我們要在調(diào)用子系統(tǒng)之前對數(shù)據(jù)進行“凈化”。
當(dāng)然,為保證代碼的安全,企業(yè)應(yīng)當(dāng)為開發(fā)語言和平臺制定并實施一套健全的編碼標(biāo)準。
更多相關(guān)安全問題可訪問http:///wlaq/
本文由站河南北大青鳥校區(qū)整編而成,如需了解更多IT資訊類的文章、新聞、課程和學(xué)習(xí)技巧、就業(yè)案例、招生詳情等問題,可以對在線咨詢老師進行一對一問答!
- 上一篇:返回列表
- 下一篇:鄭州北大青鳥:快速增強路由器安全的十個小技巧
推薦資訊
- 計算機小技巧,80G硬盤巧變變成... 2018-09-07
- 大學(xué)畢業(yè)生注意了,等待就業(yè)不是... 2013-01-10
- 鄭州北大青鳥電腦培訓(xùn)班有哪些專... 2014-01-17
- 計算機專業(yè)學(xué)校北大青鳥好不?... 2019-07-20
- 鄭州大數(shù)據(jù)專業(yè)培訓(xùn)機構(gòu)哪家好... 2020-03-06
熱點資訊
- 如何從外置硬盤中清除感染病毒... 2017-06-11
- 谷歌瀏覽器用戶密碼安全難保... 2017-06-11
- 網(wǎng)站安全性需要注意哪些方面... 2017-06-11
- Linux中服務(wù)器軟件為什么需要編譯... 2017-06-11
- 安卓隱患:防毒軟件無法偵測木馬... 2013-08-06