管理Facebook、Instagram、Google、YouTube、Discord等不同平台的帳號密碼非常麻煩,對軟體開發團隊也存在「密碼問題」,每開啟一個專案,就需要一組對應的加密與解密的專屬金鑰(key)作為編輯權限,通常軟體開發團隊會將這些金鑰統一儲存管理。
不過這存在一定的資安風險。當團隊成員內部進行金鑰傳送時,可能因人為疏失造成資料外洩,又或者更新程式碼版本時不幸遺失所使用的金鑰,甚至在發布程式碼到Github時,不小心上傳到含有金鑰的檔案,都有可能會造成重大的資安危機。
曾入選知名新創加速器Y Combinator的新創Infisical,以中心化的集中管理平台協助企業管理不同的金鑰,並以端到端加密(E2EE,End-to-end Encryption)資料保存的方式,降低資訊在傳遞的途中被外洩的可能。自2022年創立以來,每個月已經協助企業及政府保存超過1億筆機密資料,更在今年獲得Google旗下創投基金Gradient Ventures的200萬美元(約新台幣6,000萬元)種子輪基金。
資訊安全新創Infisical,獲Google旗下創投Gradient Ventures注資
Infisical創辦人Vlad Matsiiako、Maidul Islam及Tuan Dang在康乃爾大學主修電腦及數據科學,寫程式時加密與解密的不便正是他們創業的主因。
金鑰的應用就像每月收到的電子對帳單,在收到經銀行加密的檔案後,收件者必須要輸入身份證字號,才能解開檔案並開啟閱讀。即使步驟繁瑣,但為了保障個人資料安全,此加密、解密的過程是不可或缺的一環。
對軟體工程師而言,軟體開發金鑰依循著同樣的道理。使用不同軟體時,他們總會創造出兩把一組的金鑰,一把提供給軟體主要開發者自行保管及資料加密使用,另一把則提供給團隊成員,以便在接收到開發者已加密的資料時進行解密。
對每個專案皆會使用到不同金鑰的軟體工程師而言,為簡化整理複雜資訊及多把金鑰管理的步驟,會選擇將金鑰存入該專案的環境變數(.env檔),將不同軟體的金鑰儲存統一管理,並保存於自己的電腦中,以便後續在進行軟體改版或修正時,可快速找到對應使用的金鑰。
但當專案因程式碼變動而產生不同版本的檔案,存有多項金鑰的.env檔便容易因版本過多而搞混,出於方便有許多工程師便存著僥倖心態,將存有重要金鑰的檔案共同存放在單一檔案中,若後續在進行程式碼上傳時未有注意,便有可能因此而不小心上傳至公開網站中。
為解決這項問題,公司不僅要求他們尋找能與現行軟體相容,並兼具安全、方便使用特性的資料管理系統。同時也出於資安考量,要求他們在傳送重要資訊時,將機密資訊分段並透過如電子郵件、通訊軟體等不同管道傳送給對方,這樣的方式儘管有效,卻也造成作業上的麻煩。
企業總需花費許多時間及精力尋找適合的系統,創辦人之一的Vlad Matsiiako表示,因為清楚知道大型團隊進行資料保護的困難,在與產業同儕討論過後,他們便決定以資訊安全為核心進行創業,打造多功能的資料管理系統。
打破「使用者體驗」及「資安」只能擇一的困境,Infisical試圖在兩者間取得平衡
普遍在進行資料維護的過程中,企業總要在操作介面及資安維護間做出取捨。也就是說,如果選擇的是足夠安全的資料保護系統,必然要面對極為複雜的系統介面;另一方面如果選擇的是簡易上手的系統介面,系統背後則有機會藏有資料安全漏洞。
Infisical卻打破了這兩極化的現象,他們設計了Low-Code的使用體驗,只要輸入一句指令,便可以儲存包含API金鑰、資料庫存取權限(Database Access Tokens)等重要資訊,並提供金鑰權限控管功能,公司可明確地控制哪些帳號有權限讀取開發中的軟體,或者進行軟體改寫操作。
團隊也在系統中內建稽核機制,協助企業記錄每項軟體開發步驟的建立及修改狀況,並提供不同版本專案的金鑰管理,讓企業可以隨時回溯至之前的專案版本,以便在軟體測試時出現錯誤時找回原始資料。同時系統也提供程式碼檢查機制,當工程師將程式碼上傳至Github前,預先檢查程式碼中是否包含機密資訊,若偵測到含有機密文件便會阻止使用者上傳該段程式碼,以便防止機密資訊外洩。
開放大部分Infisical系統原始碼,促進資訊安全生態圈共好循環
不同於一般資料儲存系統提供固定的使用者介面,Infisical選擇公開大部分系統的原始碼,並將指令碼上傳至Github提供給企業參考。
Vlad Matsiiako表示,對於個人系統開發者及業餘軟體設計師,目前Infisical在Github上所提供的指令碼已足夠讓他們探索,有能力的工程師也可以依據企業特性進行些微修正。而為了公司營運,Infisical仍保有一部分核心的系統原始碼,提供給購買企業版軟體的公司,以便提供更高階的資料安全維護服務。
日前Infisical系統的導入沒有收費,且系統研發者可透過開放原始碼進行修正。若想取得核心的系統原始碼,則針對企業團隊規模分別以每月8美元(約新台幣250元)及18美元(約新台幣570元)的方式收費,而針對希望擁有客製化系統的企業,Infisical也提供客製化方案,不僅提供全日的即時協助管道,也開放軟體創立至今的所有歷史版本給企業運用。
參考資料:TechCrunch、SecurityWeek、Infisical Blog、Infisical
本文授權轉載自:創業小聚
責任編輯:錢玉紘