本文章內容係以參考技術文件為基礎,經由人工智慧(AI)技術進行改寫及重整,旨在提供讀者更清晰易懂之內容呈現。如有任何技術細節上的疑義或需進一步確認,建議讀者參考原始技術文件或與相關技術人員聯繫。
你有沒有想過,每天寫的程式碼,就像蓋房子一樣,地基穩不穩固,結構安不安全?如果程式碼裡藏著漏洞,就像房子裡有白蟻,時間久了可是會出大問題的!
別擔心,安謀智科技術團隊一直走在最前線,為大家的安全把關。今天就來跟大家分享我們最近使用的一個超酷工具 – Trivy,來幫我們的程式碼做一次全面的「健康檢查」。
什麼是 Trivy?程式碼的健康檢查專家! #
Trivy 就像一位專業的「程式碼醫生」,它能快速掃描你的程式碼,找出潛在的安全漏洞 (CVE) 和機密資訊外洩的風險。想像一下,它就像一個超級偵探,能深入程式碼的每一個角落,揪出那些隱藏的壞傢伙!
為什麼這很重要?
- 安全第一: 及早發現並修復漏洞,避免被駭客攻擊,保護你的系統和資料。
- 合規性: 確保你的程式碼符合相關的安全標準和法規。
- 省時省力: Trivy 掃描速度快,操作簡單,能大大節省開發人員的時間和精力。
實驗開始!Trivy 大顯身手 #
這次我們選擇了 U-Boot 的程式碼倉庫作為目標,模擬真實的開發環境。U-Boot 是一個廣泛使用的開源啟動載入器,如果它存在安全漏洞,影響範圍可是非常大的。
實驗步驟:
-
啟動 Trivy: 我們在終端機輸入以下指令,讓 Trivy 開始掃描程式碼倉庫。
trivy repo ./這個指令就像是對 Trivy 說:「嘿,幫我檢查一下這個資料夾裡面的程式碼!」
-
Trivy 開始掃描: 接下來,Trivy 就會開始認真工作,它會檢查程式碼中的每一個檔案,尋找已知的安全漏洞和機密資訊。
INFO [vuln] Vulnerability scanning is enabled:漏洞掃描已啟用。INFO [secret] Secret scanning is enabled:機密掃描已啟用。INFO [secret] If your scanning is slow, please try '--scanners vuln' to disable secret scanning:如果掃描速度太慢,可以嘗試禁用機密掃描。WARN [pip] Unable to find python site-packages directory. License detection is skipped.:無法找到 Python 的 site-packages 目錄,跳過許可證檢測。
-
查看掃描結果: 掃描完成後,Trivy 會生成一份詳細的報告,列出所有發現的漏洞和機密資訊。
實驗結果:揪出潛在風險 #
Trivy 掃描後,我們發現了一些潛在的安全風險,主要集中在 doc/sphinx/requirements.txt 和 test/py/requirements.txt 這兩個檔案中,這些檔案列出了專案所依賴的 Python 套件。
重點發現:
-
多個 Python 套件存在漏洞: 例如 Jinja2, Pygments, certifi, idna, requests, urllib3, pycryptodomex, zipp 等套件,都存在不同程度的安全漏洞。
-
發現私鑰: 在
board/broadcom/bcmns3/fit/keys/dev.key檔案中,Trivy 偵測到一個高風險的非對稱私鑰 (AsymmetricPrivateKey)。HIGH: AsymmetricPrivateKey (private-key) ══════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════════ Asymmetric Private Key ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── board/broadcom/bcmns3/fit/keys/dev.key:1 ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── 1 [ -----BEGIN PRIVATE KEY-----...-----END PRIVATE KEY 2 ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────這是一個非常嚴重的問題,因為私鑰洩漏可能導致嚴重的安全風險。
別慌!我們有解決方案!
針對這些發現,我們立即採取行動:
- 升級套件版本: 將存在漏洞的 Python 套件升級到安全版本,修復已知的漏洞。
- 移除或保護私鑰: 立即移除或採取適當的安全措施保護私鑰,避免洩漏。
安謀智科:持續創新,安全至上 #
這次使用 Trivy 掃描程式碼的經驗,再次證明了安全在軟體開發過程中至關重要。安謀智科一直以來都非常重視產品的安全性,我們不斷探索和採用最新的安全技術,確保我們的產品和服務能夠為客戶提供最可靠的保障。
我們的承諾:
- 持續研發: 我們將持續投入資源,研發更先進的安全技術,提升產品的安全性。
- 積極創新: 我們將積極探索新的安全解決方案,應對不斷變化的安全威脅。
- 客戶至上: 我們將以客戶的需求為中心,提供最安全、最可靠的產品和服務。
安謀智科,您值得信賴的技術夥伴!讓我們一起攜手,打造更安全、更可靠的未來!