linux 查找 SUID
时间: 2023-09-03 13:15:28 浏览: 131
您可以使用以下命令来查找 SUID 标志的文件:
```
find / -perm -4000 -type f 2>/dev/null
```
这将在根目录下查找所有带有 SUID 标志的文件,并将结果输出到终端。其中 `-perm -4000` 表示查找权限为 4000 的文件,即 SUID 标志被设置的文件;`-type f` 表示只查找普通文件,不包括目录和符号链接;`2>/dev/null` 表示将错误输出重定向到空设备,以避免显示不必要的错误信息。
相关问题
在linux中查找suid权限文件并放入同一个文件夹
在Linux中,SUID(Set User ID)是一种文件权限模式,它允许程序以创建它的用户的身份运行,而不是当前登录用户的权限。要查找有SUID权限的文件,并将它们放入同一个文件夹,可以按照以下步骤操作:
1. **打开终端**:
打开终端(Terminal),通常可以在应用程序菜单搜索栏找到。
2. **切换到目标目录**:
使用 `cd` 命令导航到您想要存放这些SUID文件的文件夹,例如:
```
cd /path/to/your/directory
```
3. **查找SUID文件**:
可以使用 `find` 命令配合 `-perm` 参数来查找所有有SUID权限的文件:
```
find / -type f -perm /4000
```
这里 `/` 表示从根目录开始搜索,`-type f` 指定只查找文件,`-perm /4000` 表示查找权限位包含SUID位的文件(4000是一个八进制形式的权限值,对应于SUID、SGID和 Sticky bits)。
4. **移动SUID文件**:
如果找到了SUID文件,可以使用 `cp` 或 `mv` 命令将它们复制或移动到目标文件夹。例如,如果你想复制文件,可以这样做:
```
cp /path/to/source_file_with_suid ./
```
或者移动(替换源位置的文件):
```
mv /path/to/source_file_with_suid .
```
将 `.` 替换为您指定的目标文件夹路径。
5. **确认结果**:
确认文件是否已成功放置在新目录内,可以再次使用 `ls -l` 或 `find` 查看该目录下的文件列表。
在linux中查找suid权限文件且文件大于1k小于50k并放入同一个文件夹
在Linux中,你可以使用`find`命令结合`grep`和`test`命令来查找具有SUID权限(Set User ID,允许程序以文件所有者的权限运行)并且大小在1KB到50KB之间的文件。假设你想将这些文件放在一个名为`suid_files`的新目录下,可以按照以下步骤操作:
```sh
# 创建目标文件夹,如果不存在的话
mkdir -p suid_files
# 使用find命令查找满足条件的文件
find /path/to/search -type f \( -perm +4000 \) -size +1k -size -50k \
| xargs grep '^S' | while read file; do
# 确保文件是SUID
if [ $(file -i "$file" | cut -d ' ' -f 2) = "application/x-executable" ]; then
cp "$file" suid_files/
fi
done
```
在这个脚本中:
- `find /path/to/search`: 替换为你想要搜索的目录路径。
- `-type f`: 搜索文件。
- `\(-perm +4000\)`:匹配SUID文件(SUID位设置为1的文件)。
- `-size +1k -size -50k`: 匹配大小在1KB至50KB的文件。
- `xargs grep '^S'`: 将找到的文件传递给grep检查是否以"S"开头(表示SUID标志)。
- `while read file; do ... done`: 遍历grep的结果,并复制符合条件的文件到`suid_files`目录。
注意:这个命令可能会复制一些非执行文件,如果你只想处理真正的可执行文件,可以在`if`语句里添加更严格的条件,比如使用`file -i "$file"`检查文件类型。
阅读全文