GetShell方式小结
前言
前端时间学基础漏洞的时候没有太注意如何通过漏洞GETSHELL,前几天在实战中发现了一个sql注入,当时就想可不可以getshell 扩大危害。虽然最后还是没有getshell但是在这个过程中还是学到了新的姿势。以前我基本上只会 通过文件上传漏洞得到shell。今天去网上看了一些师傅的文章然后学习下。
文件上传GetShell
这个就不用多说了就是直接上传webshell就可以了。过程中大概会遇到许多绕过 但是大体可以分为下面的几种情况。
- 直接上传木马文件到目标服务器;
- 绕过防护(黑名单 白名单)限制上传木马文件;
- CMS等的通用任意文件上传漏洞。在对目标进行渗透测试时,可从前后台头像修改、文件导入、图片上传等处寻找文件上传接口。此外,还需要根据识别的站点指纹寻找是否存在文件上传漏洞
具体一些常见的绕过我在文件上传总结中说到过了。
解析漏洞GetShell
这个需要文件上传和文件包含配合使用。利用解析漏洞将图片马等文件解析为恶意脚本文件从而GetShell
-
IIS解析漏洞
- IIS 5.x/6.0解析漏洞,其中文件名解析漏洞利用形式为*.asp;.jpg;目录解析漏洞利用形式为/asp/1.jpg。
- IIS 7.0/7.5解析漏洞。其实该漏洞为cgi.fix_pathinfo的配置不当引起的解析漏洞,利用形式为x.jpg%20\0.php。
-
Nginx解析漏洞
- Nginx漏洞版本0.8.41 ~ 1.4.3 / 1.5.0 ~ 1.5.7默认配置导致解析漏洞,利用形式为x.jpg/.php。
- Nginx漏洞版本0.5.、0.6.、0.7 <= 0.7.65、0.8 <= 0.8.37,利用形式为x.jpg%00.php。
- CVE-2013-4547,利用形式为x.jpg[非空编码]\0.php
- PHPStudy v8.1.0.7默认Nginx配置解析漏洞,利用形式为x.jpg/.php。
-
Apache解析漏洞
- 文件后缀x.php.ss.ss2会被解析为php文件
- 利用配置文件。上传.htaccess配置文件,就会将.jpg解析为PHP文件,内容如下
AddType application/x-httpd-php xxx
或者
SetHandler application/x-httpd-php
这个其实我在文件上传总结中也提到过。当时没有这么细。中间件的复现可以到vulhub中复现 直接docker起个环境就可以了 挺方便的。
文件包含漏洞GetShell
利用文件包含漏洞GetShell,由于面比较大,主要介绍PHP文件包含,其分为本地文件包含和远程文件包含。
- 本地文件包含中,需要PHP的配置文件项allow_url_include和allow_url_fopen均设置为On。一般配合文件上传等漏洞GetShell,最常见的如先传图片马,再包含之。
- 远程文件包含中,需要PHP的配置文件项allow_url_fopen设置为On,利用方式是在远程服务器上存在shell.txt,内容为webshell,然后远程包含这个文件即可。
其实我觉得上面者三种有很多相似的地方。
SQL注入GetShell
目前了解到的有利用outfile函数,另外一种是利用--os-shell。
第二种是利用的sqlmap得到shell。这两种方式我在靶场都没有复现成功。师傅们可以自己研究下。
https://blog.csdn.net/qq_44159028/article/details/116274542
命令执行漏洞GetShell
利用命令(代码)执行漏洞写入WebShell文件从而GetShell。在此列举了以下四种常见情况作为说明。
- 利用CMS、框架通用漏洞,如thinkPHP命令执行漏洞,影响范围较广,如鲶鱼CMS、ThinkCMF、yunCMS等。Struts2远程命令(代码)执行漏洞,如S2-059、S2-057……
- 中间件、架构通用漏洞,如:Jboss远程命令执行、weblogic未授权命令执行CVE-2020-14882……
- 应用程序命令执行漏洞,如Redis 4.x/5.x命令执行漏洞、Zabbix远程命令执行CVE-2020-11800……
- 命令注入漏洞写入WebShell,根据Linux和Windows的不同采用不同的注入方式
其他方式GetShell
PHPmyadmin GetShell
弱口令进入后台后 尝试在网站配置 数据库备份等地方写入webshell
0day、nday GetShell 0day自己挖,如一些cms黑白盒渗透、代码审计等;Nday靠收集 (我只会nday,目前没挖到0day)
组合漏洞GetShell 如DedeCMS CSRF + 任意文件写入
后台修改文件上传类型 添加上传文件类型,如白名单中添加PHP。
参考链接
https://www.mumsec.com/?p=46
https://zhuanlan.zhihu.com/p/358651680