欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

用gd扩展调用imagegrabscreen截图,完全黑屏!允许服务与桌面交互没用!

程序员文章站 2022-05-26 21:07:09
...
用gd扩展调用imagegrabscreen截图,完全黑屏!!!流传的方法“允许服务与桌面交互”根本没有用!!而且最诡异的是我尝试用system调用一个C写的exe去截屏也是黑屏,而直接用命令行调用这个exe截屏根本木有问题!求解!!!

好吧。。看来只能自问自答了……

是session0隔离的问题
只要让httpd.exe不以系统服务的方式运行,就可以绕过session0的头疼问题。

这个问题发上来的第二天,我就在xp上进行了一下测试,发现xp上只要勾选了就没问题。而在自己的win7和winserver2012上仍然黑屏。我尝试以自己常用的账户登录服务,无效。然后目光转向了httpd.conf上的user/group选项,改deamon为apache,改了各种各样的user/group,均无效。这时我想到win vista以上的系统让服务运行于session 0,与用户界面隔离。即便勾选“允许服务与桌面交互”,截到的屏幕也是session 0上的内容。而刚好session 0桌面上的内容为空,壁纸也是黑色的……所以“黑屏”。更致命的是,如果你想shell,权限也是极低的。我甚至尝试了使用lsrunas、saunr(runas要输入密码)提权运行截屏exe,但win7已经堵上了这个后门。正准备放弃时,我的同学在Win7上测试,他装的是xampp的。居然可以用。我觉得不可思议。最后发现他的电脑上没有apache服务!!所以我找到了答案:只要让httpd.exe不以服务的方式直接运行就可以绕过session0的头疼问题。

关于session 0隔离的问题请见这篇文章,讲的比较清楚:http://www.cnblogs.com/gnielee/archive/2010/04/07/session0-isolation-part1.html


以上就介绍了 用gd扩展调用imagegrabscreen截图,完全黑屏!允许服务与桌面交互没用!,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。