Expect directory permissions to be 0750 or less
557
558 for path, data := range paths {
559 path = filepath.Join(dir, path)
560 require.NoError(t, os.MkdirAll(filepath.Dir(path), 0755)) 561 //#nosec G306
562 require.NoError(t, os.WriteFile(path, []byte(data), 0755))
563 }
Description
Excessive permissions granted when creating a directory. This warning is
triggered whenever permission greater than 0750
is given.
In general, all security rules follow the principle of least privilege, except when the created directory needs to be accessed by anyone other than the user creating it.
Bad practice
package main
import (
"fmt"
"os"
)
func main() {
err := os.Mkdir("/tmp/mydir", 0777)
if err != nil {
fmt.Println("Error when creating a directory!")
return
}
}
Recommended
package main
import (
"fmt"
"os"
)
func main() {
err := os.Mkdir("/tmp/mydir", 0600)
if err != nil {
fmt.Println("Error when creating a directory!")
return
}
}