学习原因

在渗透测试环境中,通常是网站、数据库、中间件、服务器等产生的漏洞,造成了能上传木马或获取某些重要的配置文件信息(版本、用户名密码),以至于能够对物理机器访问渗透。。。最后控制整台物理机器

我们也清楚,在平常windows使用中,c盘下的某些文件是即使是管理员账户的我们也无权限访问的。那么我们应该如何在这些权限之间提升?是要进行什么操作才能实现?

这就是我们学习本章知识的原因

权限划分

熟知的有web权限、数据库权限、普通用户权限、管理员权限、系统权限

整个提权过程可以划分成从web/数据库——连接后门(此时的权限要根据环境来看)——反弹到msf自动化提权,或者上传cs的木马半自动化提权——获得管理员甚至系统权限

其中web和数据库可以近似为一样的等级,他们之间可以相互转换,他们都需要某些操作才能进入系统

以哥斯拉为例,生成的webshell执行后查看用户会显示如下内容

其中,linux搭载jsp的网站会直接获得root权限,linux结合php会是普通用户权限,第三个是用phpstudy搭建的,是搭建者的权限,后两个是网络权限,asp一般和iis搭配

然后我们就要在这些权限的基础上想办法上传一些工具,进行手工-半自动化-全自动化提权(三种方式可以选择)最好的话还是自动化,手工可以找到的exp有很多,不能确定能否真的成功提权,所以建议自动化

手工

手工的步骤分为三步,大致操作如下。如果要结合项目来的话手工会方便一点

1.信息收集-操作系统版本 漏洞补丁 杀软进程

ver systeminfo whoami netstat -ano tasklist /svc

2.基于漏洞补丁和系统版本来选择exp,这些都是补丁编号,对应漏洞找没有打的补丁提权成功概率可能会提高

3.上传exp执行,去exploit-db上找exp,下载下来运行

为了方便你知道需要寻找哪个exp来执行,这里会介绍一款工具https://github.com/bitsadmin/wesng

以win2012为例,复制他的systeminfo信息到1.txt中

利用脚本对他查询

可以在csv文件或者cmd中看到哪些漏洞可能会对他的提权有影响,找对应cve的编号去exploit-db上下载exp然后上传执行就欧克

msf自动化

msf自动化是因为它自身有很多功能模块,使用对应权限提升的模块的时候会自动对目标进行判断,是否存在漏洞,如果存在,然后会显示用哪个模块进行攻击,方便我们再对该模块进行利用

先用msf对win2012上个线

getuid看到现在权限是管理员,用到msf的post/windows/gather/enum_patches模块,它会根据漏洞编号找出系统安装的补丁

在前面的win2012截图中可以看到只打了一个补丁,这里能对应的上

还有一个能检测出漏洞的模块post/multi/recon/local_exploit_suggester

我们选择上面的yes选项,代表可以利用的提权模块,这里选择exploit/windows/local/ms16_075_reflection_juicy

可以看到使用的模块可以对目标窃取到system权限

cs半自动化

先完成上线操作

cs的优点在于它可以配合很多插件使用,比如这次我们提到的巨龙拉冬,他的功能有很多,我直接贴图,还有一些网上的欧拉,梼杌也是不错的

在本地提权可以看到很多选择,但不是每个都适用于当前的操作系统,可以的话还是用msf测测,因为这个cs只有手工去测,测出来没提权成功就说明不行

我用甜土豆测试出来了

如果点击没有反应就在命令行里面敲

执行whoami的回显值是system,说明我们提权成功了

那么我们再次利用甜土豆去执行cs木马,由于windows特征是你以什么身份执行那么这个程序就会获得相应权限,那么我们执行完后就是system权限

windows提权

以上面的内容为例,对win2016以及2019都进行了提权操作,直接贴图