豆利
關鍵詞:CTF模式;網絡安全;課程教學
中圖分類號:G642 文獻標識碼:A
文章編號:1009-3044(2023)21-0125-03
0 引言
隨著信息化技術的快速發(fā)展,網絡安全已經成為一個越來越重要的領域。隨之而來的是對網絡安全人才的需求也越來越大。而網絡安全人才的培養(yǎng)離不開課程教學的改革。傳統(tǒng)的網絡安全課程教學往往是以理論知識為主,缺少實踐環(huán)節(jié)。這樣的教學模式往往難以激發(fā)學生的學習熱情,同時也難以真正培養(yǎng)出合格的網絡安全人才。
CTF(Capture The Flag) 模式是一種在網絡安全領域中被廣泛采用的學習方式。CTF模式通過模擬實際的攻擊和防御場景,讓學生在實踐中掌握網絡安全知識和技能。因此,采用CTF模式的網絡安全課程教學,能夠更好地提高學生的學習效果。CTF模型是一種基于游戲的網絡安全教學方法,包括團隊之間相互競爭以解決一系列挑戰(zhàn)。這些挑戰(zhàn)通常需要廣泛的技能,如密碼學、網絡掃描、Web開發(fā)、逆向工程和漏洞開發(fā)[1]。CTF模式是一種競賽性的學習方式,主要是模擬實際的攻擊和防御場景,讓學生在實踐中掌握網絡安全知識和技能。CTF模式通常包括攻擊和防御兩個階段,攻擊階段是學生利用網絡攻擊技術獲取指定目標信息的過程,而防御階段則是學生利用網絡安全技術保護自己的網絡資源[2]。
1 現(xiàn)狀分析
網絡安全課程作為計算機網絡技術專業(yè)的專業(yè)課程,是一門綜合性比較強的課程,它涉及計算機網絡基礎、密碼學、數(shù)據(jù)庫等相關課程,傳統(tǒng)的網絡安全課程理論性比較強,學生聽起來比較枯燥,出現(xiàn)畏難情緒,解決問題的能力欠缺,這是網絡安全課程普遍存在的問題[3]。
問題主要存在以下幾個方面:首先課程以理論為基礎,實驗內容較少,課程單獨存在,課程設置銜接性不高,課程之間的聯(lián)系性較少,學生只是在每個年級每個學期把該學習的課程學習了,沒有把網絡安全的相關知識融會到不同的課程中,缺乏全局性。其次網絡安全的考試方式較為陳舊,只是考核書本上的內容,由于網絡安全技術更新速度較快,不能僅限于書本內容的掌握,對于網絡安全中發(fā)現(xiàn)問題,解決問題的能力有所欠缺,并且在傳統(tǒng)的考試模式中,很難考核到學生的實際動手能力。實踐證明參加競賽的學生,其解決問題的能力會更強,相應的課程考核也會更好。最后網絡安全課程缺乏系統(tǒng)的設計,網絡安全的實驗課程,調整相關參數(shù),學生就無從下手,而且對于復雜的問題,學生因缺乏相關知識的銜接,導致無法獨立解決問題,進而打消了他們學習網絡安全的積極性。
2 教學內容設計
2.1 實施方案
采用CTF模式的網絡安全課程教學,通常需要滿足以下幾個方面的條件。
1) 硬件條件:需要有相應的網絡安全實驗室,包括安全隔離環(huán)境和實驗設備等。
2) 軟件條件:需要相應的網絡安全實驗軟件,如Kali Linux、Metasploit等。
3) 師資條件:需要具有相應的網絡安全技術和教學經驗的教師。
2.2 教學內容
根據(jù)企業(yè)對人才的需求,我們使用開源工具和軟件來降低課程的成本,通過分配小組和項目,需要學生一起解決問題的活動,鼓勵學生之間的協(xié)作和團隊合作[4]。項目為學生提供參加真實的CTF比賽和活動,學生進而向其他團隊學習的同時,實踐技能也得到了鍛煉。同時把基于CTF模式的課程拓展為第二課堂,學生利用老師發(fā)布的相關視頻,搭建網站進行相關訓練,融入闖關模式,將CTF模式融進網絡安全課程教學,對課程進行創(chuàng)新性實踐教學,把CTF的試題分解到網絡安全課程中,既增加了趣味性,又強化了學生的動手實踐操作[5]。重新設計課程,重點關注解決CTF挑戰(zhàn)所需的技能和知識。同時教師自身專業(yè)水平在實踐教學中也得到了快速提高。
采用CTF模式的網絡安全課程教學,通常包括以下內容。
1) 網絡攻擊與防御:介紹常見的網絡攻擊手段和防御方法,如端口掃描、SQL注入、DDoS攻擊等。
2) 漏洞挖掘:介紹常見的漏洞類型和挖掘方法,如溢出漏洞、代碼注入漏洞、權限提升等。
3) 網絡安全工具使用:介紹常用的網絡安全工具,如Wireshark、Nmap、Burp Suite等,以及它們的使用方法[6]。
4) CTF比賽實戰(zhàn):在課程結束時,設置CTF比賽環(huán)節(jié),讓學生在競賽中實踐所學的網絡安全知識和技能。
網絡安全課程涉及網絡安全基礎、網絡掃描、滲透測試、漏洞掃描、SQL 注入攻防等,以SQL 注入為例,教學流程圖如圖1所示。
1) 案例導入:以SQL注入相關短視頻引入課堂,通過視頻了解,在網絡安全問題中,SQL注入高居榜首。SQL注入危害較大,容易導致數(shù)據(jù)庫信息泄露,包括數(shù)據(jù)庫中存放的用戶隱私信息泄露。
2) 通過靶場的搭建,讓學生了解其搭建過程,講解手工注入法的步驟。
以SQL 注入的手工注入法為例,其操作步驟如下:
1) SQL注入點探測,首先判斷網頁是否存在注入點(見圖2) ,在可控的輸入位置加入一些符號,觀察頁面是否正常,一般通過頁面的報錯信息來判斷是否存在注入點。
2) 收集后臺數(shù)據(jù)庫,確定存在注入點后,判斷是字符型注入還是數(shù)字型注入,然后利用order by判斷select查詢所顯示的字段數(shù),利用union聯(lián)合查詢進行拼接,顯示當前數(shù)據(jù)庫。
3) 猜解用戶名和密碼。用戶名和密碼一般都是有規(guī)律的。系統(tǒng)數(shù)據(jù)庫information_schema中的tables 表和columns表中均存儲著重要的字段。
通過手工注入法獲取DVWA網站的用戶名和相關密碼(見圖3) ,該密碼以md5方式存儲的,通過md5 在線解密,得到相關的明文口令。
4) 查找Web管理后臺入口,Web后臺管理一般比較隱蔽,對普通用戶不開放,可以通過wwwscan等掃描工具快速掃描到可能登錄的地址,并逐一嘗試。
5) 入侵服務器,使用前面獲取的用戶名和密碼登錄用戶管理平臺,然后通過上傳木馬、篡改網頁等操作,并進一步提權,入侵數(shù)據(jù)庫服務器和Web服務器??捎肧QLMap軟件實現(xiàn)自動注入相關網站,鑒于遵守《網絡安全法》等相關規(guī)定文明上網,配合搭建SQLi-Labs專門的靶場,該注入以闖關的模式,極大地調動了學生的積極性。最后引入注入的相關CTF題目進行練習,進一步鞏固相關知識。
根據(jù)CTF競賽的要求,把網絡安全課程的內容進行重新整合,進行優(yōu)化和設計,實現(xiàn)模塊化教學。
1) 第一階段,根據(jù)CTF的解題方式,雖然針對網絡安全課程的改革,但并不是完全由一個任課教師完成的,團隊成員主要由計算機網絡應用、網頁設計、Linux 操作系統(tǒng)、數(shù)據(jù)庫技術、動態(tài)網站開發(fā)等任課老師組成,制定與網絡安全相關的試題庫,各任課教師在授課的同時,植入相關題庫,極大地調動了學生的積極性。
2) 第二階段,根據(jù)學生的學習能力及學習情況,制定基于CTF的網絡安全的相關試題[7]。在本階段,每個班級按照成績選取前20名學生,每3個人組成一隊,涉及數(shù)據(jù)包捕獲、暴力破解、SQL注入等,每個知識點涉及兩到三個操作,這些由學生自愿參加,課后進行學習練習,由于是競賽模式,組間存在競爭,組內成員討論學習情緒比較高漲,完成競賽后,教師會講解相關知識點,學生掌握了相關知識,學習積極性得到了提高,課堂教學效果也明顯得到了提高。
3) 第三階段,經過前兩階段,本階段中,每位選手既是攻擊者也是防守者,每支團隊配備一臺Linux操作系統(tǒng)服務器,在規(guī)定的時間內,團隊成員需要對自己的服務器進行加固,防止被滲透。具體得分規(guī)則如下:拿到其他團隊服務器的相關的信息越多得分越多,同時篡改其他團隊Web服務器信息越多,得分也越多。在該階段,從第二階段篩選出21名學生,組成7個團隊,利用課余時間進行訓練比賽,教師在學生訓練中給予指導。比賽結束后,學生分享挖掘到的漏洞以及使用什么原理進行漏洞發(fā)現(xiàn),以及其他一些小技巧,同時也為學校選拔CTF選手,參加校外知名比賽提供學生資源。
4) 第四階段,教學改革總結,任課教師對課程的階段性進行總結,把相關案例進行梳理,例如KaliLinux、系統(tǒng)漏洞以及腳本安全等進行鞏固,學生對于網絡安全中的攻防更深入理解,確保網絡安全課程改革最大受益。
在網絡安全課程的教學模式改革中,關于理論學習,教學團隊首先根據(jù)CTF的試題,把相關知識點融入課堂教學中,制定網絡安全的實訓大綱、實驗任務指導書。學生根據(jù)實驗任務指導書,認真完成相關的實驗,進一步加深了對CTF的理解。教師向學生提供網上知名的免費的CTF平臺,例如封神臺、攻防世界等,以便學生課后能進行積極有效的練習。從教學過程中,可以觀察到學生的學習積極性得到了極大的提高。
3 教學效果
使用CTF作為網絡安全的教學工具有幾個優(yōu)點。首先,CTF是通過通關的方式激勵學生學習。同時在省賽網絡攻防賽的比賽中獲得了較好的成績。若干競賽的競爭性質鼓勵學生合作,并積極尋求新的知識和技能。這可以幫助培養(yǎng)批判性思維、解決問題和技術技能,所有這些都是網絡安全職業(yè)生涯所必需的。
其次,CTF為學生學習網絡安全提供了一個安全可控的環(huán)境。在CTF中,學生可以訪問模擬真實網絡的模擬網絡環(huán)境。他們可以嘗試不同的安全工具和技術,而不用擔心造成現(xiàn)實世界的破壞。這使學生獲得網絡安全概念的實踐經驗,并將理論知識應用于實際環(huán)境中。
第三,CTF是識別和解決知識缺口的有效途徑。在CTF期間,學生將面臨一系列挑戰(zhàn),以測試他們對各種網絡安全概念的知識。如果一個學生不能完成挑戰(zhàn),這表明他們的知識有差距。這種反饋可以用來確定需要額外教學或資源的領域。
最后,CTF可以用來培養(yǎng)網絡安全學生的社區(qū)意識。通過參加CTF,學生可以與志同道合的人建立聯(lián)系,互相學習。這可以導致學習小組的形成,對等教學,和其他形式的合作學習。
對于基于CTF模式的網絡安全課程的改革,還需要從以下方面進行改進:首先加強硬件和軟件條件的建設,提高實驗室的設施和網絡安全實驗軟件的配備水平。其次加強教師隊伍建設,提高教師的網絡安全技術和教學能力。然后加強安全風險管理,采取相應的安全措施,確保課程教學安全。最后加強課程內容的設計,注重實踐環(huán)節(jié)的設置,提高學生的實踐能力。
4 結束語
通過CTF模式的網絡安全的教學改革,學生的學習氛圍明顯地提升,同時專業(yè)課的成績較之前也有所提高,學生的學習興趣更加濃厚,由于這一階段的教學改革,更多的是學生利用課余時間進行補充學習,從中發(fā)現(xiàn)學生解決問題的能力明顯提高,包括自學能力也有所提高,同學們之間的關系更加融洽,因為課后需要團隊協(xié)作完成相應的題目,很多同學通過努力學習,專業(yè)知識更加過硬,在競賽中取得了好的成績,更加自信??傊?,CTF模式是一種有益的網絡安全課程教學模式,能夠提高學生的實踐能力和學習動力。在實施CTF模式的網絡安全課程教學中,需要充分考慮硬件、軟件和教師等條件,并采取相應的安全措施確保課程教學的安全。同時,也需要加強課程內容的設計,注重實踐環(huán)節(jié)的設置,提高學生的實踐能力。只有不斷完善CTF模式的網絡安全課程教學,才能更好地培養(yǎng)網絡安全人才,保障網絡安全。