简介
find命令是linux自带的一款工具用来查找文件, 由于linux中多用户、用户组等特性, 因此文件也具有上述属性, 而linux中文件的权限的控制有一定的入门难度, 因此存在某一部分管理员或失误、或客观需要配置了易受攻击的文件权限, 可用来进行提权操作.
本文记录find命令在hacking过程中的使用, 包括各种场景化.
文章目录
- 根据权限find文件
- 参考链接
根据权限find文件
1 | $ find -perm [-/]mode |
mode解释: mode代表权限, 用八进制数字(777, 000等)、权限符号(u=x, a=r+x)指定.
mode特殊值: 4000(SUID)、6000(SGID); SUID是可执行文件的一种特殊表示, 设置SUID后非文件所有者的账户运行文件时会以文件所有者的权限运行文件, 常用来提权; SGID与SUID类似, 非文件所属组内用户运行文件时会集成文件所属组的权限执行文件, 可用来提权.
mode参数解释:
1.无参数: 不带参数时查找指定权限的文件
2.’-‘参数: 大于等于指定权限的文件都可以被找出来
3.’/‘参数: 所有者、所属组或其他人 任何一个有此权限的文件都可以被找出来
根据八进制数据查找文件
demo 1 查找具有SUID权限的文件1
$ find / -type f -perm /4000 2>/dev/null
demo 2 查找具有SGID权限的文件1
$ find / -type f -perm /6000 2>/dev/null
demo 3 查找当前用户具有写和执行权限的其他用户的文件1
$ find / -user root -type f -perm -003 2>/dev/null
根据权限符号查找文件
权限符号解释: u
(文件所有者)、g
(文件所属组)、o
(其他人)、a
(前三种类型)、r
(读权限)、w
(写权限)、x
(执行权限)、s
(SID权限)
demo 1 查找用户所有者具有写和执行权限的文件1
$ find / -type f -perm -u w+x 2>/dev/null
demo 2 查找具有SID权限的文件1
2$ find / -type f -perm -u s 2>/dev/null
$ find / -type f -perm -g s 2>/dev/null
demo 3 查找root
用户的文件且任意账号拥有写和执行权限的文件1
$ find / -user root -type f -perm -o w+x 2>/dev/null