Paket Bağımlılıkları Güvenlik Denetimi: Pub ve npm Zafiyetlerini Tarama
Projenize eklediğiniz her paket, potansiyel bir güvenlik riski taşıyabilir. Kütüphaneler zaman içinde zafiyetler ortaya çıkabilir ve bu açıklar uygulamanızı tehlikeye atabilir. İyi haber şu ki, npm ve pub gibi paket yöneticileri bu kontrolleri otomatik hale getirmek için araçlar sunuyor.
Flutter projesi açtığınızda, bağımlılıkları kontrol etmek için pub audit komutunu kullanırsınız.
1cd my_flutter_app2pub auditBu komut çalıştığında şöyle bir çıktı görebilirsiniz:
1Scanning pubspec.lock for known vulnerabilities...23Found 1 vulnerability:4- Package: http5Vulnerability ID: GHSA-4rgh-jx4p-cwkf6Severity: HIGH7Description: Improper verification of SSL certificate8Affected versions: <0.13.09Patched version: >=0.13.0Eğer zafiyetler bulunursa, pub upgrade ile paketleri güncellemeyi deneyin:
1pub upgrade2pub auditNode.js tarafında ise npm audit aynı işi yapar.
1cd my_node_app2npm auditÇıktı benzer şekilde zafiyetleri listeler:
1┌───────────────────────────────────────────────────────────────┐2│ npm audit security report │3├───────────────────────────────────────────────────────────────┤4│ High │5│ Regular Expression Denial of Service in lodash │6│ Package: lodash │7│ Patched in: >=4.17.21 │8│ Dependency of: my-app │9│ Path: my-app > lodash │10└───────────────────────────────────────────────────────────────┘Otomatik düzeltme için npm audit fix komutunu çalıştırın:
1npm audit fix2npm auditCI/CD sürecünüze denetim adımı ekleyin. GitHub Actions örneği:
1name: Security Audit2on: [push, pull_request]3jobs:4audit:5runs-on: ubuntu-latest6steps:7- uses: actions/checkout@v38- uses: actions/setup-node@v39- run: npm audit --audit-level=moderateBu yapılandırma, orta seviye ve üzeri zafiyetler bulunursa build'i başarısız kılar.
Düzenli tarama (haftada bir gibi) yapın, çünkü yeni zafiyetler her gün ortaya çıkıyor. Paket yöneticileri veritabanlarını sürekli günceller, bu nedenle eski bir denetim raporu güvenilir olmayabilir.
0 yorum