淺談做程序員需要注意那些規(guī)則

2022-07-14    分類: 網(wǎng)站建設

標簽:網(wǎng)站建設、成都網(wǎng)站設計 程序員

     一、注意編譯器警告

    程序員應當使用編譯器的高警告等級。在編譯過程中,應當修改程序中的錯誤,直到警告解除。應當使用靜態(tài)和動態(tài)的分析工具來檢測和清除安全缺陷。

二、根據(jù)安全策略設置軟件架構

   設計者應創(chuàng)建一個軟件架構,并在設計軟件的過程中實施和強化安全策略。例如,如果你的系統(tǒng)在不同的時間要求不同的特權,就不妨考慮將系統(tǒng)分解成能夠互聯(lián)通信的不同的子系統(tǒng),每一個系統(tǒng)都有自己適當?shù)奶貦?。這種“分而治之”的方法可以有效地提高應用程序的安全性。

    三、驗證碼

    程序設計者在設計程序時必須驗證來自所有不可信數(shù)據(jù)源的輸入。適當?shù)妮斎腧炞C可以清除多數(shù)軟件漏洞。在設計程序時,必須對多數(shù)外部的數(shù)據(jù)源抱著懷疑的態(tài)度,其中包括命令行參數(shù)、網(wǎng)絡接口、環(huán)境變量、用戶控制的文件等。

     四、保持程序簡單

設計者要盡量使程序短小精悍。復雜的設計會增加實施、配置、使用過程中出現(xiàn)錯誤的可能性。程序越復雜,就需要越多的復雜的安全控制,企業(yè)需要付出的努力也就會越多。

   五、拒絕默認訪問

訪問決策的制定應當根據(jù)許可權限而不是根據(jù)其它的任何方面。這意味著,默認情況下,應當拒絕訪問,程序的保護機制應當根據(jù)“允許誰訪問”來確認訪問條件。

    六、遵循最小特權原則

程序的每個處理過程在執(zhí)行時,都應當僅使用為完成其工作而需要的最小特權。任何提升的許可權限都要盡量持續(xù)最短的時間。這種方法可以減少攻擊者用提升的特權執(zhí)行任意代碼的可能性。

    七、“凈化”傳送給其它系統(tǒng)的數(shù)據(jù)

所謂“凈化”是指從用戶輸入的數(shù)據(jù)中清除惡意數(shù)據(jù),如清除用戶提交表單時的惡意的或錯誤的字符。

程序設計者必須對傳送到復雜的子系統(tǒng)(如命令外殼、關系型數(shù)據(jù)庫、購買的商業(yè)軟件組件)的所有數(shù)據(jù)進行“凈化”。攻擊者有可能通過使用 SQL 注入命令或其它注入攻擊來調用這些組件中沒有被使用的功能。這未必是輸入驗證問題,因為被調用的復雜的子系統(tǒng)并不理解調用過程中的前后關系。由于調用程序 理解前后關系,所以我們要在調用子系統(tǒng)之前對數(shù)據(jù)進行“凈化”。

      八、實施深度防御

      程序設計必須能夠利用多種防御策略來管理風險。只有這樣,才能在一層防御不夠用或失效時,另外一層防御可以防止將安全設計上的缺陷變成可被利用的漏洞,從而可以限制攻擊者利用漏洞的后果。例如,將安全編程技術與安全運行環(huán)境結合起來,可以減少在部署階段殘存在代碼中的漏洞被攻擊者在操作環(huán)境中利用的可能性。

     九、使用有效的質量保證技術

良好的質量保證技術可以有效地確認和清除漏洞。模糊測試、滲透測試、源代碼審計等都可以結合起來使用,以此作為一個有效的質量保證項目的一部 分。獨立的安全檢查可以使系統(tǒng)更安全。有資質的外部審查人員可以提供獨立的觀點,例如,外部人員有助于確認和糾正一些錯誤的設想。

當然,為保證代碼的安全,企業(yè)應當為開發(fā)語言和平臺制定并實施一套健全的編碼標準。

當前題目:淺談做程序員需要注意那些規(guī)則
標題鏈接:http://www.bm7419.com/news20/178420.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設計公司、外貿網(wǎng)站建設、面包屑導航、企業(yè)建站、建站公司標簽優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化