快轉到主要內容

掃描程式碼漏洞,我們用 Trivy 來真的!

· loading
作者
Advantech ESS
目錄

本文章內容係以參考技術文件為基礎,經由人工智慧(AI)技術進行改寫及重整,旨在提供讀者更清晰易懂之內容呈現。如有任何技術細節上的疑義或需進一步確認,建議讀者參考原始技術文件或與相關技術人員聯繫。

你有沒有想過,每天寫的程式碼,就像蓋房子一樣,地基穩不穩固,結構安不安全?如果程式碼裡藏著漏洞,就像房子裡有白蟻,時間久了可是會出大問題的!

別擔心,安謀智科技術團隊一直走在最前線,為大家的安全把關。今天就來跟大家分享我們最近使用的一個超酷工具 – Trivy,來幫我們的程式碼做一次全面的「健康檢查」。

什麼是 Trivy?程式碼的健康檢查專家!
#

Trivy 就像一位專業的「程式碼醫生」,它能快速掃描你的程式碼,找出潛在的安全漏洞 (CVE) 和機密資訊外洩的風險。想像一下,它就像一個超級偵探,能深入程式碼的每一個角落,揪出那些隱藏的壞傢伙!

為什麼這很重要?

  • 安全第一: 及早發現並修復漏洞,避免被駭客攻擊,保護你的系統和資料。
  • 合規性: 確保你的程式碼符合相關的安全標準和法規。
  • 省時省力: Trivy 掃描速度快,操作簡單,能大大節省開發人員的時間和精力。

實驗開始!Trivy 大顯身手
#

這次我們選擇了 U-Boot 的程式碼倉庫作為目標,模擬真實的開發環境。U-Boot 是一個廣泛使用的開源啟動載入器,如果它存在安全漏洞,影響範圍可是非常大的。

實驗步驟:

  1. 啟動 Trivy: 我們在終端機輸入以下指令,讓 Trivy 開始掃描程式碼倉庫。

    trivy repo ./
    

    這個指令就像是對 Trivy 說:「嘿,幫我檢查一下這個資料夾裡面的程式碼!」

  2. 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 目錄,跳過許可證檢測。
  3. 查看掃描結果: 掃描完成後,Trivy 會生成一份詳細的報告,列出所有發現的漏洞和機密資訊。

實驗結果:揪出潛在風險
#

Trivy 掃描後,我們發現了一些潛在的安全風險,主要集中在 doc/sphinx/requirements.txttest/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 掃描程式碼的經驗,再次證明了安全在軟體開發過程中至關重要。安謀智科一直以來都非常重視產品的安全性,我們不斷探索和採用最新的安全技術,確保我們的產品和服務能夠為客戶提供最可靠的保障。

我們的承諾:

  • 持續研發: 我們將持續投入資源,研發更先進的安全技術,提升產品的安全性。
  • 積極創新: 我們將積極探索新的安全解決方案,應對不斷變化的安全威脅。
  • 客戶至上: 我們將以客戶的需求為中心,提供最安全、最可靠的產品和服務。

安謀智科,您值得信賴的技術夥伴!讓我們一起攜手,打造更安全、更可靠的未來!

相關文章

研華小教室開課啦!讓 DeviceOn 裝置自動報到,部署再多也不怕!
· loading
告別網路限制!Yocto 本地程式碼編譯大作戰,打造你的專屬嵌入式系統!
· loading
研華AI大解密:用OpenWebUI打造你專屬的RAG問答系統,AIR-310實戰登場!
· loading