生活的迷人之处 不是如愿以偿 而是阴差阳错
起因
最近学到了Windows的数据库提权方法,于是想省事直接用PHPstudy集成环境做练习,但是用PHPstudy搭建的网站用Webshell管理工具连接上是Administrator权限,百度了一下说是要降权(降权大致思路是PHPstudy使用系统服务模式启动—>创建一个普通用户—>将Apache服务用普通用户登录—>最后会报一个关于日志的错误,解决办法是将普通用户的权限添加到该日志的权限中),按着百度的文章进行操作,最终没成功,不知道哪里出错了。断断续续的搞了一周算是成功了,于是写了这篇文章记录一下踩过的坑
实验环境
Windows Server 2016 Standard
PHPstudy2018
0x00:注册Apache服务
启动PHPstudy将运行模式改为系统服务点击应用;CMD中输入services.msc命令打开服务可以看到Apache服务已经注册成功
0x01:查看权限
将一句话木马放到网站根目录,使用Webshell管理工具进行连接,可以看到是Administrator权限
0x02:降权操作
创建一个普通用户,同时将普通用户作为Apache服务的登录用户
之后一路确定,回到下面选项页面,这里修改一下密码(需要和你创建用户时的密码保持一致),改好之后点击应用
应用之后服务显示登录为./ApacheUser
点击启动Apache服务
出现下面情况
CMD输入命令eventvwr,查看应用程序日志错误提示的意思是不能打开日志,百度了一下说是权限不够
解决办法是将普通用户的权限添加到Apache的日志中(这里是做实验,为了省事我直接把权限拉满了)
点击确定之后重新启动Apache,还是会报错:
继续查看日志(这次查看的是系统日志)
这里的报错信息是函数不正确,百度了一下说是需要改httpd.conf配置文件,很麻烦。后来想了想应该还是权限的问题,可能是Apache的某个文件没有权限进行执行,导致这个文件内的函数没办法被调用,这个文件懒着找了,所以我直接将Apache的整个文件夹权限拉满了
然后重新启动Apache服务:
可以看到启动成功
0x03:验证降权是否成功
1)打开任务管理器验证降权是否成功,可以看到Apache服务的用户名为ApacheUser
2)使用Webshell管理工具验证降权是否成功,可以看到用户名为ApacheUser。这里需要注意的是如果Webshell的管理工具是蚁剑的话,需要先清理缓存,否则看到的还是Administrator权限
到这里Apache的降权就算完成了
还有需要注意的是,降权完之后不要使用PHPstudy启动Apache服务,那样还是会以管理员身份进行登录。正确方法是CMD中输入services.msc命令打开服务,从服务列表中启动Apache服务
使用PHPstudy启动Apache服务,可以看到是管理员权限:
通过服务列表启动Apache服务,可以看到是ApacheUser用户: