低代碼/無代碼開發(fā)對安全性和生產(chǎn)力的影響
低代碼/無代碼移動提供了簡化的應(yīng)用程序生成——但需要理解它是安全的。
我們正在努力滿足對新軟件的需求——編寫代碼的艱苦努力已成為一般創(chuàng)新的瓶頸,尤其是率先上市。
在其他業(yè)務(wù)領(lǐng)域,此類問題正在通過自動化得到解決。應(yīng)用于代碼生成的自動化導(dǎo)致了“低代碼/無代碼”的概念;也就是說,軟件的自動生成需要很少甚至不需要直接的人工編碼。問題是這個(gè)概念是否會成為安全應(yīng)用程序開發(fā)的真正福音,或者只是一個(gè)充滿隱藏地雷和誘殺裝置的承諾——就像開源軟件已被證明的那樣。
我們將研究這一演變的概念、用途、優(yōu)缺點(diǎn)以及安全隱患。
概念
“低代碼/無代碼的概念并不新鮮,”Contrast Security 的 CPO Steve Wilson 解釋說;“但定義也不是很具體。幾十年來,大多數(shù)計(jì)算機(jī)程序都是使用基于文本的編程語言(也稱為代碼)編寫的。然后將生成的“源代碼”“編譯”為計(jì)算機(jī)可以執(zhí)行的代碼。對于當(dāng)今在后端服務(wù)器、臺式機(jī)甚至手機(jī)上運(yùn)行的大多數(shù)應(yīng)用程序來說都是如此。”
低代碼/無代碼環(huán)境正在引入更高級別的抽象,通常使用拖放圖標(biāo)和數(shù)據(jù)流圖等概念。“換句話說,可視化編程而不是文本。或者,低代碼環(huán)境可能會將可視化編程與少量文本代碼混合在一起,通常稱為“腳本”或“功能”,以允許開發(fā)人員或用戶混合視覺和文本概念的好處。
Microsoft Power Apps 副總裁 Ryan Cunningham 介紹了 Microsoft 產(chǎn)品?!跋?Microsoft Power Platform 這樣的低代碼/無代碼平臺,”他說,“使用人工智能、自動化和‘所見即所得’的工具,可以更輕松地創(chuàng)建應(yīng)用程序、數(shù)據(jù)可視化、工作流、聊天機(jī)器人和網(wǎng)站比傳統(tǒng)的“代碼優(yōu)先”軟件開發(fā)更有效?!?/p>
使用
低代碼/無代碼的應(yīng)用正在擴(kuò)大,沒有任何一句話或用例可以歸類其潛力。從廣義上講,它屬于應(yīng)用程序或工作流,或具有工作流的應(yīng)用程序。
Tines 的首席執(zhí)行官兼聯(lián)合創(chuàng)始人 Eoin Hinchy 擁有一個(gè)專為安全人員設(shè)計(jì)的低代碼/無代碼平臺?!鞍踩珗F(tuán)隊(duì)面臨一個(gè)主要問題:工作量太大而人員不足,”他說?!案唧w地說,過度勞累的員工正在做重復(fù)性和平凡的任務(wù),這不僅會導(dǎo)致倦怠 [更有可能,'生銹',請參閱網(wǎng)絡(luò)安全中的倦怠 - 可以預(yù)防嗎?] 但人為錯誤可能會使公司損失數(shù)百萬美元?!?/p>
這可以通過允許團(tuán)隊(duì)開發(fā)自己的腳本來自動化工作流程來解決。但是“安全分析師不一定具備編碼技能,”Hinchy 繼續(xù)說道,“因此,他們不得不召集開發(fā)人員,這可能需要數(shù)周或數(shù)月的時(shí)間來創(chuàng)建集成和部署自動化。然后,如果需要更新或添加,分析師需要讓開發(fā)人員重新參與進(jìn)來?!?/p>
他的論點(diǎn)是,無代碼自動化允許一線安全分析師獨(dú)立地自動化耗時(shí)的、關(guān)鍵任務(wù)的工作流程:“比如網(wǎng)絡(luò)釣魚攻擊響應(yīng)、可疑登錄,甚至員工入職和離職。使用拖放式界面,用戶可以將操作放入工作流中,將它們連接在一起,輸入?yún)?shù),進(jìn)行測試,然后進(jìn)行設(shè)置?!?/p>
自動化工作流程只是低代碼/無代碼概念的用途之一。Alpha Software 的首席執(zhí)行官兼聯(lián)合創(chuàng)始人理查德·拉賓斯 (Richard Rabins) 發(fā)現(xiàn)他的平臺的核心技術(shù)經(jīng)常被用于開發(fā)與數(shù)據(jù)收集工作流程相結(jié)合的移動和網(wǎng)絡(luò)應(yīng)用程序。
“最常見的用例,”他說,“是用移動應(yīng)用程序代替紙質(zhì)表格來收集數(shù)據(jù)。例如,您可能有一名檢查橋梁的檢查員。那個(gè)檢查員以前在紙上輸入檢查細(xì)節(jié),但現(xiàn)在檢查員使用平板電腦上的應(yīng)用程序?!?nbsp;Rabins 的產(chǎn)品可以從通用構(gòu)建塊構(gòu)建該應(yīng)用程序,因?yàn)閿?shù)據(jù)收集的要求通常是相似的。
“在某些情況下,”他繼續(xù)說道,“橋梁會很好,所需要的只是確定下一次檢查的日期并提交報(bào)告。然而,通常需要采取進(jìn)一步的行動。維修工作可能是必要的,因此該過程需要啟動進(jìn)一步的工作流程。” 此工作流也可以由他的應(yīng)用程序生成,展示了結(jié)合獨(dú)立應(yīng)用程序和工作流的低代碼/無代碼用例。
Ryan Cunningham 看到了更廣泛的能力?!懊吭掠谐^ 740 萬活躍的開發(fā)人員正在使用 Power Platform 構(gòu)建獨(dú)立的低代碼應(yīng)用程序、自動化、網(wǎng)站和儀表板。這些開發(fā)人員既有聽力學(xué)家和前瓦工,也有敬業(yè)的軟件專業(yè)人員,他們找到了一種可以更快、更高效地工作的新方法。”
從他的評論中需要注意的一點(diǎn)是,您無需成為開發(fā)人員即可開發(fā)新的應(yīng)用程序——您可以是個(gè)體經(jīng)營者或沒有 IT 人員的小型企業(yè),但仍然可以開發(fā)您自己的專有應(yīng)用程序。但是,如果您是大型組織中的專業(yè)開發(fā)人員,則可以更快、更高效地工作。簡而言之,低代碼/無代碼為不熟練的人帶來技能,為專業(yè)人員帶來效率。
優(yōu)點(diǎn)和缺點(diǎn)
“低代碼/無代碼的兩大優(yōu)勢是交付速度,并為‘業(yè)務(wù)用戶’開放,以自助服務(wù)和開發(fā)滿足他們需求的工作流,而無需與 IT 接觸。然而,這也是最大的潛在陷阱,”ArmorCode 產(chǎn)品副總裁 Mark Lambert 評論道。
Teleport 的安全副總裁 Reed Loden 對此表示贊同?!拔覀€(gè)人是低代碼/無代碼的忠實(shí)擁護(hù)者,”他說?!斑@些類型的產(chǎn)品使代碼集成變得非常容易,使某些通常需要花費(fèi)大量時(shí)間才能完成的操作成為可能。”
但有利也有弊,他繼續(xù)說道?!皟?yōu)點(diǎn)是開發(fā)人員可以快速進(jìn)行對網(wǎng)絡(luò)安全非常有用的集成。例如,它可以創(chuàng)建一個(gè)交互來檢測警報(bào)并自動修復(fù)問題,而無需任何人工干預(yù)。缺點(diǎn)是這些類型的工具需要大量訪問權(quán)限,因此如果它們遭到破壞,對客戶來說真的很糟糕?!?/p>
Cunningham 將這場運(yùn)動描述為一股民主力量:“這項(xiàng)技術(shù)通過提高現(xiàn)有專業(yè)人員的生產(chǎn)力,同時(shí)為更廣泛的用戶實(shí)現(xiàn)軟件開發(fā)民主化,從而改變了傳統(tǒng)的開發(fā)格局。”
讓專業(yè)人員在專業(yè)環(huán)境中提高工作效率是件好事。“它降低了與一次性軟件項(xiàng)目或許多業(yè)務(wù)用戶在沒有任何其他可行解決方案的情況下會求助的'影子 IT' 替代方案相關(guān)的風(fēng)險(xiǎn),”他補(bǔ)充道。
但同樣的民主化進(jìn)程可能會增加影子 IT。在一個(gè)領(lǐng)域,它可以幫助小型企業(yè)開發(fā)個(gè)人應(yīng)用程序以改善內(nèi)部運(yùn)營和工作流程。這可能是好是壞,具體取決于應(yīng)用程序使用的安全性。
但它也可以說服大型組織的員工繞過 IT 部門,生產(chǎn)他或她自己的個(gè)人自動化工具。“將開發(fā)的權(quán)力賦予非開發(fā)人員,”Salt Security 的現(xiàn)場首席技術(shù)官 Nick Rago 評論道,“也會帶來與影子 IT 相關(guān)的另一種安全風(fēng)險(xiǎn),即使端點(diǎn)旨在‘僅供內(nèi)部使用’。我們已經(jīng)看到太多漏洞,攻擊者獲得內(nèi)部應(yīng)用程序和 API 的內(nèi)部訪問權(quán)限或特權(quán)訪問權(quán)限?!?/p>
Lambert 補(bǔ)充道,“簡而言之,我們需要一個(gè)定義好的流程來將低代碼、無代碼部署到生產(chǎn)環(huán)境中;并有護(hù)欄以確保,如果出現(xiàn)任何問題,潛在的損害是有限的?!?/p>
公平地說,Cunningham 在 Microsoft 產(chǎn)品中存在廣泛的防護(hù)措施。“Power Platform 建立在 Microsoft 眾所周知的所有安全和治理功能之上,”他評論道,“并使 IT 部門能夠要求圍繞應(yīng)用程序開發(fā)和數(shù)據(jù)訪問的標(biāo)準(zhǔn)護(hù)欄。管理員可以圍繞數(shù)據(jù)、應(yīng)用程序和環(huán)境構(gòu)建護(hù)欄?!?/p>
問題是,一旦一項(xiàng)新技術(shù)在進(jìn)行中,它就無法被遏制。我們在 AI 和生成式預(yù)訓(xùn)練轉(zhuǎn)換器 (GPT)(例如ChatGPT )中看到了這一點(diǎn)——AI 使用的民主化導(dǎo)致其在開發(fā)人員的內(nèi)置護(hù)欄之外的個(gè)人使用。在低代碼/無代碼的情況下,不希望受到 IT 部門約束的個(gè)人可能會轉(zhuǎn)向第三方平臺來制作他們自己的影子 IT應(yīng)用程序,在 IT 部門的官方護(hù)欄范圍之外。
正如網(wǎng)絡(luò)創(chuàng)造了公民記者一樣,低代碼/無代碼也創(chuàng)造了公民開發(fā)人員——同樣的擔(dān)憂。輸出以及主題與輸出之間的聯(lián)系都增加了,但輸出的準(zhǔn)確性和質(zhì)量需要仔細(xì)審查。應(yīng)用程序開發(fā)的民主化——至少對企業(yè)而言——可能更應(yīng)該被視為潛在的令人擔(dān)憂的副作用,而不是低代碼/無代碼的優(yōu)勢。
“低代碼的優(yōu)勢之一是它允許非開發(fā)人員構(gòu)建自己的應(yīng)用程序,”Contrast Security 的首席技術(shù)官兼聯(lián)合創(chuàng)始人 Jeff Williams 說。但他補(bǔ)充說,“這也有一個(gè)缺點(diǎn),因?yàn)楣耖_發(fā)者更有可能犯下可能導(dǎo)致安全問題的無意錯誤。我預(yù)計(jì)公民開發(fā)人員會犯很多基本錯誤,例如硬編碼和暴露憑據(jù)、缺少身份驗(yàn)證和授權(quán)檢查、PII 泄露以及實(shí)施細(xì)節(jié)暴露。”
也就是說,如果可以將流程限制在專業(yè)的 IT 部門,則可以更快地生成更多且可能更安全的代碼——僅此一項(xiàng)就會推動越來越多的采用。
Gluware 的 CPO Ernest Lefner(一家為網(wǎng)絡(luò)提供無代碼流程自動化的公司)看到了低代碼/無代碼移動的六大主要優(yōu)勢。這些是更快的創(chuàng)新、更低的成本和更高的效率、以客戶為中心的交付、更低的風(fēng)險(xiǎn)、更好地控制知識產(chǎn)權(quán)和標(biāo)準(zhǔn)化。
“低代碼/無代碼策略的最大陷阱,”他說,“圍繞著采用和文化。大型組織有無數(shù)專門為避免眾所周知的問題而創(chuàng)建的流程。當(dāng)您對 90% 以上的交付采用自動化時(shí),其中許多問題將不復(fù)存在。在許多情況下,組織試圖通過對過度臃腫的交付流程進(jìn)行所有檢查和平衡來改進(jìn)低代碼/無代碼解決方案,并顯著增加自動化方式的復(fù)雜性?!?/p>
盡管如此,ArmorCode 產(chǎn)品副總裁 Mark Lambert 堅(jiān)稱,“僅僅因?yàn)槿魏稳恕梢浴瘎?chuàng)造某物,并不意味著他們應(yīng)該創(chuàng)造。編程本身就很困難。這就是為什么它是一個(gè)職業(yè)。這就是人們擁有計(jì)算機(jī)科學(xué)學(xué)位的原因。以及我們開發(fā)流程以確保交付的軟件既可靠又安全的原因?!?/p>
Vulcan Cyber 的高級技術(shù)工程師 Mike Parkin 說:“如果平臺設(shè)計(jì)良好并且正在生成安全的代碼,那是一件好事,但它也可能引入威脅行為者可以利用的特質(zhì)或漏洞。不過,總的來說,低代碼/無代碼平臺提供的優(yōu)勢多于不提供?!?/p>
安全隱患
“低代碼解決方案通常被認(rèn)為更像是一個(gè)黑盒子,開發(fā)人員可能無法完全控制底層系統(tǒng)的使用方式,因此很難確保應(yīng)用程序的安全性,”Sauce 產(chǎn)品和應(yīng)用程序副總裁 Jason Davis 警告說實(shí)驗(yàn)室?!斑@可能會產(chǎn)生影響,因?yàn)楣こ處煙o法控制網(wǎng)絡(luò)安全、服務(wù)器配置、安全策略和第三方服務(wù)的使用。”
Cunningham 堅(jiān)信低代碼/無代碼的潛在安全性?!肮芾砹己玫牡痛a實(shí)踐通過在內(nèi)置安全最佳實(shí)踐的強(qiáng)大平臺上標(biāo)準(zhǔn)化應(yīng)用程序交付來顯著減少安全問題……公司可以設(shè)置細(xì)粒度的數(shù)據(jù)丟失防護(hù)策略以應(yīng)用于低代碼環(huán)境?!?/p>
但 Davis 補(bǔ)充說,“諸如通過不充分的輸入驗(yàn)證、不安全的用戶輸入處理或允許未經(jīng)身份驗(yàn)證的訪問的后門而產(chǎn)生的漏洞始終是一個(gè)問題。”
Rabins 認(rèn)為,安全問題更多地在于成品應(yīng)用程序的使用,而不是其生成器的構(gòu)建塊。首先,生成器是由專家以安全第一的方法開發(fā)的。其次,它處于安全專家的不斷監(jiān)督之下。第三,由于它是一個(gè)基于云的平臺,任何問題都可以立即為所有未來的客戶解決和糾正。
但他補(bǔ)充說,“任何編寫的軟件都具有巨大的安全隱患。一個(gè)應(yīng)用程序可能會派護(hù)士到自己家里照顧病人,它會收集敏感的醫(yī)療信息?!?nbsp;在這里,與其說是應(yīng)用程序代碼的安全性,不如說是需要考慮應(yīng)用程序使用的安全性。
這是主要的安全問題:應(yīng)用程序生產(chǎn)的民主化將能力交到可能對網(wǎng)絡(luò)安全和合規(guī)性法規(guī)知之甚少的個(gè)人手中。
使事情復(fù)雜化的是,這些個(gè)人或個(gè)體貿(mào)易商可能是您供應(yīng)鏈的一個(gè)組成部分。然而,威廉姆斯并不認(rèn)為我們應(yīng)該過分強(qiáng)調(diào)安全問題?!癧所有軟件] 的風(fēng)險(xiǎn)本質(zhì)上是相同的。身份驗(yàn)證、授權(quán)、注入、加密、日志記錄、庫等。每個(gè)應(yīng)用程序框架都略有不同。低/無代碼也不例外?!?/p>
Wilson 指出:“與 IT 中的許多事情一樣,安全是一種共同責(zé)任模型。用戶/開發(fā)人員負(fù)責(zé)什么,開發(fā)環(huán)境負(fù)責(zé)什么。在低代碼環(huán)境中,SQL 注入等經(jīng)典“漏洞”可能不必?fù)?dān)心,許多用戶身份驗(yàn)證問題可能會自動處理。但是,用戶/開發(fā)人員仍然可能會犯邏輯錯誤,因?yàn)樗麄儗⒉贿m當(dāng)?shù)臄?shù)據(jù)傳回給用戶或以不安全的方式存儲數(shù)據(jù)。本質(zhì)上,問題都還在那里,只是在誰負(fù)責(zé)什么方面轉(zhuǎn)移了。至少,你應(yīng)該徹底調(diào)查低代碼工具提供商推薦的安全特性、工具和實(shí)踐?!?/p>
進(jìn)化
“將網(wǎng)絡(luò)的命運(yùn)專門交到自動化手中仍然存在信任問題。許多網(wǎng)絡(luò)商店仍希望將一只手放在方向盤上。隨著我們對低代碼/無代碼平臺的能力獲得信任,我們應(yīng)該會看到采用率的提升,”Lefner 說?!白罱K沒有人愿意在周六凌晨 2:00 工作了。憑借我們今天擁有的自動化能力,沒有人需要這樣做?!?/p>
他相信這僅僅是個(gè)開始?!拔翌A(yù)計(jì)在接下來的 12 到 18 個(gè)月內(nèi),低代碼/無代碼解決方案將會激增。由于技能供不應(yīng)求,以及大規(guī)模自動化程序的絕對復(fù)雜性和高故障率,公司將需要一種靈活、風(fēng)險(xiǎn)較小的方式來提高效率?!?/p>
與所有新技術(shù)一樣,早期也存在顧慮?;谠频钠脚_減少了對低代碼/無代碼的一些擔(dān)憂。對管理結(jié)果所必需的治理和護(hù)欄的更深入理解將會到來。沒有缺點(diǎn)的優(yōu)點(diǎn)會隨著時(shí)間的推移而增加。
這顯然是應(yīng)用程序代碼生成過程中的一個(gè)進(jìn)化步驟。試圖阻止進(jìn)化就像站在推土機(jī)前從不可避免的山上滾下來。





























