• [^] # Re: infos complémentaires

    Posté par (site web personnel) . En réponse au lien Go propose une base de données vulnérabilités (vuln) dans vos dépendances (modules). Évalué à 2. Dernière modification le 12 octobre 2022 à 09:09.

    Un autre exemple (tout frais de ce matin) avec une dépendance contenant une vulnérabilité mais qui n'est pas directement dans la chaîne d'appel du code du projet et comment la corriger :

    > govulncheck ./... 
    govulncheck is an experimental tool. Share feedback at https://go.dev/s/govulncheck-feedback.
    Scanning for dependencies with known vulnerabilities...
    No vulnerabilities found.
    === Informational ===
    The vulnerabilities below are in packages that you import, but your code
    doesn't appear to call any vulnerable functions. You may not need to take any
    action. See https://pkg.go.dev/golang.org/x/vuln/cmd/govulncheck
    for details.
    Vulnerability #1: GO-2022-1059
     An attacker may cause a denial of service by crafting an Accept-Language
     header which ParseAcceptLanguage will take significant time to parse.
     Found in: golang.org/x/text/language@v0.3.7
     Fixed in: golang.org/x/text/language@v0.3.8
     More info: https://pkg.go.dev/vuln/GO-2022-1059
    

    On peut identifier la dépendance coupable avec :

    > go mod why golang.org/x/text/language
    # golang.org/x/text/language
    mySuperProject
    golang.org/x/text/encoding/htmlindex
    golang.org/x/text/language
    

    On peut la corriger avec :

    > go get golang.org/x/text/language@v0.3.8
    go: downloading golang.org/x/text v0.3.8
    go: upgraded golang.org/x/text v0.3.7 => v0.3.8
    > go mod tidy