賀紅
摘要:文章基于網(wǎng)絡(luò)安全的教學(xué)改革探索中職C語(yǔ)言程序設(shè)計(jì)課程,分析目前教學(xué)內(nèi)容與網(wǎng)絡(luò)安全的匹配度低、學(xué)生的網(wǎng)絡(luò)安全意識(shí)不強(qiáng)、學(xué)生的安全編程能力較弱等問題,并提出完善教學(xué)評(píng)價(jià)機(jī)制的建議。
關(guān)鍵詞:網(wǎng)絡(luò)安全;C語(yǔ)言程序設(shè)計(jì);教學(xué)評(píng)價(jià)
隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展和應(yīng)用,網(wǎng)絡(luò)安全問題已經(jīng)變得越來(lái)越重要。中職電子信息大類下計(jì)算機(jī)相關(guān)專業(yè)的人才培養(yǎng)目標(biāo)多為面向IT行業(yè)的程序員、開發(fā)工程師等崗位從業(yè)人員。而隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,越來(lái)越多的人趨向從事移動(dòng)端開發(fā)、網(wǎng)絡(luò)編程與云計(jì)算等工作。網(wǎng)絡(luò)和信息安全的高要求對(duì)這些崗位從業(yè)人員網(wǎng)絡(luò)安全意識(shí)、安全編程能力等方面提出了新的要求。
C語(yǔ)言是應(yīng)用程序的開發(fā)基礎(chǔ),因其強(qiáng)大的功能性和靈活性,經(jīng)常被用于開發(fā)網(wǎng)絡(luò)安全相關(guān)的工具和應(yīng)用程序,因此C語(yǔ)言程序設(shè)計(jì)課程作為中職計(jì)算機(jī)相關(guān)專業(yè)的基礎(chǔ)課程,對(duì)培養(yǎng)學(xué)生的編程能力、邏輯思維能力和解決實(shí)際問題的能力具有重要意義。然而,由于目前包含國(guó)家職業(yè)教育規(guī)劃教材在內(nèi)的許多原版教材具有滯后性,以及部分教師存在的教學(xué)惰性,很多網(wǎng)絡(luò)安全新知識(shí)沒有很好地融入教學(xué),導(dǎo)致學(xué)生缺乏網(wǎng)絡(luò)安全意識(shí)、基礎(chǔ)知識(shí)與技能。因此,考慮到網(wǎng)絡(luò)安全的重要性和C語(yǔ)言在課程中扮演的角色,基于網(wǎng)絡(luò)安全的中職C語(yǔ)言程序設(shè)計(jì)課程改革教學(xué)內(nèi)容和教學(xué)方法十分必要且緊迫。
一、中職C語(yǔ)言程序設(shè)計(jì)課程存在的問題
(一)教材內(nèi)容與網(wǎng)絡(luò)安全的匹配度低
中職C語(yǔ)言程序設(shè)計(jì)課程主要是教授學(xué)生C語(yǔ)言的基礎(chǔ)知識(shí)和編程技能,網(wǎng)絡(luò)安全則涉及網(wǎng)絡(luò)攻擊和防御技術(shù)、密碼學(xué)、漏洞分析、系統(tǒng)安全、Web安全、移動(dòng)安全等知識(shí)??v觀現(xiàn)有的大部分中職教材,在涉及網(wǎng)絡(luò)安全的內(nèi)存管理、系統(tǒng)庫(kù)函數(shù)調(diào)用和代碼分析等內(nèi)容方面匹配度很低。目前的教材內(nèi)容不僅只涉及很小一部分安全領(lǐng)域的知識(shí),而且與安全編程相關(guān)的教學(xué)案例和實(shí)踐內(nèi)容偏少,對(duì)涉及黑客攻擊、惡意軟件、釣魚網(wǎng)站的預(yù)防等知識(shí)更是缺乏,這遠(yuǎn)遠(yuǎn)無(wú)法達(dá)到增強(qiáng)學(xué)生安全意識(shí)和安全實(shí)踐能力的目標(biāo)。
(二)學(xué)生的網(wǎng)絡(luò)安全意識(shí)不強(qiáng)
隨著近年來(lái)網(wǎng)絡(luò)安全事件的頻繁發(fā)生,越來(lái)越多的學(xué)校開始強(qiáng)調(diào)網(wǎng)絡(luò)安全教育。絕大部分中職學(xué)生雖然對(duì)網(wǎng)絡(luò)安全有一定的認(rèn)知,但在實(shí)際編程過程中仍然沒有將掌握的知識(shí)應(yīng)用到實(shí)踐中,尤其是如何在實(shí)際編程中避免常見的安全隱患的意識(shí)還遠(yuǎn)遠(yuǎn)不夠。
(三)學(xué)生的安全編程能力較弱
學(xué)生主要學(xué)習(xí)C語(yǔ)言的基礎(chǔ)知識(shí),實(shí)踐的機(jī)會(huì)并不多,再加上教材內(nèi)容中的安全知識(shí)不夠,所以實(shí)際安全編程能力很弱,遠(yuǎn)不能滿足目前信息技術(shù)發(fā)展對(duì)網(wǎng)絡(luò)安全應(yīng)用人才的要求。
二、教學(xué)改革的實(shí)踐
(一)教材內(nèi)容的優(yōu)化與更新
筆者根據(jù)中職C語(yǔ)言程序設(shè)計(jì)課程教學(xué)的經(jīng)歷,充分考慮到現(xiàn)代網(wǎng)絡(luò)安全趨勢(shì),以中等職業(yè)學(xué)校計(jì)算機(jī)應(yīng)用專業(yè)國(guó)家規(guī)劃教材《編程語(yǔ)言基礎(chǔ)——C語(yǔ)言(第5版)》為例,經(jīng)過反思、探索和實(shí)踐,提出如下可行的優(yōu)化與更新措施。
第一,增加安全相關(guān)章節(jié)。在教材中的相應(yīng)章節(jié)后面,教師可以考慮新增一個(gè)小節(jié),專門講解與本章C語(yǔ)言內(nèi)容相關(guān)的網(wǎng)絡(luò)安全知識(shí)。例如,在字符數(shù)組部分增加格式化字符串攻擊小節(jié),在分支結(jié)構(gòu)部分增加條件漏洞小節(jié)等比較常見、難度不大且適合學(xué)生理解和掌握的C語(yǔ)言安全知識(shí)。
第二,在相關(guān)內(nèi)容中直接融合安全知識(shí)。中職C語(yǔ)言程序設(shè)計(jì)課程中的有些內(nèi)容是可以直接與安全知識(shí)融合起來(lái)進(jìn)行教學(xué)的。比如,教師可以在數(shù)組、指針、字符串操作等編程基礎(chǔ)知識(shí)中,直接融合安全最佳實(shí)踐,針對(duì)不同的主題,通過提供安全的編碼示例或設(shè)置安全編程實(shí)踐活動(dòng),強(qiáng)調(diào)不安全的實(shí)踐可能導(dǎo)致的后果。又如,在講解字符串操作知識(shí)點(diǎn)時(shí),教師可以設(shè)計(jì)一個(gè)存在strcpy安全漏洞的小程序供學(xué)生查因糾錯(cuò)。
第三,為學(xué)生提供更新資源。由于網(wǎng)絡(luò)安全領(lǐng)域的知識(shí)更新速度很快,教師應(yīng)給學(xué)生提供一些能反映當(dāng)今網(wǎng)絡(luò)安全最新發(fā)展的在線資源,如安全論壇、博客、視頻教程等,能為學(xué)生提供有關(guān)最新威脅、漏洞披露和安全研究等非常有價(jià)值的學(xué)習(xí)資料,方便學(xué)生線上線下更全面地了解最新的安全知識(shí)。
第四,加入安全編碼規(guī)范。在教材末尾,教師可以列出一份簡(jiǎn)明的C語(yǔ)言安全編碼規(guī)范供學(xué)生編程參考,幫助學(xué)生避免出現(xiàn)常見的安全錯(cuò)誤。例如,教師可以對(duì)內(nèi)存管理設(shè)置“始終在分配內(nèi)存后釋放它,以防止內(nèi)存泄漏”的編碼規(guī)范;對(duì)文件操作可以規(guī)定“在打開、讀取和寫入文件時(shí),必須檢查文件是否存在”的編碼規(guī)范。
教材因有其使用周期,故具有一定滯后性。教師應(yīng)根據(jù)社會(huì)的發(fā)展,不斷更新自己的知識(shí),并結(jié)合實(shí)際教學(xué)情況,靈活地將最新的網(wǎng)絡(luò)安全知識(shí)融入教學(xué)。
(二)教學(xué)方法的創(chuàng)新
第一,融入安全知識(shí)的項(xiàng)目式學(xué)習(xí)。教師可以設(shè)計(jì)以安全為主題的小型編程項(xiàng)目貫穿一項(xiàng)主要內(nèi)容,如構(gòu)建一個(gè)簡(jiǎn)單的密碼管理工具或加密算法的模擬項(xiàng)目。通過集合用戶認(rèn)證、密碼存儲(chǔ)、密碼檢索等功能的項(xiàng)目實(shí)踐,學(xué)生可以更好地了解安全知識(shí),并應(yīng)用到實(shí)際編程中。
第二,設(shè)計(jì)攻防實(shí)戰(zhàn)模擬實(shí)踐。為提高學(xué)生的安全編程能力,教師可以利用已有的實(shí)訓(xùn)條件創(chuàng)建一個(gè)安全實(shí)驗(yàn)室環(huán)境,讓學(xué)生模擬攻擊和防御。例如,教師可以設(shè)計(jì)一個(gè)身份驗(yàn)證安全的攻防實(shí)戰(zhàn),讓學(xué)生在實(shí)踐中體會(huì)到安全的重要性。攻擊者可以利用gets函數(shù)(從標(biāo)準(zhǔn)輸入設(shè)備讀字符串函數(shù))的不安全性故意輸入一個(gè)很長(zhǎng)的字符串,以覆蓋程序棧上的其他數(shù)據(jù),增加導(dǎo)致程序崩潰或執(zhí)行不受控制的可能性。防御者則可以采用限制密碼嘗試次數(shù)等修復(fù)代碼來(lái)實(shí)施防御。此類攻防實(shí)戰(zhàn)能引導(dǎo)學(xué)生從模擬攻擊和防御兩個(gè)角度體驗(yàn)安全問題帶來(lái)的后果,并嘗試采取措施來(lái)修復(fù)這些漏洞,提高安全編程能力。
第三,以真實(shí)安全案例驅(qū)動(dòng)教學(xué)。教師可以選取一些真實(shí)的、因編程錯(cuò)誤導(dǎo)致的安全事件以及最新的安全成果等作為案例驅(qū)動(dòng)教學(xué)。例如,在講授緩沖區(qū)溢出的安全漏洞問題時(shí),教師可以引用非常著名的安全事件——Heartbleed漏洞(心血漏洞),使學(xué)生看到真實(shí)世界中的安全威脅和編程的重要性,引導(dǎo)其樹立安全意識(shí)。教師再通過分析利用OpenSSL庫(kù)(開源的安全套接字層的密碼庫(kù))進(jìn)行逐步的漏洞修復(fù)過程,激發(fā)學(xué)生的學(xué)習(xí)興趣,促使其養(yǎng)成在編程時(shí)始終考慮安全性的良好習(xí)慣。
第四,引入網(wǎng)絡(luò)安全工具和交互式平臺(tái)教學(xué)。為更好保障學(xué)生在實(shí)際編程時(shí)代碼的安全性,教師還可以為學(xué)生提供如靜態(tài)代碼分析工具、fuzzing(模糊測(cè)試)工具等一些C語(yǔ)言的安全編程工具和在線交互式編程平臺(tái),讓學(xué)生不僅能實(shí)時(shí)編程并得到即時(shí)反饋,還能更直觀地看到代碼中的潛在安全隱患。
第五,創(chuàng)設(shè)安全編碼工作坊。利用校企合作平臺(tái),教師可以開設(shè)安全編碼工作坊,定期邀請(qǐng)專家或?qū)焷?lái)為學(xué)生授課,分享企業(yè)實(shí)際經(jīng)驗(yàn),提供安全編碼的建議和技巧。
第六,充分利用團(tuán)隊(duì)合作機(jī)會(huì)與競(jìng)賽活動(dòng)。在整個(gè)教學(xué)實(shí)施過程中,教師引領(lǐng)學(xué)生從課中的攻防安全實(shí)戰(zhàn)練習(xí),到課外參與團(tuán)隊(duì)合作的編程項(xiàng)目實(shí)踐,再到積極參與各級(jí)網(wǎng)絡(luò)建設(shè)與運(yùn)維、移動(dòng)應(yīng)用與開發(fā)等技能比賽活動(dòng),都可以系統(tǒng)化地強(qiáng)化學(xué)生的實(shí)際編程能力,讓學(xué)生在涉及一些保密與安全性問題的實(shí)際操作中逐步增強(qiáng)安全意識(shí)。
第七,跨學(xué)科教學(xué)。教師可以嘗試將中職C語(yǔ)言程序設(shè)計(jì)課程與HTML網(wǎng)頁(yè)制作課程、計(jì)算機(jī)組裝與維護(hù)課程等結(jié)合起來(lái)進(jìn)行跨學(xué)科教學(xué),共同設(shè)計(jì)一些項(xiàng)目或?qū)嶒?yàn)。這樣可以讓學(xué)生從不同角度理解安全編程的應(yīng)用,提高學(xué)生的綜合應(yīng)用能力,以適應(yīng)現(xiàn)代信息技術(shù)領(lǐng)域的需求。例如,教師可以設(shè)計(jì)生成一個(gè)HTML網(wǎng)頁(yè),并演示在用戶輸入時(shí)如何通過用戶輸入長(zhǎng)度限制和去除輸入中的換行符等處理來(lái)防止跨站腳本攻擊的跨學(xué)科教學(xué)案例,將C語(yǔ)言程序設(shè)計(jì)課程和HTML網(wǎng)頁(yè)制作課程融合起來(lái)。
(三)教學(xué)評(píng)價(jià)機(jī)制的完善
除采用教師評(píng)價(jià)、學(xué)生自評(píng)和學(xué)生互評(píng)外,教師還需要從三個(gè)方面完善教學(xué)評(píng)價(jià)機(jī)制。
第一,更新評(píng)價(jià)內(nèi)容。隨著網(wǎng)絡(luò)安全領(lǐng)域的發(fā)展,教師需要定期更新網(wǎng)絡(luò)安全評(píng)價(jià)內(nèi)容和標(biāo)準(zhǔn),以確保評(píng)價(jià)的有效性和準(zhǔn)確性。
第二,增加實(shí)戰(zhàn)性評(píng)價(jià)。教師應(yīng)增設(shè)實(shí)際的安全編程任務(wù)和挑戰(zhàn),評(píng)價(jià)學(xué)生的實(shí)踐操作能力和解決實(shí)際問題的能力。
第三,探索外部驗(yàn)證環(huán)節(jié)。教師應(yīng)通過引入行業(yè)專家和企業(yè)導(dǎo)師參與程序安全性方面的評(píng)價(jià),獲取更為客觀和權(quán)威的教學(xué)效果反饋。
三、結(jié)論
基于網(wǎng)絡(luò)安全的中職C語(yǔ)言程序設(shè)計(jì)課程教學(xué)改革是一個(gè)反映行業(yè)需求、提高學(xué)生實(shí)際能力和應(yīng)對(duì)當(dāng)下網(wǎng)絡(luò)安全挑戰(zhàn)的重要探索。經(jīng)過一系列的研究和實(shí)踐,筆者得出以下探究結(jié)論。
第一,網(wǎng)絡(luò)安全問題的凸顯和行業(yè)的需求,增加了C語(yǔ)言程序設(shè)計(jì)課程教學(xué)改革的緊迫性。網(wǎng)絡(luò)安全是一個(gè)關(guān)系國(guó)家安全和主權(quán)、人們工作和生活、社會(huì)穩(wěn)定、民族文化的繼承和發(fā)揚(yáng)的重要問題,并已經(jīng)成為信息技術(shù)領(lǐng)域的重要分支,與編程密切相關(guān),所以其在計(jì)算機(jī)行業(yè)應(yīng)用領(lǐng)域的比重增大。基于此,教師必須對(duì)C語(yǔ)言程序設(shè)計(jì)課程進(jìn)行基于網(wǎng)絡(luò)安全的教學(xué)改革,將網(wǎng)絡(luò)安全內(nèi)容納入其中,幫助計(jì)算機(jī)應(yīng)用技術(shù)相關(guān)專業(yè)的學(xué)生樹立起安全第一的觀念,為維護(hù)國(guó)家整體網(wǎng)絡(luò)安全作貢獻(xiàn)。
第二,教師通過教學(xué)內(nèi)容的優(yōu)化與更新、教學(xué)方法的創(chuàng)新,能幫助大部分學(xué)生在編程時(shí)主動(dòng)考慮到網(wǎng)絡(luò)安全問題。例如,經(jīng)過實(shí)際的模擬攻防實(shí)戰(zhàn),學(xué)生的動(dòng)手能力和問題解決能力得到了顯著的提高,增強(qiáng)了信息安全素養(yǎng)和綜合素質(zhì);通過在程序設(shè)計(jì)、移動(dòng)應(yīng)用開發(fā)等省市級(jí)技能競(jìng)賽中取得好成績(jī),學(xué)生提高了實(shí)際應(yīng)用能力、就業(yè)能力。
第三,教師要與時(shí)俱進(jìn)保持網(wǎng)絡(luò)安全敏銳度和持續(xù)學(xué)習(xí)力。在互聯(lián)網(wǎng)飛速發(fā)展的今天,計(jì)算機(jī)專業(yè)教師肩負(fù)著給學(xué)生開展網(wǎng)絡(luò)安全教育的責(zé)任。因此,一方面,教師要緊跟時(shí)代發(fā)展不斷進(jìn)行研究,更新網(wǎng)絡(luò)安全的內(nèi)容并融入教學(xué),以培養(yǎng)符合時(shí)代發(fā)展需求的計(jì)算機(jī)應(yīng)用人才;另一方面,教師在不斷增強(qiáng)自身安全意識(shí)的同時(shí),還要注重加強(qiáng)與行業(yè)之間的交流和合作,不斷創(chuàng)新,以提高網(wǎng)絡(luò)安全教育的實(shí)際應(yīng)用性,促進(jìn)自身的專業(yè)化發(fā)展。
參考文獻(xiàn):
[1]費(fèi)葉琦,劉雨浩,馬竹樵.C語(yǔ)言程序設(shè)計(jì)課程教學(xué)問題及對(duì)策研究[J].中國(guó)教育技術(shù)裝備,2020(20).
[2]倪瑞曉.C語(yǔ)言編程技術(shù)的分析研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2009(12).
[3]李利華.計(jì)算機(jī)信息技術(shù)在技工院校網(wǎng)絡(luò)安全中的應(yīng)用研究[J].科技與創(chuàng)新,2015(19).
[4]李前,藺琛皓,楊雨龍,等.云邊端全場(chǎng)景下深度學(xué)習(xí)模型對(duì)抗攻擊和防御[J].計(jì)算機(jī)研究與發(fā)展,2022(5).
[5]李蓬,崔寶江.基于C/C++代碼的靜態(tài)分析工具的比較研究[J].國(guó)際計(jì)算機(jī)科學(xué)技術(shù)與應(yīng)用論壇,2010(12).
[6]劉達(dá).通過HTML編碼防御XSS跨站腳本攻擊的研究[J].網(wǎng)絡(luò)空間安全,2016(7).
基金項(xiàng)目:湖南省教育科學(xué)研究工作者協(xié)會(huì)“十四五”規(guī)劃2021年度課題“中職信息技術(shù)專業(yè)教學(xué)相關(guān)問題研究”,項(xiàng)目編號(hào):XJKX21B236。
(作者單位:長(zhǎng)沙財(cái)經(jīng)學(xué)校)