Incorrect permission assignment for critical resource
Description
The application sets file permissions to overly permissive values. Consider using restrictive permissions such as 0400 for read-only access, 0200 for write-only access, or 0600 for read/write access to the file.
Examples
Insecure Code
go
os.Chmod("file.txt", 0666)Secure Code
go
os.OpenFile("file.txt", os.O_CREATE, 0600)Remediation
Use the os.OpenFile function with the correct permission, for example: os.OpenFile("file.txt", os.O_CREATE, 0600)
Rule Details
| Field | Value |
|---|---|
| ID | CODE-0780 |
| Category | AccessControl |
| Severity | MEDIUM |
| CWE | CWE-732 |
| Confidence | HIGH |
| Impact | MEDIUM |
| Likelihood | MEDIUM |
| Exploitability | EASY |
| Tags | file permissions, access control |
| OWASP | A5:2017-Broken Access Control, A01:2021-Broken Access Control |