这个问题比较好的实现方式是,通过 Minifilter 文件过滤驱动来监控,但是公司的电脑全都没有管理员权限,没办法安装运行驱动,导致这个方案没法实现。 除此之外,使用 ReadDirectoryChangesW 函数也没办法监控到,windows 好像不更新 last access 时间。还有个 Windows 事件跟踪 (ETW),这个需要管理员权限也不行。 有没有什么不需要管理员权限的监控方案?
1
oisadfo 5 天前
没有权限没法
|
2
crab 5 天前
微软提供的 Procmon 也要管理员权限。
|
4
ysc3839 5 天前 via Android
怀疑是 X-Y Problem https://coolshell.cn/articles/10804.html
建议直接说原始需求 |
5
yulon 5 天前
没权限大概只能轮询文件的访问时间,不准,而且伤机械硬盘,固态还好
|
6
beck8 5 天前
监控更改好实现,只监控个打开,貌似只能用一些奇技淫巧之类的。比如 linux 的 lsof
|
10
charles0 5 天前
没有管理员权限基本上不能弄
|
13
ysc3839 4 天前 via Android
@skylord 用户打开文件然后提示的话,可以考虑用文件资源管理器的扩展来实现,印象中是可以分用户安装的,不需要管理员权限。
这么做的话如果是在别的程序里打开可能检测不到,但也基本符合需求。 |
14
codehz 4 天前
直接注册成所有文件的默认打开方式,打开前拦截一下就可以了()
|
15
laminux29 4 天前
你这需求肯定要管理员权限的,建议走正规流程,和上级说一下情况,让公司给你管理员权限。
|
16
Ackvincent 4 天前
@skylord hook 一下关键函数,队所有文件都监控的话肯定要在操作系统内核中做文章了。
|
18
zhengfan2016 4 天前 via Android
当年 CIH 就是监听用户打开文件时候把自身写入文件的空白处的,后面微软学精了,严卡相关 hook 和内核的权限
|
19
WuDiHaiTai 4 天前
如果你要用的只是一个应用,比如说,执行一个 exe ,有一种工具能够锁定提权 Administrator 或者 System ,但我不记得那个叫什么了。
可以和 IT 描述一下,你有什么是必须有管理员权限才能用的,让他给你搞一下。我之前当 IT 的时候,只要这个软件我认识,我们就可以给用户搞这个操作。 |
20
samli12 4 天前
不知道 ipguard 怎么做的这个,貌似有打开文件的审计功能
|
22
capgosen 4 天前
找最近使用的项目,路径: %appdata%\Microsoft\Windows\Recent
|
24
jmpcool 4 天前
ReadDirectoryChangesW 为啥监控不到文件打开? FILE_NOTIFY_CHANGE_LAST_ACCESS 这个标志不行吗?监控文件所在目录 过滤被监控文件就行啦,记住使用异步通知也就是完成端口那套 最稳定
|
26
skylord OP @WuDiHaiTai 安装运行 Minifilter 驱动需要管理员权限
|
27
WuDiHaiTai 4 天前
@skylord #26 安装就是打申请咯,只要软件是可以用于商用的,没有版权和安全风险就可以给安装。至于运行就是我说的这个办法,只需要 IT 操作一次之后,之后每次使用都是管理员启动。
|