监视我的计算机上的活动。

监视我的计算机上的活动。

所以最近我发现有人在未经同意的情况下使用了我的电脑,浏览文件夹等......

我可以立即更改所有密码,但我很好奇入侵者正在寻找什么。所以我想设置一个陷阱(邪恶的笑容)。

什么软件可以监控我的计算机上的任何活动?虽然我知道捕获我的屏幕在这里可以工作。我宁愿使用日志文件。

例如:

/var/log/activity.log

[2010年8月1日20:23] /usr/bin/thunar 访问/multimedia/cctv-records/
[2010年8月1日20:25] /usr/bin/mplayer 访问/multimedia/cctv-records/00232.avi
[8月3日2010 02:34] /usr/bin/thunderbird 运行
[3 Aug 2010 03:33] 来自 12.32.132.123 的传入 ssh 会话

我想记录的活动是:

  • 访问文件系统上的文件和文件夹
  • 命令运行(从控制台或其他方式)
  • 用户会话(登录、ssh 会话和失败的尝试)

答案1

您可以使用内核机制inotify来监视访问的文件。

首先你应该检查是否inotify在内核中打开:

pbm@tauri ~ $ zcat /proc/config.gz | grep CONFIG_INOTIFY
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y

接下来要做的就是安装inotify-tools。您可以在以下位置找到各种发行版的说明:项目页面- 它应该位于所有主要发行版的存储库中。

之后 inotify 就可以开始工作了:

inotifywait /dirs/to/watch -mrq

m= 发生一个事件后不退出,r= 递归,q= 安静)

例如 - 之后输出ls /home/pbm

pbm@tauri ~ $ inotifywait /bin /home/pbm -mq 
/bin/ OPEN ls
/bin/ ACCESS ls
/bin/ ACCESS ls
/home/pbm/ OPEN,ISDIR 
/home/pbm/ CLOSE_NOWRITE,CLOSE,ISDIR 
/bin/ CLOSE_NOWRITE,CLOSE ls

重要的是正确设置监视目录:

  • 不要/递归地观看 - 有很多读/写/dev/proc
  • 不要递归地查看您的主目录 - 当您使用应用程序时,会对应用程序配置目录和浏览器配置文件目录进行大量读/写操作

其中/proc/sys/fs/inotify/max_user_watches有一个配置选项,显示可以同时观看多少个文件。默认值(对于 Gentoo)大约不是那么高,所以如果你将 watcher 设置为/home/你可能会超出限制。您可以通过使用echo(需要 root 访问权限)来增加限制。

echo 524288 > /proc/sys/fs/inotify/max_user_watches

但在此之前你应该阅读该变化的后果

您可能感兴趣的选项:

  • -d= 守护进程模式
  • -o file= 输出到文件
  • --format= 用户指定的格式,更多信息见man inotifywait
  • -e EVENT= 应监视什么事件(例如accessmodify等,更多信息见man

答案2

另一个人对你有兴趣吗?如果他有物理访问权限或 root 访问权限,他就可以删除所有痕迹,甚至植入一个 bug 来监视。另一方面,有些痕迹抹去是很痛苦的,而且很难把一切都想起来。

系统日志中已经记录了各种内容,通常位于/var/log(某些系统使用不同的位置,例如/var/logs/var/adm)。在正常配置下,所有登录和安装都会被记录。如果您担心日志被删除,您可以设置远程日志记录(如何执行此操作取决于系统日志实现,但通常只需在发送方和接收方的配置文件中更改一两行)。

如果您或您的发行版尚未禁用此功能,则每个文件都有一个存取时间(“atime”) 每当读取文件时都会更新。 (如果使用noatime或选项挂载文件系统relatime,则 atime 不会更新。)可以使用 伪造 atime touch -a,但这会更新 ctime,因此会留下痕迹。 (即使是 root 也无法直接删除此痕迹,您需要绕过文件系统代码。)

各种程序都有一个会话历史记录。如果入侵者记得这样做,那么很容易删除或伪造。 Bash 保留~/.bash_history,浏览器倾向于在其配置文件目录中写入大量内容,等等。您还可能在~/.xsession-errors/var/log/Xorg.0.log或其他与系统相关的位置发现明显的错误或警告。

许多大学都有一个流程会计¹ 功能。例如,参见GNU 会计实用程序手册, 中的条目FreeBSD手册或者Linux 指南或者Solaris 指南。一旦启用,它会记录用户何时启动什么进程(它记录execve调用),甚至可能更多。它没有记录很多有趣的信息,例如进程访问的文件。

如果你想监控对文件系统的所有访问,你可以通过记录文件系统。如果这个人想看的话,很容易被注意到。

有更全面的日志记录程序,但它们可能需要额外的内核支持。在 Solaris、FreeBSD、NetBSD 和 Mac OS X 上,有跟踪(有一个 Linux 移植正在进行中,但我不知道它是否已达到可用阶段)。您还可以通过系统调用接口跟踪特定进程ptrace,例如strace在 Linux 上;它可能会导致明显的减速。

¹维基百科中没有的内容?不,那是疯狂的言论。

答案3

看一下失败2禁止拒绝主机

答案4

假设攻击者足够天真,您可以简单地放入script -qft $USER-$$ 2> $USER-$$-time他/您适当的登录脚本来监视他或她的终端交互并使用适当的 scriptreplay 命令重放。

要监视文件级访问,我建议将strace -fe open适当的日志记录附加到 sshd 并过滤登录会话(或者最好从 进行此操作。警告:巨大的输出,因为在现代系统上执行任何操作都会涉及到很多文件数量。如果您只想监视特定文件,请查看审计及其支持基础设施。

可以根据其他答案从系统日志中收集会话和登录尝试。

相关内容