• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      “軟件漏洞分析與防范”課程建設

      2018-03-26 02:14:46曹曉梅朱楓沙樂天
      軟件導刊 2018年3期
      關鍵詞:漏洞信息安全軟件

      曹曉梅 朱楓 沙樂天

      摘要:

      我國網(wǎng)絡空間安全面臨嚴峻考驗,軟件漏洞是其根源之一,因而培養(yǎng)掌握漏洞分析與挖掘技術,具備扎實安全編程技能的信息安全人才刻不容緩。“軟件漏洞分析與防范”是信息安全專業(yè)本科生的一門專業(yè)課,根據(jù)課程特點在教學內容安排上注重與時俱進、理論結合實踐,培養(yǎng)學生的動手能力,同時采用案例式教學和基于競爭機制的啟發(fā)式教學,以增強學生的學習主動性和創(chuàng)新能力。實踐證明,課程建設取得了良好效果,學生的專業(yè)知識水平和綜合能力得到了較大提高。

      關鍵詞:

      軟件安全;漏洞分析;漏洞挖掘;安全編程;課程建設

      DOIDOI:10.11907/rjdk.172504

      中圖分類號:G434

      文獻標識碼:A文章編號文章編號:16727800(2018)003021704

      英文摘要Abstract:China′s cyberspace security is facing a severe test and software vulnerability is one of the root causes. It is urgent to cultivate information security talents who master vulnerability analysis and mining technology, and can fundamentally improve software security in the process of development. Software vulnerability analysis and prevention is a specialized course for undergraduates majoring in information security. According to the characteristics of the course, the arrangement of the teaching content emphasizes on keeping pace with the times, combining theory with practice, and cultivating students′ practical ability. Case based teaching and heuristic teaching based on competition mechanism are adopted to enhance students′ initiative and creativity. Practice has proved that the construction of the curriculum has achieved good results, and the level of students' professional knowledge and comprehensive ability has been effectively improved.

      英文關鍵詞Key Words:software security; vulnerability analysis; vulnerability mining; security programming; course construction

      0引言

      軟件是計算機系統(tǒng)的靈魂、信息化的核心以及互聯(lián)網(wǎng)應用的基石?,F(xiàn)代社會對信息系統(tǒng)的依賴主要體現(xiàn)為對軟件的依賴,信息系統(tǒng)缺陷在很大程度上是因為軟件問題產(chǎn)生的。隨著軟件規(guī)模不斷擴大,軟件的開發(fā)、集成變得越來越復雜,新型應用軟件數(shù)量急劇增加,導致軟件產(chǎn)品在推出時總會存在很多對系統(tǒng)安全可靠運行構成嚴重威脅的軟件漏洞。與此同時,軟件運行和開發(fā)環(huán)境從傳統(tǒng)的靜態(tài)封閉狀態(tài)變?yōu)榛ヂ?lián)網(wǎng)環(huán)境下的動態(tài)開放狀態(tài),越來越多軟件漏洞被發(fā)現(xiàn)與利用,惡意代碼急劇增加,且傳播速度大大加快。軟件安全面臨著前所未有的嚴峻挑戰(zhàn),對我國網(wǎng)絡空間安全甚至國家安全造成巨大威脅[1]。不論是對于國家的國防和基礎設施建設,還是國民經(jīng)濟、百姓生活各個方面,都迫切需要具有高度安全意識,精通軟件漏洞挖掘和分析技術,能在開發(fā)全過程中從根本上提高軟件安全性的信息安全應用型人才。

      在教育部信息安全專業(yè)類教學指導委員會于2010年提出的《信息安全類專業(yè)的專業(yè)指導規(guī)范》[2]中,信息安全學科的研究方向被分為密碼學、網(wǎng)絡安全、信息系統(tǒng)安全和信息內容安全,軟件安全隸屬于信息系統(tǒng)安全,是信息安全專業(yè)的核心和主干課程之一。目前,國內數(shù)所開辦信息安全專業(yè)的高校開設了軟件安全相關課程,如武漢大學、北京郵電大學、中國地質大學的“軟件安全”,中國科學技術大學的“軟件安全與測試”,中南大學的“安全編程技術”,華中科技大學研究生課程“漏洞分析與發(fā)現(xiàn)技術”等,但整體而言,相比于密碼學和網(wǎng)絡安全領域較為成熟的信息安全專業(yè)課程,軟件安全類課程尚屬新興課程,對這類課程教學內容、教學方式、教學效果等方面的綜合研究仍處于初級階段。

      南京郵電大學是江蘇省高校中最早設置信息安全專業(yè)的學校,2002年開始招收本科生,2007年被教育部評定為國家特色專業(yè),在密碼學、網(wǎng)絡安全、系統(tǒng)安全等方面具有近10年的課程建設和授課經(jīng)驗。目前,南京郵電大學在軟件安全領域共開設了“逆向分析技術”、“軟件漏洞分析與防范”和“計算機病毒防治”3門信息安全本科生專業(yè)課。3門課程各有側重,相輔相成,根據(jù)學校本科培養(yǎng)計劃分別在第四、五、六學期逐次展開?!败浖┒捶治雠c防范”課程始建于2013年,課程圍繞Windows平臺上軟件漏洞的分析、利用、防范與挖掘等內容展開。本文首先介紹課程的教學目標、定位和特點,然后結合多年教學實踐經(jīng)驗,著重從教學內容、教學模式兩方面對課程建設成果進行梳理和總結。

      1課程教學目標、定位與特點

      “軟件漏洞分析與防范”是信息安全專業(yè)本科生的一門專業(yè)課,共32學時,含24學時理論課和8學時實驗課。通過課程學習,使學生對漏洞產(chǎn)生的原因和危害有著深刻認識,在編程時具有高度的安全意識和扎實的安全編程技能;充分了解漏洞分析與挖掘技術在信息與網(wǎng)絡社會中的地位和作用,增強信息安全意識和自覺維護信息安全的社會責任感;在學習知識和技術的同時,培養(yǎng)學生思考、分析和解決漏洞問題的能力,滿足社會對網(wǎng)絡空間安全應用型人才的需求。課程還可進一步拓展為面向全校的任選課,為軟件工程、計算機科學與技術等相關專業(yè)有興趣的學生提供安全編程的基礎課程,使學生能夠在軟件開發(fā)全過程中,從根本上提高軟件的健壯性和安全性,使其在遭受惡意攻擊時依然能夠安全可靠地運行。

      “軟件漏洞分析與防范”課程呈現(xiàn)覆蓋面廣、實踐性強、技術更新?lián)Q代快3個突出特點:

      (1)涵蓋面廣。課程涵蓋匯編語言、高級程序設計語言、計算機組成原理、操作系統(tǒng)、逆向分析等多個方面,與此同時,不同的軟硬件系統(tǒng)與不同編程語言漏洞的成因、利用和防范機制也存在較大區(qū)別,決定了教學內容的選取和教學過程的實施必須脈絡分明、有的放矢。

      (2)實踐性強。課程對調試技術、逆向技術、漏洞利用和挖掘等實踐能力有較高要求。因此,除理論知識外,更要注重對學生應用能力的培養(yǎng),學用結合,切實提高學生的動手實踐能力。

      (3)技術更新?lián)Q代快。在不斷的博弈中,軟件漏洞的相關知識體系和技術手段更新?lián)Q代較快,對漏洞問題的研究必須跟蹤當前計算機系統(tǒng)及其安全問題的最新發(fā)展動態(tài)。

      2教學內容設置

      2.1教學內容及教材選取

      “軟件漏洞分析與防范”課程覆蓋面廣,需要事先掌握較多的計算機專業(yè)基礎知識,為此其在本科培養(yǎng)計劃被列為高年級的專業(yè)限選課。與此同時,漏洞具有系統(tǒng)相關性,只能針對目標系統(tǒng)的操作系統(tǒng)版本、其上運行的軟件版本以及服務運行設置等實際環(huán)境,具體談論其中可能存在的漏洞及可行的解決辦法,在課堂上難以兼顧不同種類的硬件平臺、操作系統(tǒng)或編程語言。因此,必須做到目標明確、有的放矢。本專業(yè)著重介紹了Windows操作系統(tǒng)的軟件漏洞分析、利用與防范,其原因在于兩點:一方面Windows系統(tǒng)普及率高,占有約90%的市場份額;另一方面Windows平臺具有眾多功能強大的調試工具和反匯編軟件,方便對運行于其上的軟件進行漏洞分析和研究。

      軟件漏洞利用與分析的相關書籍在國內并不多見,這些書籍有的側重于對軟件安全知識體系的全面介紹,軟件漏洞僅作為其組成部分[14],有的側重于從技術層面對漏洞進行剖析[57],有的側重于軟件安全開發(fā)[89],雖有收獲,但均無法有效地切合本課程授課內容。當前,本專業(yè)暫時選用武漢大學彭國軍等老師的《軟件安全》作為教材,側重介紹其中軟件漏洞利用與防護部分,并選用王清的《0day安全:軟件漏洞分析技術》作為指定教學參考書。與此同時,從國家信息安全漏洞共享平臺等官方漏洞發(fā)布網(wǎng)站,以及看雪、i春秋、紅黑聯(lián)盟等熱點網(wǎng)站獲取本領域的最新發(fā)展動態(tài),作為對課程內容的補充。目前,課題組正在籌劃本課程的教材建設,希望通過3~5年的教學實踐完成一部相關教材編寫。

      2.2教學安排

      課程教學內容主要包括兩部分:第一部分為第1~3章,主要致力于漏洞分析,著重介紹Windows平臺下軟件漏洞的成因、原理與利用,使學生對軟件漏洞的產(chǎn)生和危害有深刻的認識和理解;第二部分為第4~7章,重點介紹漏洞防范措施,包括微軟的漏洞防護機制、軟件安全開發(fā)以及漏洞挖掘等,最后簡單介紹軟件漏洞的發(fā)展趨勢。教學內容及課時分配如表1所示。

      各章基本教學內容如下:

      第1章:了解漏洞相關概念與Windows平臺下二進制文件結構和內存方面的基礎知識,熟悉漏洞分析中OllyDbg、IDA Pro等常用軟件工具,了解常見的漏洞分析方法。

      第2章:掌握棧溢出漏洞、堆溢出漏洞的成因、原理和危害,了解格式化串漏洞、整數(shù)漏洞、雙重釋放漏洞、釋放重引用漏洞的成因和危害。通過實驗1,加深學生對緩沖區(qū)溢出漏洞原理及危害的理解。

      第3章:了解漏洞利用的具體技術以及exploit的結構,了解Shellcode的編寫語言和關鍵技術,熟悉Metasploit漏洞利用框架。通過經(jīng)典案例分析進一步掌握漏洞利用的原理、方法和危害。

      第4章:掌握Windows的棧保護機制、數(shù)據(jù)執(zhí)行保護機制,以及地址空間布局隨機化機制的原理和使用方法。了解Windows對異常處理過程的保護機制結構化異常處理覆蓋保護(Structured Exception Handler Overwrite Protection, SEHOP)的原理。通過實驗2掌握利用MSF(Metasploit Framework)驗證、調查和利用漏洞的具體過程和方法,分析在具備數(shù)據(jù)執(zhí)行保護 (Data Execution Prevention, DEP )及地址空間布局隨機化(Address Space Layout Randomization, ASLR)等機制保護環(huán)境系統(tǒng)下的漏洞利用情況。

      第5章:了解軟件安全開發(fā)生命周期模型的概念,了解微軟SDL ( Security Development Lifecycle)模型的起源和發(fā)展,熟悉SDL模型的7個階段和其中的主要安全活動。了解軟件安全開發(fā)的通則,掌握編程時防御緩沖區(qū)溢出漏洞的常用方法。

      第6章:了解漏洞挖掘技術的發(fā)展和種類,熟悉靜態(tài)代碼審計的原理和主要工具軟件,了解軟件的動態(tài)挖掘方法。通過實驗3利用靜態(tài)審計工具對源代碼進行安全性分析和測試,系統(tǒng)、深入地理解C語言的安全編碼準則,提出針對性的改進措施;通過實驗4使用fuzz工具對文件或協(xié)議進行模糊測試,掌握模糊測試的步驟,對Peach進行深入剖析,了解模糊測試軟件的實現(xiàn)原理。

      第7章:了解軟件漏洞領域的新挑戰(zhàn),了解移動終端、云計算平臺以及物聯(lián)網(wǎng)等漏洞的發(fā)展趨勢。

      具體實驗內容及要求如表2所示。

      3教學模式探索

      大學教育的目標不僅在于知識的傳授,更在于能力和素質的培養(yǎng)[10]。為了提高學生的學習能力、分析能力和知識綜合運用能力,激發(fā)學生學習興趣,挖掘學生潛力,采用案例式教學以及引入競爭機制的啟發(fā)式教學兩種方法,并通過課程考核引導學生重視理論知識應用能力以及獨立創(chuàng)新能力的學習和鍛煉。

      3.1學用結合的案例式教學

      “軟件漏洞分析與防范”課程的實踐性很強,除在4次實驗課上引導學生提升動手能力外,在理論課上采用案例式教學方法,通過對多個經(jīng)典CVE( Common Vulnerabilities and Exposures )漏洞案例進行分析,以加深對重點知識的理解和領會。例如,通過 CVE-2010-3333 Microsoft RTF剖析棧溢出漏洞、通過CVE-2010-2553 Microsoft Cinepak Codec CVDecompress加深學生對堆溢出的理解、通過CVE-2012-0809 Sudo_sudo_debug和 CVE-2011-0065 Firefox mChannel直觀介紹格式化字符串漏洞和釋放重引用漏洞等。

      實踐證明,采用專業(yè)知識與案例設計緊密結合的方式,可加強學生對漏洞相關知識的感性認識和興趣,加深學生對理論知識的理解。

      3.2引入競爭機制的啟發(fā)式教學

      漏洞攻防知識體系和技術手段的更新?lián)Q代較快,在課堂上很難面面俱到,在傳授知識的同時,更要充分挖掘學生的潛能和主觀能動性。在實際教學中,由任課教師根據(jù)課程重點內容,結合現(xiàn)階段國內外漏洞攻防博弈的熱點問題設定不同專題,列出參考資料,指導學生以組為單位進行自主研究。每組設一個組長和一個評委,在課堂上給予各組展示機會。為了保證組內每個學生都能準備充分,講解員在講解前從組內隨機抽取。在講解過程中,由任課教師和其它組的學生評委從內容的深度和廣度、PPT格式的規(guī)范性和美觀性,以及講解過程中的邏輯性和清晰性等3方面進行打分。整個評比過程公平公開,各組專題成績在課后直接公布,每個小組的分數(shù)與個人成績掛鉤,計入總評成績。

      多輪教學實踐表明,這種引入競爭機制的啟發(fā)式教學取得了事半功倍的效果,促進了學生、教師和課程的共同進步:一方面提高了學生的研究興趣、研究能力、表達能力和合作精神,另一方面一些能力出眾的學生所展示的研究成果可為教學提供更多素材,進一步促進了課程自身的發(fā)展。

      3.3考核機制

      課程采用的考核方式為大作業(yè),總評成績由平時成績、專題討論課成績和大作業(yè)成績組成,平時成績側重對學生學習態(tài)度的考量,專題討論課成績和大作業(yè)成績則著重反映學生的綜合能力。

      (1)平時成績占總評成績的30%,從作業(yè)、上課出勤率、實驗等幾方面進行考核。

      (2)專題討論成績占總評成績的30%,從PPT內容、格式以及講解效果等多方面對各組進行評比。

      (3)大作業(yè)成績占總評成績的40%,其是根據(jù)教師講授的基本理論、專題報告積累的素材和實際操作完成的一份報告。報告由每個學生獨立完成,根據(jù)題目難度系數(shù)、功能完成情況、大作業(yè)撰寫情況、驗收答辯情況等進行綜合打分。任務包括5類:①逆向分析、軟件破解及其防護;②基于模糊測試的軟件漏洞挖掘;③針對Web平臺的滲透測試;④移動終端APP安全測試;⑤其它與“軟件漏洞”相關的實踐類、設計型報告。

      4結語

      “軟件漏洞分析與防范”是一門技術性要求很高的課程,除打好理論基礎外,更重要的是培養(yǎng)學生的實際動手能力。此外,在軟件漏洞相關的教學和研究中,必須認識到漏洞的系統(tǒng)相關性和時間特性:一方面只能針對目標系統(tǒng)的操作系統(tǒng)版本、其上運行的軟件版本以及服務運行設置等實際環(huán)境具體談論其中可能存在的漏洞及可行的解決辦法;另一方面隨著時間推移,舊漏洞會不斷消失,新漏洞會不斷出現(xiàn),對漏洞問題的研究必須跟蹤計算機系統(tǒng)及安全問題的最新發(fā)展動態(tài)。軟件漏洞的技術性、系統(tǒng)相關性、時間特性等對課程建設提出了更高要求,必須加強師資力量和教學團隊建設,分工明確,溝通及時,協(xié)同發(fā)展。同時,加強學生能力培養(yǎng)是本科教學的重點,在授課內容和授課安排上要留出足夠空間,以培養(yǎng)學生的動手能力、研究能力和創(chuàng)新能力。

      參考文獻參考文獻:

      [1]彭國軍,傅建明,梁玉.軟件安全[M].武漢:武漢大學出版社,2015.

      [2]《信息安全專業(yè)指導性專業(yè)規(guī)范》項目組.信息安全類專業(yè)的專業(yè)指導規(guī)范[EB/OL].http://ishare.iask.sina.com.cn/f/17806091.html.

      [3]任偉.軟件安全[M].北京:國防工業(yè)出版社,2010.

      [4]劉哲理,李進,賈春福.漏洞利用及滲透測試基礎[M].北京:清華大學出版社,2017.

      [5]王清,張東輝,周浩,等.0day安全:軟件漏洞分析技術[M].第2版.北京:電子工業(yè)出版社,2011.

      [6]林椏泉.漏洞戰(zhàn)爭:軟件漏洞分析精要[M].北京:電子工業(yè)出版社,2016.

      [7]愛甲健二.有趣的二進制:軟件安全與逆向分析[M].周自恒,譯.北京:人民郵電出版社,2015.

      [8]張劍,丁鋒,周福才,等.軟件安全開發(fā)[M].成都:電子科技大學出版社,2015.

      [9]ROBERT C SEACORD. C安全編碼標準 [M].第2版.盧濤,譯.北京:機械工業(yè)出版社,2015.

      [10]高玉蓉,李曉培.博克的大學教育目標及其對我國高等教育質量研究的啟示[J].東莞理工學院學報,2012,19(4):103109.

      責任編輯(責任編輯:黃?。?

      猜你喜歡
      漏洞信息安全軟件
      漏洞
      禪宗軟件
      英語文摘(2021年10期)2021-11-22 08:02:26
      軟件對對碰
      保護信息安全要滴水不漏
      高校信息安全防護
      消費導刊(2017年20期)2018-01-03 06:26:38
      三明:“兩票制”堵住加價漏洞
      漏洞在哪兒
      兒童時代(2016年6期)2016-09-14 04:54:43
      保護個人信息安全刻不容緩
      高鐵急救應補齊三漏洞
      談軟件的破解與保護
      精品(2015年9期)2015-01-23 01:36:01
      沙雅县| 剑川县| 长武县| 连云港市| 东台市| 上虞市| 台南市| 洪洞县| 铜梁县| 海门市| 苏尼特右旗| 潮安县| 和龙市| 赤壁市| 奈曼旗| 邵东县| 平原县| 清镇市| 南川市| 井研县| 赞皇县| 台北县| 濉溪县| 双峰县| 荣成市| 临猗县| 武义县| 廉江市| 惠安县| 盐津县| 呼伦贝尔市| 神农架林区| 肥乡县| 金寨县| 岳阳市| 休宁县| 瓦房店市| 临沭县| 瑞丽市| 长治市| 皋兰县|