Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
whatfiles — 记录任何Linux进程访问的文件 | Kitploit
工具/GitHubGitHub/spieglt/whatfiles
通用工具取证分析数字取证
GitHubspieglt/whatfiles

whatfiles

记录任何Linux进程访问的文件

查看仓库
946322年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

whatfiles

Whatfiles 是一个 Linux 工具,用于记录其他程序在你的系统上读取、写入、创建或删除的文件。它还会追踪目标进程创建的任何新进程和线程。

设计原理:

长期以来,我一直对缺乏一个简单的工具来查看进程从 main() 到退出期间访问了哪些文件感到沮丧。无论你是不信任软件供应商,还是担心恶意软件,能够知道程序或安装程序对你的系统做了什么非常重要。lsof 只能观察一个时间点,而 strace 体积较大且有些复杂。

示例输出:

root@kitploit:~
mode:  read, file: /home/theron/.gimp-2.8/tool-options/gimp-clone-tool, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /home/theron/.gimp-2.8/tool-options/gimp-heal-tool, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /home/theron/.gimp-2.8/tool-options/gimp-perspective-clone-tool, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /home/theron/.gimp-2.8/tool-options/gimp-convolve-tool, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /home/theron/.gimp-2.8/tool-options/gimp-smudge-tool, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /home/theron/.gimp-2.8/tool-options/gimp-dodge-burn-tool, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /home/theron/.gimp-2.8/tool-options/gimp-desaturate-tool, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /home/theron/.gimp-2.8/plug-ins, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /usr/lib/gimp/2.0/plug-ins, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /home/theron/.gimp-2.8/pluginrc, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /usr/share/locale/en_US/LC_MESSAGES/gimp20-std-plug-ins.mo, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /usr/lib/gimp/2.0/plug-ins/script-fu, syscall: openat(), PID: 8566, process: gimp
mode:  read, file: /etc/ld.so.cache, syscall: openat(), PID: 8574, process: /usr/lib/gimp/2.0/plug-ins/script-fu
mode:  read, file: /etc/ld.so.cache, syscall: openat(), PID: 8574, process: /usr/lib/gimp/2.0/plug-ins/script-fu
mode:  read, file: /usr/lib/libgimpui-2.0.so.0, syscall: openat(), PID: 8574, process: /usr/lib/gimp/2.0/plug-ins/script-fu
mode:  read, file: /usr/lib/libgimpwidgets-2.0.so.0, syscall: openat(), PID: 8574, process: /usr/lib/gimp/2.0/plug-ins/script-fu
mode:  read, file: /usr/lib/libgimpwidgets-2.0.so.0, syscall: openat(), PID: 8574, process: /usr/lib/gimp/2.0/plug-ins/script-fu
mode:  read, file: /usr/lib/libgimp-2.0.so.0, syscall: openat(), PID: 8574, process: /usr/lib/gimp/2.0/plug-ins/script-fu
mode:  read, file: /usr/lib/libgimpcolor-2.0.so.0, syscall: openat(), PID: 8574, process: /usr/lib/gimp/2.0/plug-ins/script-fu

使用方法:

  • 基本用法,启动 ls 并将输出写入当前目录的日志文件:

    $ whatfiles ls -lah ~/Documents

  • 使用 -o 指定输出文件位置:

    $ whatfiles -o MyLogFile cd ..

  • 包含调试输出,打印到标准输出而不是日志文件:

    $ whatfiles -d -s apt install zoom

  • 附加到当前正在运行的进程(需要 root 权限):

    $ sudo whatfiles -p 1234

发行版

现成的二进制文件位于 releases 页面!还有人将其添加到了 Arch 仓库,并且 letompouce 还建立了一个 GitLab 流水线。

编译(需要 gcc 和 make):

root@kitploit:~
$ cd whatfiles
$ make
$ sudo make install

支持 x86、x86_64、ARM32 和 ARM64 架构。

可能会被问到的问题:

  • 这不就是 strace -fe trace=creat,open,openat,unlink,unlinkat ./program 的重新实现吗?

    是的。不过它的目标是更简单易用。

  • 有 Mac 和 Windows 版本吗?

    没有。在 Mac 上追踪系统调用需要 task_for_pid(),这需要代码签名,我无法使其工作,而且我也不想每年付给苹果 100 美元来编写自由软件。Mac 上的 dtruss 可以用来跟踪单个进程及其子进程,但 -t 标志似乎只接受一个系统调用来过滤。fs_usage 做了类似的事情,但我不确定它是否跟踪子进程/线程。Windows 的 Process Monitor 很优秀。

已知问题:

  • 当使用 whatfiles 启动 Firefox 时,标签页会崩溃。(但 Firefox 运行后使用 -p [PID] 附加运行正常,如果 Firefox 已打开一个窗口,使用 whatfiles 启动第二个窗口也正常。)

计划中的功能:

  • 目前没有,欢迎提出请求和 PR。

感谢你的关注,也请查看 Cloaker、Nestur 和 Flying Carpet!

下载工具