#!/bin/bash FILE=".trivyignore" TMP_FILE="$(mktemp)" USER_AGENT="TrivyIgnoreAnnotator" while IFS= read -r line; do trimmed="$(echo "$line" | xargs)" # usuń spacje z początku i końca if [[ "$trimmed" =~ ^CVE-[0-9]{4}-[0-9]+$ ]]; then echo "Pobieram opis dla $trimmed..." desc=$(curl -s -A "$USER_AGENT" "https://services.nvd.nist.gov/rest/json/cve/1.0/$trimmed" | \ jq -r '.result.CVE_Items[0].cve.description.description_data[0].value' | \ tr '\n' ' ' | sed 's/"/\\"/g') if [[ -z "$desc" || "$desc" == "null" ]]; then desc="Brak opisu lub nie udało się pobrać." fi echo "# $desc" >> "$TMP_FILE" echo "$line" >> "$TMP_FILE" else echo "$line" >> "$TMP_FILE" fi done < "$FILE" mv "$TMP_FILE" "$FILE" echo "✅ Plik $FILE został zaktualizowany z opisami podatności."