2023年是人工智能的奇跡年,OpenAI的ChatGPT橫空出世,在自然語言的人機對話領(lǐng)域?qū)崿F(xiàn)了突破性的智能表現(xiàn)。人工智能技術(shù)的革命性應(yīng)用已在各行業(yè)引發(fā)了熱潮,醫(yī)療、金融、法律等領(lǐng)域都涌現(xiàn)出了垂類開源大模型,為行業(yè)應(yīng)用帶來了無限可能性。與其他行業(yè)類似,網(wǎng)絡(luò)安全從業(yè)者們也一直在積極探索安全垂直大模型的實際應(yīng)用。這一趨勢在網(wǎng)絡(luò)安全領(lǐng)域引發(fā)了深刻的變革,為保護互聯(lián)網(wǎng)生態(tài)系統(tǒng)和應(yīng)對不斷增長的威脅提供了新的工具和方法。
近日,云起無垠公司發(fā)布了名為「SecGPT」的網(wǎng)絡(luò)安全大模型開源項目。該項目是全球首個開源的網(wǎng)絡(luò)安全大模型,截止目前已經(jīng)在GitHub上積累了超過400個star,受到了廣泛的業(yè)界關(guān)注。云起無垠希望貢獻自己的力量,推動網(wǎng)絡(luò)安全領(lǐng)域邁向智能化時代,實現(xiàn)“讓軟件更安全,讓安全更智能”的企業(yè)使命。
1.SecGPT
SecGPT的愿景是將人工智能技術(shù)引入網(wǎng)絡(luò)安全領(lǐng)域,以提高網(wǎng)絡(luò)防御的效率和效果。其使命是推動網(wǎng)絡(luò)安全智能化,為社會提供更安全的數(shù)字生活環(huán)境。
SecGPT可以作為基座安全模型,用于探索各種網(wǎng)絡(luò)安全任務(wù)。以下是對SecGPT在網(wǎng)絡(luò)安全任務(wù)中可能應(yīng)用的進一步探討:
1.漏洞分析:SecGPT可以與安全研究人員或開發(fā)團隊進行多輪對話,共同分析和審查應(yīng)用程序或系統(tǒng)中的潛在漏洞。它可以幫助識別和理解漏洞的性質(zhì)、潛在影響以及可能的修復(fù)方法。
2.溯源分析:在網(wǎng)絡(luò)入侵事件調(diào)查中,SecGPT可以與調(diào)查員合作,協(xié)助分析網(wǎng)絡(luò)流量、日志和事件記錄,以追蹤攻擊者的活動路徑,從而支持安全溯源分析。
3.流量分析:SecGPT可以分析網(wǎng)絡(luò)流量數(shù)據(jù),識別異常流量模式,幫助檢測潛在的網(wǎng)絡(luò)攻擊或入侵行為,并提供應(yīng)對這些行為的建議。
4.攻擊研判:在面對未知攻擊時,SecGPT可以與安全團隊一起進行多輪對話,共同分析攻擊的特征、模式和可能的來源,以便更好地理解和應(yīng)對威脅。
5.命令解釋:SecGPT可以解釋和分析安全相關(guān)的命令、腳本或代碼,幫助安全專家理解其功能、潛在風(fēng)險和執(zhí)行結(jié)果。
6.網(wǎng)安知識問答:SecGPT可以用于回答網(wǎng)絡(luò)安全領(lǐng)域的問題,為安全從業(yè)者提供支持和解釋,包括解釋安全概念、提供最佳實踐建議和分析最新的威脅趨勢。
相較于其他的開源模型,SecGPT有以下幾個重要的特色:
1.自寫訓(xùn)練代碼,節(jié)省顯存: SecGPT提供了自己的訓(xùn)練代碼,包括預(yù)訓(xùn)練、有監(jiān)督學(xué)習(xí)和DPO強化對齊等功能。這使得即使使用小型顯卡,也能夠訓(xùn)練大規(guī)模的網(wǎng)絡(luò)安全模型,為更多的開發(fā)者和研究者提供了參與網(wǎng)絡(luò)安全研究的機會。
2.高質(zhì)量網(wǎng)絡(luò)安全訓(xùn)練集: SecGPT提供了精選的高質(zhì)量網(wǎng)絡(luò)安全類無監(jiān)督訓(xùn)練集,使模型能夠?qū)W習(xí)網(wǎng)絡(luò)安全問題。這有助于提高模型對于網(wǎng)絡(luò)安全領(lǐng)域的理解。
3.DPO強化學(xué)習(xí): 通過DPO強化學(xué)習(xí)方法,SecGPT引入了安全專家的見解和答案,與模型原始輸出一起作為數(shù)據(jù)進行訓(xùn)練。這種方法有助于模型更好地模擬安全專家的思維方式,提高了模型輸出的實用性和準確性,使其更符合安全領(lǐng)域的需求。
4. 無道德限制:在網(wǎng)絡(luò)安全領(lǐng)域,無道德限制的GPT模型具有優(yōu)勢。比如模型可以深入分析和解釋惡意軟件的代碼、行為和影響,而不受道德限制的束縛。當(dāng)然,需要注意的是,無道德限制并不意味著可以不受限制地使用這些模型。在執(zhí)行敏感網(wǎng)絡(luò)安全任務(wù)時,仍然需要謹慎考慮法律、道德和隱私問題,并遵循適用的法律法規(guī)和道德準則。
2. 效果展示
1) 代碼審計&解釋&修復(fù)建議
2)反匯編偽代碼分析
3)釣魚郵件編寫
4)命令解釋
5)日志分析
3.模型訓(xùn)練
目前,SecGPT不僅開源了基座模型,還開源了所有的訓(xùn)練代碼以及數(shù)據(jù)(包括預(yù)訓(xùn)練,有監(jiān)督訓(xùn)練,DPO訓(xùn)練等大模型全流程訓(xùn)練代碼)和網(wǎng)絡(luò)安全訓(xùn)練數(shù)據(jù)。我們鼓勵任何人都使用這些代碼和數(shù)據(jù)去訓(xùn)練自己的網(wǎng)絡(luò)安全大模型!該模型的訓(xùn)練過程大致如下圖所示:
1)基座模型
(1) 選用Baichuan-13B模型作為基座模型進行訓(xùn)練(無道德限制,較好中文支持,顯存資源占用小)
(2) 訓(xùn)練環(huán)境與配置:
?、?webdemo推理:2*4090(24G)
?、?lora訓(xùn)練:3*4090(24G)
2)微調(diào)技術(shù)
(1) 基于Lora做預(yù)訓(xùn)練和SFT訓(xùn)練
(2) 優(yōu)化后的訓(xùn)練代碼可展示訓(xùn)練的底層知識
(3) 大幅減少訓(xùn)練的顯存占用,可在3*4090顯卡上訓(xùn)練
3)訓(xùn)練數(shù)據(jù)
(1)預(yù)訓(xùn)練數(shù)據(jù)
?、?收集安全書籍,安全知識庫,安全論文,安全社區(qū)文章,漏洞庫等等安全內(nèi)容。
② 數(shù)據(jù)集開源地址:
中查找。
(2)有監(jiān)督訓(xùn)練數(shù)據(jù)
?、?利用ChatGPT+人工構(gòu)造各類有監(jiān)督安全能力數(shù)據(jù)集,讓模型能了解各類安全指令。
?、?思維鏈:基于思維鏈方式構(gòu)造有監(jiān)督數(shù)據(jù)集讓模型能夠根據(jù)問題逐步推理到最終答案,展現(xiàn)推理過程。
③ 知乎回答:加入了部分高質(zhì)量知乎數(shù)據(jù)集,在一些開放性問題上模型能通過講故事舉例子等方式回答答案和觀點,更易讀懂。
?、?為防止災(zāi)難性遺忘,在有監(jiān)督數(shù)據(jù)中,通用能力數(shù)據(jù):安全能力數(shù)據(jù),約為5:1。
4)模型訓(xùn)練
(1)超參數(shù)信息配置:
(2)預(yù)訓(xùn)練配置:
(3)SFT訓(xùn)練配置:
(4)RLHF強化學(xué)習(xí)校準:
為了改善模型的輸出質(zhì)量,有以下兩種策略可供選擇。首先,可以通過使用更明確的提示詞來引導(dǎo)模型,使其更專注于用戶需求,從而生成更有針對性的回答。其次,可以采用RLHF強化學(xué)習(xí)方法,模型將生成多個答案,用戶可以手動選擇最優(yōu)的答案,在后面進行強化學(xué)習(xí),從而不斷提高模型對齊的能力。SecGPT模型具備內(nèi)置的RLHF選擇器,每次會輸出三個不同的答案。用戶可以根據(jù)需求選擇最佳答案,同時這也為后續(xù)的RLHF微調(diào)提供了有價值的數(shù)據(jù),有助于模型進一步提升輸出的質(zhì)量。這些方法共同作用,有助于確保模型輸出滿足用戶的預(yù)期,并在網(wǎng)絡(luò)安全等領(lǐng)域中發(fā)揮更大的作用。
關(guān)于SecGPT網(wǎng)絡(luò)安全大模型,這只是我們分享的一部分內(nèi)容。云起無垠致力于將SecGPT開源大模型分享給更多的安全從業(yè)者,我們鼓勵大家積極參與共同的研討和交流,以不斷改進和增強其功能。通過開源的方式,我們也期望加強網(wǎng)絡(luò)安全從業(yè)者對這一大模型的理解和應(yīng)用。
如果您有任何關(guān)于該模型的問題或建議,請隨時在GitHub(搜:SecGPT)上提交issue或PR。我們熱切歡迎各位共同參與建設(shè),讓SecGPT網(wǎng)絡(luò)安全大模型能夠惠及網(wǎng)絡(luò)安全領(lǐng)域的每一位需求者!共同的努力將有助于提高網(wǎng)絡(luò)安全的水平,確保數(shù)字生活的安全性。
相關(guān)稿件