gosec で警告される os.Open() 対応
gosec で警告される os.Open() に対応した話です。
gosec で以下のようなコードがあると
1 | os.Open(fname) |
以下のように警告されます。
1 | G304 (CWE-22): Potential file inclusion via variable (Confidence: HIGH, Severity: MEDIUM) |
変数でファイルパスを指定するのは、意図しないファイルパスを指定される危険性があります。
対応
filepath.Clean() を使用し、よろしくないパスを綺麗に整えるようにします。
1 | os.Open(filepath.Clean(fname)) |
以上
ご参考になれば幸いです。
gosec で警告される os.Open() 対応
https://kenzo0107.github.io/2019/12/08/2019-12-09-gosec-os-open/