999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

代碼版本一致性技術保障方案

2016-05-14 03:06:47桂永宏
網絡空間安全 2016年5期

桂永宏

[摘要]軟件系統開發建設過程中存在多個環節,需確保每個環節處理源代碼版本的一致性,杜絕因為人因素或非人為因素導致代碼被篡改情況發生,最終保證編譯后運行的目標程序與源代碼版本的一致性。

[關鍵詞]代碼版本一致性;代碼審計;代碼編譯;系統部署

1 引言

軟件系統從設計開發到上線運行,中間需要經多個版本的迭代,多個環節的流程,包括代碼開發、代碼審計、代碼編譯、系統測試、部署上線等。需確保每個環節處理的源代碼版本的一致性,杜絕因為人因素或非人為因素導致代碼被篡改情況發生,最終保證編譯后運行的目標程序與源代碼的一致性。

2 現狀

綜合分析公司內部當前多個軟件系統開發建設項目,系統規模均比較大,均需要多個開發人員與其他工作人員配合分工合作,同時通過SVN進行代碼管理與版本控制。

代碼通過SVN或FTP等方式在多個環節流轉,流轉過程缺乏流程與技術手段保證代碼版本的一致性、完整性,存在流轉過程代碼版本混淆、被篡改、被掉包的可能性。

通過對各項目代碼管理現狀的分析與總結相關經驗,初步形成代碼版本一致性技術保障方案。

3 方案

根據項目經驗總結,對項目進行階段劃分,梳理出代碼流轉路徑,在流轉路徑設置控制點,通過相應的控制措施技術手段來在每一個控制點驗證代碼版本的一致性、完整性,形成驗證鏈條,最終保證生產環境上運行的系統程序的一致性、完整性。

3.1 劃分階段

根據各環節工作內容的分類,可分為幾個階段:(1)代碼開發階段,主要負責系統的源代碼開發;(2)代碼審計階段。主要負責對源代碼的審計,重點審計代碼安全性;代碼編譯階段,主要負責將源代碼編譯成目標程序;(3)系統測試階段,主要負責對系統進行功能測試與安全測試;(4)系統部署階段,主要負責將系統部署到生產環境上。

通過對各階段代碼流轉路徑的分析,主要存在幾條流轉需求與流轉路徑:(1)代碼開發階段流轉到代碼審計階段;(2)代碼開發階段流轉到代碼編譯階段;(3)代碼編譯階段流轉到系統測試階段;(4)代碼編譯階段流轉到系統部署階段。

3.2 職責分離

為確保各階段工作能夠相互牽制、相互監督,將各階段工作進行明確分工,落實職責分離,每個崗位不能互相兼任。

通過對各階段工作內容的分析總結,大致可分為幾個崗位:(1)代碼開發崗,由代碼開發人員擔任,負責代碼開發階段系統源代碼的開發;(2)代碼審計崗,由代碼審計人員擔任,負責代碼審計階段對系統源代碼開展審計工作,重點審計代碼安全性;(3)代碼編譯崗,由代碼編譯人員擔任。負責代碼編譯階段將系統源代碼編譯成目標程序;(4)系統測試崗,由系統測試人員擔任,負責系統測試階段開展系統程序的測試工作;(5)系統部署崗。由系統部署人員擔任,負責系統部署階段將系統程序部署到生產系統上。

每個崗位互相獨立,根據各階段工作順序,下一階段的崗位負責對上一階段的崗的輸入進行代碼版本一致性、完整性進行驗證。

3.3 控制點與控制措施

在各個階段的控制點采用單向散列算法(如MD5、SHA)等措施計算出代碼文件的指紋信息,通過對指紋信息的比較,確定代碼的一致性與完整性。

代碼開發階段:在完成代碼開發封版后,由代碼開發崗位人員將源代碼與編譯腳本一起打包,再用單向散列算法(如MD5、SHA)計算出代碼包的指紋信息。

代碼審計階段:源代碼包從代碼開發階段流轉至代碼審計階段,為防止該流轉過程中代碼包被篡改,代碼審計人員收到代碼后須校驗指紋信息。由代碼審計人員使用單向散列算法(如MD5、SHA)計算出代碼包的指紋信息,并與開發階段打包時計算出來的指紋信息進行比較,如果指紋一致即說明代碼包沒有被篡改。

代碼編譯階段:當通過代碼審計確認源代碼不存在安全問題后,可進入代碼編譯階段。代碼包從代碼開發階段流轉至代碼編譯階段,為防止該流轉過程中代碼包被篡改,代碼編譯人員收到代碼后須校驗指紋信息。由代碼編譯人員使用單向散列算法(如MD5、SHA)計算出代碼包的指紋信息,并與開發階段打包時計算出來的指紋信息進行比較,如果指紋一致即說明代碼包沒有被篡改。

為防止代碼編譯過程中代碼編譯人員對代碼的篡改,需對代碼編譯服務器進行管控,編譯服務器接入管控平臺(如堡壘機、4A系統等),通過在可控制的環境下對源代碼進行編譯,記錄編譯過程日志并錄屏,同時可安排第三方人員旁站監控整個編譯過程。

編譯完成后,由代碼編譯人員將目標程序打包,再用單向散列算法(如MD5、SHA)計算出程序包的指紋信息。

系統測試階段:程序包從代碼編譯階段流轉到系統測試階段,由系統測試人員對代碼編譯過程進行審計,通過管控平臺(如堡壘機、4A系統等)調出編譯過程的日志與錄屏。確認編譯過程沒有違規操作。

為防止該流轉過程中程序包被篡改,系統測試人員收到程序包后須校驗指紋信息。由系統測試人員使用單向散列算法(如MD5、SHA)計算出程序包的指紋信息,將指紋信息與編譯階段打包時計算出來的指紋信息進行比較,如果指紋一致即說明程序包沒有被篡改。

系統部署階段:當系統程序通過測試確認可投入到生產環境運行后可將系統程序部署到生產環境上。程序包從代碼編譯階段流轉到系統部署階段,為防止該流轉過程中程序包被篡改。系統部署人員收到程序包后須校驗指紋信息。由系統部署人員使用單向散列算法(如MD5、SHA)計算出程序包的指紋信息,將指紋信息與編譯階段打包時計算出來的指紋信息進行比較,如果指紋一致即說明程序包沒有被篡改。

通過上以每個階段各控制點實施控制措施,形成代碼版本一致性與完整性的控制鏈條,確認每一個環節都是可控的。確保代碼從開發階段至部署到生產系統階段的一致性與完整性。

3.4 流程圖

各階段工作流程如圖1所示。

4 結束語

通過規范代碼在各個階段的流轉過程,并在每個階段實施相應的控制措施,形成代碼版本一致性、完整改性控制鏈條,有效地保障了代碼版本的一致性。

主站蜘蛛池模板: 91小视频在线| 一区二区三区精品视频在线观看| 日本AⅤ精品一区二区三区日| www.国产福利| 直接黄91麻豆网站| 久久精品亚洲专区| 亚洲第一精品福利| 国产成人久久777777| www.av男人.com| 国产亚洲精品yxsp| 中文国产成人精品久久一| 久久先锋资源| 呦视频在线一区二区三区| 国产精品密蕾丝视频| 亚洲无码高清免费视频亚洲| 成人一区专区在线观看| 国产午夜不卡| 欧美笫一页| 精品无码一区二区三区电影| 日韩精品久久无码中文字幕色欲| 不卡无码h在线观看| 毛片在线区| 看av免费毛片手机播放| 任我操在线视频| 国产精品福利一区二区久久| 毛片久久网站小视频| 亚洲视频在线青青| 国产青榴视频| 青青青草国产| 久久午夜夜伦鲁鲁片无码免费| 国产va在线| 精品无码一区二区在线观看| 日韩精品资源| 欧美成人免费| 又黄又爽视频好爽视频| 波多野结衣一区二区三区88| 久久婷婷人人澡人人爱91| 麻豆精品视频在线原创| 91蝌蚪视频在线观看| 精品视频一区二区三区在线播| 久久一本日韩精品中文字幕屁孩| 在线国产资源| 亚洲日韩国产精品无码专区| 99re这里只有国产中文精品国产精品| 日韩AV手机在线观看蜜芽| 久久免费视频播放| 日本精品一在线观看视频| 蜜臀AV在线播放| 亚洲欧洲国产成人综合不卡| 久久亚洲国产最新网站| 久久香蕉国产线| 成人免费午间影院在线观看| 伊人福利视频| 欧美三级自拍| 国产精品99久久久| 日韩福利在线观看| 久久夜色精品| 国产成人三级| 亚洲国产成人久久77| 伊人久久福利中文字幕| 亚洲无码91视频| 国产一区二区视频在线| 国产亚洲视频中文字幕视频| 麻豆精品视频在线原创| 国产无码精品在线播放| 久久中文电影| 国产乱子伦无码精品小说| 小说区 亚洲 自拍 另类| 免费看久久精品99| 国产精品99r8在线观看| 99久久免费精品特色大片| 亚洲精品视频免费| 一本大道AV人久久综合| 国产精品无码制服丝袜| 伦精品一区二区三区视频| 为你提供最新久久精品久久综合| 狠狠色丁香婷婷综合| 国产高清在线观看91精品| 97视频精品全国免费观看| 久久免费看片| 精品无码专区亚洲| 在线视频亚洲色图|