我一直试图弄清楚如何在没有任何实际进展的情况下发现这几个月。无论我尝试测试C ++ / C#代码的路是什么,都归结为死路一条。
问题: 我有两台电脑,Comp1和Comp2。第一种是由Comp2远程管理(通过本地网络)。 现在,在Comp1上,我希望能够通过该机器上的远程管理窗口检测Comp2是否正在运行屏幕抓取代码(特定的c#/ c ++函数),或者对该计算机进行屏幕截图。
这是不可能的吗?(如果用某种木马或病毒感染Comp2是不可能的 - 这肯定是!)
我可以相对轻松地获取有关远程管理本身状态的详细信息(如果此时是否进行管理)以及其他内容(如IP管理),但无法准确检测到我想要的内容。
我的下一步是查看.dll文件(远程软件正在使用)可以告诉我的内容。我的知识在某种程度上是有限的。 通过挂钩已安装并正在被远程管理软件使用的“视频驱动程序”,我可以获得哪些信息?那是另一个死胡同吗?
让我感到震惊的另一件事是监控特定端口上的实际数据流量(与当前远程软件相关),但这也应该失败,因为只有发送到Comp2或鼠标/键盘仿真的数据才会出现从同一个发送,可以获得(?)
我很感激所有关于图书馆条目的想法,建议或要点(即MSDN)。
提前致谢
答案 0 :(得分:2)
我不完全确定我理解你的问题 - 但无论如何我会尽力回答:
首先让我按照我理解的方式重新解释这个问题:
是否有某种方式远程会话的主机可以检测运行的客户端软件完成的快照/屏幕抓取?
简短的回答是“不”。
一个简单的模拟是考虑指向客户端机器的相机。这台相机直接在客户端机器上记录显示器 - 除非相机选择通过某些自定义界面向您报告,否则您无法知道这种情况。
屏幕抓取软件也是如此。 屏幕抓取软件记录给定机器中发生的任何事情。 刮擦软件正在查看某些其他机器的事实不会传输到主机(除非您设计了刮削软件才能完成此操作)。
返回主机的唯一信息是客户选择传输的信息。 通常,当显示主机的窗口处于活动状态时,这只是键盘/鼠标操作。