一、Linux 目录结构(渗透测试视角)
🔥 渗透测试重点关注目录
| | |
|---|
/etc | | |
/tmp | | |
/var/log | | |
/proc | | |
/home | | |
/root | | |
/var/www/html | | |
⚠️ 常见坑点
/etc/passwd 和 /etc/shadow 要一起记,别只记一个
/tmp 全局可写但可能不可执行(noexec 挂载)
/proc/self/environ 可能泄露环境变量
不同发行版的 Web 根目录路径不同
🔥 易混淆点:/etc/passwd vs /etc/shadow
📄 /etc/passwd
权限:644(所有人可读)
内容:用户名、UID、GID、家目录、Shell
⚠️ 密码字段现在是 x,不存哈希
🔒 /etc/shadow
权限:600(仅 root 可读)
内容:密码哈希、过期信息
哈希格式:$1$=MD5,$6$=SHA-512
💡 回答模板:/etc/passwd 存用户基本信息,所有人都能看,密码字段是 x;真正的密码哈希存在 /etc/shadow,只有 root 能读。这样做是为了防止普通用户拿到哈希暴力破解。
二、rwx 权限核心概念
📊 权限数字表示
🎯 必考题:755 和 644 的含义
755 = rwx r-x r-x
属主:rwx(7)
属组:r-x(5)
其他人:r-x(5)
用途:目录、可执行文件
644 = rw- r-- r--
属主:rw-(6)
属组:r--(4)
其他人:r--(4)
用途:普通文件
⚠️ 目录必须有 x 权限才能 cd 进入,只有 r 权限无法进入目录!
📁 文件和目录的 rwx 区别
对文件的作用:
对目录的作用:
⚠️ 超级大坑:目录有 w 权限,就可以删除里面的文件,即使文件本身是 000 权限!
三、特殊权限(提权重点)
1️⃣ SUID(Set User ID)
表现:-rws--x--x
含义:执行时以文件所有者身份运行
风险:🔥 如果所有者是 root,可提权
查找命令:
bash
find / -perm-4000-type f 2>/dev/null
⚠️ 很多 SUID 文件是系统正常的(如 passwd、sudo),不是每个都能提权,需要逐个检查。
2️⃣ SGID
表现:-rwxr-sr-x
文件上的作用:以所属组身份执行
目录上的作用:新建文件继承目录组
3️⃣ 粘滞位(Sticky Bit)
表现:/tmp 的 drwxrwxrwt
作用:只有文件所有者才能删除
典型目录:/tmp、/var/tmp
⚠️ 面试可能问“/tmp 为什么是 1777 权限?”✅ 答:保证所有用户可读写,但不能删别人的文件。
四、Linux 基础命令(高频使用)
🖥️ 系统信息
bash
whoami# 当前用户名(不要和 who 搞混)id# UID/GID(⚠️ id=0 才是 root)uname-a# 内核版本(找提权漏洞用)hostname# 主机名cat /etc/os-release # 发行版信息
👤 用户信息
bash
cat /etc/passwd # 所有用户(记得去掉 /sbin/nologin 用户)cat /etc/shadow # 密码哈希(普通用户权限不足)sudo-l# 🔥 当前用户 sudo 权限(提权第一步)history# 命令历史(⚠️ 可能泄露密码)
🌐 网络信息
bash
ip a / ifconfig# IP 地址(新版用 ip,旧版用 ifconfig)netstat-anp# 端口连接(⚠️ -p 需要 root 才显示进程名)ss -tuln# 监听端口(新版替代 netstat -tuln)route -n# 路由表(发现内网网段)
⚙️ 进程信息
bash
ps aux # 所有进程(ps -ef 也是常见写法)ps aux |grep root # root 进程(找高权限进程)top / htop# 动态进程(htop 需要安装)
📂 文件查找
bash
ls-la# 详细列表(第一列 10 个字符必须能解读)find / -name"*.conf"2>/dev/null # 按名查找find / -perm-4000-type f 2>/dev/null # 🔥 找 SUIDfind / -writable-type d 2>/dev/null |grep-v /proc # 全局可写目录
五、高频问题与回答模板
Q1:如何查看 Linux 系统版本和内核版本?
bash
cat /etc/os-release # 发行版uname-a# 内核
Q2:如何查找所有 SUID 文件?为什么关注 SUID?
bash
find / -perm-4000-type f 2>/dev/null
SUID 文件执行时以所有者身份运行,如果所有者是 root,可能被用来提权。
Q3:普通用户能读 /etc/shadow 吗?为什么?
不能。/etc/shadow 权限是 600(rw-------),只有 root 能读。这是为了防止普通用户拿到哈希暴力破解。
Q4:/tmp 目录有什么特殊之处?
Q5:chmod 4755 file 中的 4 代表什么?
代表设置 SUID 权限。数字权限是 4 位:4755 = SUID + rwsr-xr-x。
Q6:拿到一个 Linux shell 后,第一步做什么?
bash
whoami&&id&&uname-a&&hostname# 基本信息sudo-l# 检查 sudo 权限find / -perm-4000-type f 2>/dev/null # 找 SUID
六、常见坑点总结
| |
|---|
| |
| |
/etc/passwd | |
netstat -p | |
/tmp | |
find | |
七、速查表(面试前快速记忆)
必背命令(10 条)
bash
whoami# 我是谁id# UID/GIDuname-a# 内核cat /etc/passwd # 用户列表sudo-l# sudo 权限find / -perm-4000-type f # SUIDnetstat-anp# 端口ps aux # 进程ls-la# 详细列表history# 命令历史
权限速算
bash
r = 4w = 2x = 1属主 属组 其他人rwx r-x r-- 7 5 4 → 754
特殊权限数字
bash
SUID = 4000SGID = 2000粘滞位 = 1000示例:chmod 4755 file = SUID + rwsr-xr-xchmod 1777 /tmp = 粘滞位 + rwxrwxrwt
八、记忆口诀
目录结构要记牢,etc passwd shadow 分得清rwx 权限用数字,4 2 1 加起来算目录没有 x 进不去,目录有 w 就能删SUID 找 4000,提权第一步就是它/tmp 粘滞 1777,只能删自己的文件
✅ 今日复盘
学到的核心概念:
Linux 目录结构及渗透价值
rwx 权限数字表示与区别
SUID/SGID/粘滞位的作用与风险
系统/用户/网络/进程/查找命令
面试高频问题回答模板
明天计划:
Linux 提权实战思路
常见提权漏洞(脏牛、sudo 提权等)
权限维持技巧
📌 这是「安全底稿」的第 5 篇记录一步一步,从零到一。

扫码关注 · 一起从零学渗透每天一篇学习笔记,从入门到实战。
如果这篇对你有帮助,欢迎分享给同样在学安全的朋友。
评论区聊聊:你第一次接触 Linux 权限时踩过什么坑?