前言当我们在渗透过程中通过漏洞获取到目标主机权限后,往往会因为服务器管理员发现和修补漏洞而导致对服务器权限的丢失,所以权限维持就显得很重要了。 在windows主机中,我总结了下面几种权限维持的方法,不足之处还望各位大佬斧正。 添加影子账户影子账户可以理解为和主体一模一样但是又看不见的账户,其隐蔽性较好,只能在注册表里面看到。 首先,我们需要创建一个隐藏账号OMG$ 使用命令 net user OMG$ /add 即可。 注:隐藏账户是指在使用 net user 命令下看不到的账户。 打开注册表编辑器,找到HKEY_LOCAL_MACHINE/SAM/SAM/Domains/Account/Users/选项,双击Administrator记住类型下面的十六进制值0x1f4找到左侧对应得文件夹即000001F4,双击打开复制里面F下的所有内容。 同理,打开OMG$对应的文件夹,将刚刚复制的内容粘贴到F 下。然后将Names下的OMG$和000003EC导出注册表,名字随意取。接着删除OMG$用户(net user OMG$ /del)。最后一步,导入刚刚导出的两个注册表即可(双击即可导入)。 注销当前用户,使用OMG$登录,发现登录成功: NC自启动我们可以在受害主机上上传NC,并修改注册表将NC添加为开机自启,不过这种方法需要有一台公网服务器或者将本机端口进行映射。 先来看一下nc的命令: 首先在服务器上开一个监听端口 (nc –l –vv –p yourport): 然后在受害主机上执行 现在需要修改受害主机注册表,将上一条命令 MSF权限维持使用MSF维持权限的前提是先获得一个Meterpretershell,通过Merterpretershell获取持久性shell的方法有两种: Persistence模块首先查看persistence模块帮助信息: 运行
重启受害主机后,shell仍然反弹会回来: Metsvc 模块一样的,先来看一下它的参数: 很简单,直接运行就可以了。 从这里可以看到,它是通过在,目标主机上开启了一个服务。 监听31337端口利用handler下的windows/metsvc_bind_tcp模块,重新获得shell。 Powershell权限维持这里推荐一个powershell脚本:https://github.com/re4lity/Schtasks-Backdoor,使用方法见Readme文件。 运行命令: 根据自己的情况做适当修改。
执行上述命令后,192.168.34.131获得一个shell: 总结通过以上几种方法基本上可以维持一个windows主机的权限,各有利弊,这里只是对常见的方法做了一个总结,更多的方法还需要大家自行探索发现。在实战中推荐大家多用MSF和powershell。 参考: |
| 本文出处: http://www.freebuf.com/articles/web/180581.html |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|