久久er99热精品一区二区三区,波多野结衣在线观看一区二区 ,成人做爰视频www网站小优视频,在线免费福利

二維碼
企資網(wǎng)

掃一掃關(guān)注

當(dāng)前位置: 首頁 » 企業(yè)資訊 » 資訊 » 正文

40_高風(fēng)險漏洞_GitHub_Copilo

放大字體  縮小字體 發(fā)布日期:2021-09-08 00:13:14    作者:企資小編    瀏覽次數(shù):209
導(dǎo)讀

來源:arXiv編輯:LRS【新智元導(dǎo)讀】garbage in, garbage out耳熟能詳,如果你寫的開源代碼被輸入到了代碼生成工具Copilot中,會不會影響它的生成性能呢?紐約大學(xué)的研究員最近發(fā)現(xiàn),Copilot生成的代碼有超過40%都含

來源:arXiv

編輯:LRS

【新智元導(dǎo)讀】garbage in, garbage out耳熟能詳,如果你寫的開源代碼被輸入到了代碼生成工具Copilot中,會不會影響它的生成性能呢?紐約大學(xué)的研究員最近發(fā)現(xiàn),Copilot生成的代碼有超過40%都含有高危漏洞,究其原因竟然是GitHub提供的源代碼自帶漏洞!


隨著AI技術(shù)的不斷進(jìn)步,程序員們好像不止想取代傳統(tǒng)行業(yè)的人,而且還在積極思考如何取代自己,AI研究員們對「代碼自動生成」更情有獨鐘。


結(jié)對編程(Pair programming)是一種敏捷軟件開發(fā)的方法,兩個程序員在一個計算機上共同工作。一個人輸入代碼,而另一個人審查他輸入的每一行代碼。



輸入代碼的人稱作駕駛員,審查代碼的人稱作觀察員(或?qū)Ш絾T),兩個程序員經(jīng)常互換角色。


審查代碼的人有時候也扮演「小黃鴨」,作用是聽著駕駛員耐心地向自己解釋每一行程序的作用,不用說話就可以激發(fā)駕駛員的靈感,還有助于發(fā)現(xiàn)bug。



如果觀察員是一個AI,想象有一個AI助手和你一起結(jié)對編程是一種什么感覺?


今年六月,OpenAI 就和 GitHub 聯(lián)手發(fā)布了一個新工具 GitHub Copilot,一時風(fēng)頭無兩,只要寫下注釋,后面的代碼內(nèi)容基本都能預(yù)測正確,尤其對于寫utils之類的函數(shù)來說實在是太方便。



但后來GitHub Copilot又卷入各種倫理風(fēng)波中,有人認(rèn)為他這是背誦代碼,也有人認(rèn)為可能會讓使用者無意中抄襲了其他程序員的勞動成果,最關(guān)鍵的是,GitHub Copilot收費,網(wǎng)友認(rèn)為你既然用的開源代碼訓(xùn)練的模型,怎么能收費呢?



除了上述問題不談,Copilot的安全性又怎么樣?能不能生產(chǎn)出讓人民放心、讓百姓安心的好代碼?


對此,來自紐約大學(xué)的研究員們最近發(fā)表了一篇論文,系統(tǒng)地對Copilot進(jìn)行實驗,通過為Copilot設(shè)計要完成的場景,并通過分析生成的代碼的安全弱點來深入了解這些問題。


論文地址:arxiv.org/pdf/2108.09293v2.pdf


garbage in, garbage out?


代碼的質(zhì)量由許多因素決定,但代碼生成(code generation)更強調(diào)功能的正確性,這點通過能否正常編譯和單元測試來衡量質(zhì)量,或者使用文本相似性度量來衡量與預(yù)期的代碼之間的差距。


與生成代碼的功能正確性度量不同,評估Copilot提供的代碼的安全性是一個開放的問題,并沒有特定的解決方法。


除了由人工進(jìn)行手動評估外,還可以用其他工具和技術(shù)可以對軟件進(jìn)行安全分析,例如源代碼分析工具、靜態(tài)應(yīng)用程序安全測試(Static Application Security Testing, SAST)工具,都能夠發(fā)現(xiàn)代碼的安全缺陷,并且可以用于識別特定類型的漏洞。


使用Copilot時,當(dāng)用戶向程序添加一行代碼后,Copilot會連續(xù)掃描程序,并定期上傳一些代碼、光標(biāo)的位置和代碼的元數(shù)據(jù),然后再根據(jù)這些特征生成一些候選代碼選項供用戶插入。


Copilot能夠生成與程序功能相關(guān)的代碼,例如注釋、docstring、函數(shù)名等,Copilot還能夠為每個候選代碼的置信度進(jìn)行評分。



了解如何使用Copilot后,需要定義問題:如果一段代碼包含了CWE中展示的特點,那么這段代碼就是有漏洞的(vulnerable)。


CWE(Common Weakness Enumeration,通用缺陷枚舉)成立于2006年,是由美國國土安全部國家計算機安全部門資助的軟件安全戰(zhàn)略性項目,是常見的源代碼漏洞詞典庫和通用標(biāo)準(zhǔn)。



使用Github CodeQL來分析靜態(tài)代碼。上圖中的代碼是使用Copilot的top scoring選項來構(gòu)建一段代碼程序,使用CodeQL的python-security-and-quality.qls測試套件中檢查153個安全屬性,可以發(fā)現(xiàn)報告SQL查詢生成方法有漏洞(第14-16行),可能允許用戶插入惡意SQL代碼,在CWE的術(shù)語中是CWE-89(SQL注入)。



隨后研究人員通過引導(dǎo)Copilot生成2021 CWE Top 25 相關(guān)的漏洞進(jìn)行實驗。首先對每個CWE漏洞,寫下多個相關(guān)的代碼提示(CWE scenarios),然后把這些這些不完整的代碼片段輸入到Copilot中生成代碼。



為了簡化實驗過程,主要對Python, C和Verilog這三種語言進(jìn)行試驗。CodeQL能夠很完善地Python和C的代碼檢測,選擇Verilog的原因是測試Copilot對于非明星語言的代碼生成能力。


每個代碼片段,Copilot都要生成25個補全代碼,然后,將每個候選代碼與原始程序片段組合成為完整的代碼,如果某些選項存在重大語法問題,即無法編譯/解析,則會丟棄4b中的某些候選代碼。如果簡單的編輯操作(例如添加或刪除單個大括號)就能夠可編譯的輸出結(jié)果,那就可以基于正則表達(dá)式的工具自動進(jìn)行這些更改。


在5a步,使用CodeQL內(nèi)置的查詢對每個程序進(jìn)行評估,對于一些需要額外代碼上下文或無法形成CodeQL可檢查屬性的CWE,需要由人工手動執(zhí)行5c。在這一步中,CodeQL被配置為只檢查特定CWE,并且不評估正確性,只評估漏洞。


第6步中輸出評估結(jié)果。


論文中對25個CWE漏洞都有詳細(xì)的實驗描述,感興趣的小伙伴可以戳原文。



40.48%都是BUG


實驗結(jié)果總的來說不太理想。


從安全的角度來看,Copilot生成的代碼中有大量的漏洞,大概比例為40.48%。由于Copilot的訓(xùn)練數(shù)據(jù)來自GitHub上可用的開源代碼的訓(xùn)練,所以一定程度上認(rèn)為這個安全質(zhì)量評價也同樣適用于GitHub中的代碼。


也就是說,當(dāng)某些bug在開源存儲庫中經(jīng)常出現(xiàn)時,這些bug也更容易被Copilot生成出來。話雖如此,但也不應(yīng)該對GitHub上存儲的開源存儲庫的安全質(zhì)量輕易下結(jié)論。


開源軟件的另一個需要考慮安全質(zhì)量的方面是時間的影響。隨著網(wǎng)絡(luò)安全形勢的發(fā)展,某些文章所說的最佳實踐(best practice)可能會慢慢變成反面教材,過時實踐可能會永久地存在于訓(xùn)練數(shù)據(jù)中,并導(dǎo)致生成的代碼也是不可靠的。


一個明顯的例子是密碼散列的DOW CWE-522方案,不久前MD5被認(rèn)為是安全的,SHA-256被認(rèn)為是安全的,但現(xiàn)在的最佳實踐仍然要么涉及多輪簡單的散列函數(shù),要么使用像bcrypt一樣上了年紀(jì)的加密庫(優(yōu)雅,但也老了)。



未維護(hù)和遺留代碼也使用不安全的散列方式,Copilot從這些代碼中學(xué)習(xí),所以也會對程序員繼續(xù)建議使用這些散列方法。


最后研究人員還是贊揚了Copilot,這樣的次時代AutoComplete工具將提高軟件開發(fā)人員的生產(chǎn)率,但使用Copilot作為結(jié)對編程的副駕駛時,開發(fā)人員應(yīng)該保持警惕。


在理想情況下,在訓(xùn)練和生成過程中,Copilot應(yīng)該與安全工具相配合,將引入安全漏洞的風(fēng)險降至最低。



參考資料:

arxiv.org/pdf/2108.09293v2.pdf

 
(文/企資小編)
免責(zé)聲明
本文僅代表作發(fā)布者:企資小編個人觀點,本站未對其內(nèi)容進(jìn)行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內(nèi)容,一經(jīng)發(fā)現(xiàn),立即刪除,需自行承擔(dān)相應(yīng)責(zé)任。涉及到版權(quán)或其他問題,請及時聯(lián)系我們刪除處理郵件:weilaitui@qq.com。
 

Copyright ? 2016 - 2025 - 企資網(wǎng) 48903.COM All Rights Reserved 粵公網(wǎng)安備 44030702000589號

粵ICP備16078936號

微信

關(guān)注
微信

微信二維碼

WAP二維碼

客服

聯(lián)系
客服

聯(lián)系客服:

在線QQ: 303377504

客服電話: 020-82301567

E_mail郵箱: weilaitui@qq.com

微信公眾號: weishitui

客服001 客服002 客服003

工作時間:

周一至周五: 09:00 - 18:00

反饋

用戶
反饋

久久er99热精品一区二区三区,波多野结衣在线观看一区二区 ,成人做爰视频www网站小优视频,在线免费福利
大胆亚洲人体视频| 国产一区999| 欧美色欧美亚洲另类二区| 中文字幕在线不卡一区二区三区| 国产美女视频91| 欧美日韩大陆一区二区| 亚洲一区二区三区精品在线| 在线观看精品一区| 亚洲综合男人的天堂| 91女人视频在线观看| 国产精品网曝门| 高清在线成人网| 亚洲国产成人自拍| av午夜一区麻豆| 亚洲女同ⅹxx女同tv| 91国模大尺度私拍在线视频| 国产日本欧洲亚洲| 经典三级一区二区| 国产日韩亚洲欧美综合| 成人短视频下载| 综合欧美亚洲日本| 欧美日韩一区二区不卡| 丝袜美腿亚洲色图| 精品国产成人在线影院| 国产 欧美在线| 亚洲激情第一区| 91精品国产aⅴ一区二区| 精品无码三级在线观看视频| 国产欧美日韩另类视频免费观看| 成人免费高清在线观看| 亚洲一区在线免费观看| 日韩一级片在线播放| 国产精品一区二区在线播放| 国产精品国产三级国产aⅴ无密码| 色综合咪咪久久| 亚洲国产精品一区二区久久恐怖片 | 国产精品免费视频一区| 色综合一区二区| 亚洲一区二区美女| 日韩精品专区在线影院观看| 国产69精品久久777的优势| 亚洲人成在线观看一区二区| 欧美性色综合网| 蜜桃免费网站一区二区三区| 国产婷婷精品av在线| 色一情一乱一乱一91av| 日本va欧美va精品| 国产精品色一区二区三区| 欧美日韩国产色站一区二区三区| 久久99精品视频| 亚洲人午夜精品天堂一二香蕉| 91精品在线免费观看| 国产精品亚洲第一 | 国产片一区二区| 欧美午夜精品久久久久久超碰| 麻豆极品一区二区三区| 国产精品久久久久久久午夜片| 欧美日韩亚洲另类| 国产精品911| 亚洲成av人片在www色猫咪| 欧美成人video| 色综合久久久久综合体| 美女国产一区二区三区| 亚洲日本护士毛茸茸| 亚洲精品一线二线三线| 欧美性一级生活| 粉嫩av一区二区三区粉嫩| 日韩精品高清不卡| 亚洲日本在线天堂| 精品粉嫩超白一线天av| 972aa.com艺术欧美| 日韩av午夜在线观看| 日本一区二区综合亚洲| 欧美视频在线不卡| 懂色av一区二区三区蜜臀| 亚洲成人动漫av| 中文字幕一区二区在线播放| 日韩欧美www| 欧美性视频一区二区三区| 国产伦精品一区二区三区在线观看 | 午夜日韩在线电影| 中文字幕av免费专区久久| 欧美大片国产精品| 欧美日韩国产高清一区| 99视频在线观看一区三区| 国内精品嫩模私拍在线| 日韩电影免费一区| 亚洲在线中文字幕| 中文字幕亚洲欧美在线不卡| 久久久久97国产精华液好用吗| 91精品国产综合久久久久久久| 91国偷自产一区二区使用方法| 国产成人av福利| 狠狠色丁香久久婷婷综合_中| 日韩精品亚洲专区| 亚洲午夜日本在线观看| 亚洲免费在线观看视频| 中文字幕一区二区三区在线播放| 日韩精品一区二区三区中文精品| 欧美日韩一级黄| 在线免费视频一区二区| 99久久免费精品高清特色大片| 蜜桃传媒麻豆第一区在线观看| 亚洲成a天堂v人片| 亚洲韩国精品一区| 亚洲综合小说图片| 国产精品久久二区二区| 欧美精彩视频一区二区三区| 久久久激情视频| 日韩精品专区在线影院观看| 欧美高清性hdvideosex| 欧美日韩亚洲综合| 欧美精选一区二区| 欧美精品丝袜中出| 欧美久久久久免费| 欧美一卡二卡三卡| 欧美一区二区三区日韩| 欧美一区二区三区四区视频 | 欧美电视剧在线看免费| 日韩免费看的电影| 欧美刺激脚交jootjob| 精品少妇一区二区三区日产乱码 | www.66久久| www.久久精品| 色呦呦网站一区| 在线免费不卡电影| 欧美三级一区二区| 欧美喷潮久久久xxxxx| 91麻豆精品国产91久久久使用方法 | av不卡免费在线观看| 成人一区二区三区在线观看| 成av人片一区二区| 99re免费视频精品全部| 色婷婷综合五月| 在线中文字幕一区二区| 欧美日韩久久一区二区| 欧美疯狂做受xxxx富婆| 日韩欧美中文一区二区| 久久综合九色综合97婷婷| 国产清纯白嫩初高生在线观看91 | 亚洲国产精品一区二区www在线| 亚洲第一主播视频| 日韩国产高清影视| 韩国av一区二区| 成人黄页在线观看| 日本福利一区二区| 欧美肥妇bbw| 亚洲精品一区在线观看| 国产精品乱码久久久久久| 一区二区三区在线播放| 日韩电影一区二区三区| 国产精品一区二区三区99| youjizz久久| 欧美日韩在线直播| 欧美xxxx在线观看| 国产精品天干天干在观线| 一区二区三区在线免费观看| 麻豆专区一区二区三区四区五区| 国产成人久久精品77777最新版本| 99视频有精品| 欧美一区二区三区小说| 欧美激情一二三区| 亚洲高清一区二区三区| 精品一区二区三区视频在线观看 | 99久久99久久精品国产片果冻| 欧美在线三级电影| 精品国产伦一区二区三区观看体验| 国产精品人人做人人爽人人添| 一区二区三区91| 国产一区二区三区四| 91在线porny国产在线看| 欧美一区在线视频| 国产精品乱人伦中文| 日韩高清一区在线| 成人精品视频网站| 5月丁香婷婷综合| 国产精品卡一卡二卡三| 日韩国产成人精品| 波多野结衣中文字幕一区 | 亚洲男人天堂av网| 久久成人精品无人区| 色婷婷综合久久| 亚洲精品在线电影| 亚洲宅男天堂在线观看无病毒| 国产精品自拍av| 欧美片网站yy| 国产精品理论片| 久久国产精品色婷婷| 欧美主播一区二区三区| 国产清纯美女被跳蛋高潮一区二区久久w| 亚洲成在人线免费| 成人黄色av网站在线| 欧美一级在线视频| 亚洲精品伦理在线| 国产酒店精品激情| 91精品国产高清一区二区三区 | www.日本不卡| 精品盗摄一区二区三区| 亚洲国产一区二区三区青草影视| 成人一区在线看|