低代碼有安全風(fēng)險(xiǎn)該如何避免?(低代碼有安全風(fēng)險(xiǎn)該如何避免呢)
與傳統(tǒng)開(kāi)發(fā)模式相比,低代碼平臺(tái)在應(yīng)用開(kāi)發(fā)效率、易用性和釋放生產(chǎn)力方面為專業(yè)和公民開(kāi)發(fā)人員帶來(lái)巨大優(yōu)勢(shì),一改傳統(tǒng)開(kāi)發(fā)冗長(zhǎng)復(fù)雜的固化流程,幫助企業(yè)快速建立“敏捷能力”。然而,與任何新興技術(shù)一樣,企業(yè)和IT團(tuán)隊(duì)需要意識(shí)到伴隨它們的潛在安全風(fēng)險(xiǎn)。
01.
低可見(jiàn)性(Low visibility)
一般來(lái)說(shuō),大型公司中的IT團(tuán)隊(duì)擁有嚴(yán)格的安全實(shí)踐準(zhǔn)則、風(fēng)險(xiǎn)預(yù)防措施和標(biāo)準(zhǔn)化工作流程,以保證應(yīng)用程序的安全性。但是許多利用低代碼平臺(tái)開(kāi)發(fā)的應(yīng)用程序,可能沒(méi)辦法遵循這些準(zhǔn)則,因?yàn)榈痛a廠商提供的封裝代碼模塊是無(wú)法被開(kāi)發(fā)者檢查測(cè)試的,開(kāi)發(fā)過(guò)程類似于“黑箱狀態(tài)”,只能通過(guò)低代碼平臺(tái)內(nèi)置的組件和流程來(lái)大致檢查其內(nèi)在邏輯是否相容。尤其是對(duì)于公民開(kāi)發(fā)者來(lái)說(shuō),缺少開(kāi)發(fā)技術(shù)的他們就更無(wú)法保證應(yīng)用程序的安全性了。
由于核心代碼在低代碼廠商手里,一旦應(yīng)用出現(xiàn)bug,企業(yè)將很難及時(shí)進(jìn)行排查和解決。當(dāng)?shù)痛a無(wú)法保證安全控制時(shí),企業(yè)又不得不采購(gòu)額外的安全管理工具,造成低代碼應(yīng)用運(yùn)維成本高昂,甚至可能高于傳統(tǒng)開(kāi)發(fā)。
02.
平臺(tái)組件安全漏洞
沒(méi)有一款產(chǎn)品是完美的,如果低代碼平臺(tái)的組件開(kāi)發(fā)得不夠完善,這將會(huì)產(chǎn)生潛在的安全問(wèn)題。有漏洞的代碼片段不可避免地會(huì)被復(fù)制粘貼到其他地方。尤其是對(duì)于沒(méi)有開(kāi)發(fā)經(jīng)驗(yàn)的公民開(kāi)發(fā)者來(lái)說(shuō),他們的首要目標(biāo)是保證應(yīng)用程序的正常運(yùn)行。在此過(guò)程中,任何bug和安全問(wèn)題都會(huì)被低代碼平臺(tái)開(kāi)發(fā)出的應(yīng)用所繼承。
目前市場(chǎng)上多數(shù)低代碼平臺(tái)組件對(duì)客戶都是透明公開(kāi)的。但也有一些低代碼平臺(tái)不提供其整體平臺(tái)的開(kāi)源訪問(wèn)權(quán)限。因此,客戶需要自己去購(gòu)買第三方審安全審查服務(wù),浪費(fèi)不必要的成本和時(shí)間。現(xiàn)在有不少低代碼供應(yīng)商通過(guò)提供可訪問(wèn)和透明的審計(jì)方法來(lái)改善風(fēng)險(xiǎn)管理服務(wù),如此一來(lái),企業(yè)將能夠避免在第三方安全工具上的昂貴支出。
03.
業(yè)務(wù)邏輯風(fēng)險(xiǎn)
當(dāng)人們從商業(yè)的角度看待軟件開(kāi)發(fā),而忽略了信息技術(shù)的一面時(shí),問(wèn)題就出現(xiàn)了。由于利用低代碼平臺(tái)開(kāi)發(fā)程序是如此的簡(jiǎn)單,在這種情況下,開(kāi)發(fā)者可能會(huì)不小心忽視傳統(tǒng)開(kāi)發(fā)流程中的安全問(wèn)題,而公民開(kāi)發(fā)者往往安全意識(shí)淡薄,最終難免會(huì)犯錯(cuò)誤。人為錯(cuò)誤引發(fā)的業(yè)務(wù)邏輯問(wèn)題是無(wú)法被安全工具檢測(cè)到的,如果忘記了什么,敏感數(shù)據(jù)就有可能暴露給錯(cuò)誤的人,并通過(guò)API連接進(jìn)一步擴(kuò)大應(yīng)用程序的威脅面。
隨著IT團(tuán)隊(duì)的不斷擴(kuò)展,杜絕人為的業(yè)務(wù)邏輯風(fēng)險(xiǎn)這種低級(jí)錯(cuò)誤必須成為企業(yè)采用低代碼平臺(tái)時(shí)的首要任務(wù)。在傳統(tǒng)的軟件開(kāi)發(fā)中,企業(yè)一般已經(jīng)有了安全流程來(lái)保證開(kāi)發(fā)過(guò)程的標(biāo)準(zhǔn)化。低代碼平臺(tái)應(yīng)該考慮將企業(yè)的安全標(biāo)準(zhǔn)擴(kuò)展到低代碼開(kāi)發(fā)環(huán)境中以確保企業(yè)的風(fēng)險(xiǎn)管理需求得到滿足。
那么企業(yè)應(yīng)該如何避免低代碼安全風(fēng)險(xiǎn)呢?本文將從技術(shù)方面和流程控制方面展開(kāi)聊聊。
首先,技術(shù)方面
1.借助第三方測(cè)試工具
有一些測(cè)試工具可用于檢測(cè)應(yīng)用程序平臺(tái)中的安全漏洞。由于手動(dòng)測(cè)試和調(diào)試是不總是可行的,自動(dòng)化工具會(huì)大幅提升效率。
A. OWASP ZAP: 由OWASP(Open Web Application Security Project)開(kāi)發(fā),ZAP(Zed Attack Proxy)是一個(gè)跨平臺(tái)、開(kāi)源的安全測(cè)試工具。它通過(guò)測(cè)試攔截代理服務(wù)器、傳統(tǒng)和AJAXWeb爬蟲(chóng)、自動(dòng)掃描器、被動(dòng)掃描器、強(qiáng)制瀏覽、模糊測(cè)試、WebSocket支持、腳本語(yǔ)言和plug-n-hack支持等,來(lái)用于在開(kāi)發(fā)和測(cè)試階段發(fā)現(xiàn)web應(yīng)用程序中的安全漏洞。豐富經(jīng)驗(yàn)的專業(yè)人士和初學(xué)者均可靈活使用。
B. W3af: Python開(kāi)發(fā)最流行的安全測(cè)試框架之一是W3af。它能夠幫助測(cè)試人員在web應(yīng)用程序中發(fā)現(xiàn)200多種類型的安全問(wèn)題,包括盲SQL注入、緩沖區(qū)溢出、跨站點(diǎn)腳本、CSRF和不安全的DAV配置。
C. SonarQube:它是一個(gè)開(kāi)源測(cè)試工具,能夠進(jìn)行代碼分析和檢查安全漏洞。SonarQube用Java編寫,可以分辨20多種編程語(yǔ)言的漏洞,包括跨站點(diǎn)腳本、拒絕服務(wù)(DoS)攻擊、HTTP響應(yīng)分裂、內(nèi)存損壞和SQL注入等。此外,它很容易與持續(xù)集成工具集成,例如Jenkins和TeamCity。
2.檢查云基礎(chǔ)設(shè)施安全性和開(kāi)源漏洞
云服務(wù)和開(kāi)源平臺(tái)這些基礎(chǔ)設(shè)施漏洞同樣不可忽視。并非所有低代碼平臺(tái)都是商業(yè)化的,還有許多開(kāi)源平臺(tái),開(kāi)源低代碼平臺(tái)可能依賴于許多插件和第三方集成,即使我們的源代碼不構(gòu)成任何安全威脅,插件和集成也可能帶來(lái)大量風(fēng)險(xiǎn)。保護(hù)應(yīng)用程序免受此類攻擊是非常必要的,例如 WhiteSource Bolt可作為開(kāi)源平臺(tái)的測(cè)試工具。
大多數(shù)低代碼平臺(tái)都提供公有云服務(wù)器部署,但是與私有云相比,公有云更需要注意其安全風(fēng)險(xiǎn),大多數(shù)公有云都包含驗(yàn)證基礎(chǔ)架構(gòu)安全性的工具??梢允褂肅I/CD工具來(lái)完成,這些工具提供了針對(duì)惡意軟件的持續(xù)保護(hù)。Jenkins是開(kāi)發(fā)人員中流行的開(kāi)源CI/CD選擇,可幫助開(kāi)發(fā)人員快速查找和解決代碼庫(kù)中的問(wèn)題并自動(dòng)測(cè)試其構(gòu)建。
其次,流程控制方面
首先企業(yè)應(yīng)該謹(jǐn)慎選擇低代碼供應(yīng)商和合作伙伴,選擇安全流程清晰透明的平臺(tái)。企業(yè)應(yīng)該對(duì)選擇的任何低代碼平臺(tái)進(jìn)行評(píng)估審計(jì),包括漏洞掃描、進(jìn)行滲透測(cè)試等。深入了解低代碼平臺(tái)的安全實(shí)踐方法,了解他們使用的是什么技術(shù),SAST、DAST還是IAST?
另外,無(wú)論大中小企業(yè),都應(yīng)該注意對(duì)公民開(kāi)發(fā)者的培訓(xùn),確保他們謹(jǐn)記安全開(kāi)發(fā)流程,提高風(fēng)險(xiǎn)意識(shí)。在部署低代碼應(yīng)用程序之前,開(kāi)發(fā)者應(yīng)該咨詢他們的信息技術(shù)部門和網(wǎng)絡(luò)安全團(tuán)隊(duì),開(kāi)發(fā)人員需要遵循包括端口安全在內(nèi)的最佳實(shí)踐,注意應(yīng)用程序處理的數(shù)據(jù)類型,并設(shè)置防火墻來(lái)防止SQL注入和其他攻擊。
一個(gè)容易被忽略的可能暴露企業(yè)敏感數(shù)據(jù)的漏洞是API接口。低代碼平臺(tái)通常會(huì)通過(guò)大量的API來(lái)傳遞數(shù)據(jù),API安全性不能被忽視。企業(yè)可通過(guò)身份驗(yàn)證和令牌,或者使用API網(wǎng)關(guān)來(lái)保護(hù)API和REST調(diào)用。
對(duì)于大企業(yè)來(lái)說(shuō),適當(dāng)提高預(yù)算來(lái)選擇安全性更高的低代碼平臺(tái)是一勞永逸的事情。例如,ServiceNow的Security Operations產(chǎn)品通過(guò)在其平臺(tái)中內(nèi)置的安全控件和AI能力,能夠?qū)崟r(shí)監(jiān)控各個(gè)流程節(jié)點(diǎn)的動(dòng)態(tài)和技術(shù)指標(biāo),實(shí)現(xiàn)風(fēng)險(xiǎn)提前預(yù)警、快速響應(yīng)。對(duì)小企業(yè)來(lái)說(shuō),更需要的是加強(qiáng)組織的安全意識(shí)和規(guī)范操作流程。
結(jié)語(yǔ)
低代碼平臺(tái)對(duì)開(kāi)發(fā)者和尋求數(shù)字化轉(zhuǎn)型的企業(yè)來(lái)說(shuō)是一個(gè)福音,但是有各種各樣的陷阱需要警惕,其中最重要的是安全風(fēng)險(xiǎn)。大部分低代碼平臺(tái)的安全問(wèn)題都可以通過(guò)正確合規(guī)的流程來(lái)有效規(guī)避。開(kāi)發(fā)效率的提高,沒(méi)有嚴(yán)格的技術(shù)要求,易于部署,這些低代碼獨(dú)有的優(yōu)勢(shì)值得企業(yè)付出一些前期審查的成本。
來(lái)源:低代碼LowCode,微信號(hào):do1didaima