securityfilesystem
Filesystem Security security skill
安装与使用
请根据来源仓库和你的 AI 工具说明安装此技能。先阅读技能文件和依赖要求,再添加到工作流。
查看来源 ↗使用指南技能说明
Filesystem Security
File operations have race conditions, symlink attacks, and path traversal risks.
ikigai Application
Path traversal:
- Reject paths containing
..before canonicalization - Use
realpath()and verify result is under allowed directory - Never concatenate user input directly into paths
TOCTOU (Time-of-Check to Time-of-Use):
// BAD: Race between check and use
if (access(path, R_OK) == 0) { fd = open(path, O_RDONLY); }
// GOOD: Open first, then check
fd = open(path, O_RDONLY);
if (fd >= 0) { /* use fd */ }
Symlink attacks:
- Use
O_NOFOLLOWwhen opening files in shared directories -
lstat()to check for symlinks before operations - Create temp files with
mkstemp(), nevermktemp()
Permissions:
- Config files:
0600(owner read/write only) - Directories:
0700 - Check permissions before reading sensitive files
- Set umask appropriately:
umask(077)
Review red flags: access() before open(), path concatenation, missing O_NOFOLLOW, world-readable configs.
使用示例
查看来源仓库中的使用示例与配置说明。
查看来源 ↗来源历史
- 收录时间
- 2026-01-20
- 索引更新时间
- 2026-01-26
- Branch
- main
收录与同步日期属于本站记录。源码修改历史请查看来源仓库。
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!