SuperAPI AI 工具集

webshell-deploy

部署与运维

查看项目

更新于 10-16 08:08

技能介绍

用途:当漏洞利用需要上传或写入 webshell 到目标服务器时,按此方法论操作,覆盖从类型选择到验证利用的完整流程。

主要能力:按目标技术栈选择 webshell 类型(Java/Tomcat/JBoss 用 .jsp,PHP/Apache/Nginx 用 .php,ASP.NET/IIS 用 .aspx,Python 通常无法直接上传);本地生成 JSP/PHP/ASPX webshell 文件;通过 HTTP PUT 上传(含末尾斜杠、%20、NTFS 流 ::$DATA 等绕过技巧);通过文件上传表单上传;通过日志注入配合 LFI 写入;上传后验证与命令执行利用。

核心原则:不要在 curl -d 参数中内联 JSP/PHP 代码,转义问题会损坏 payload;先写本地文件,再用 --data-binary @file 上传;按正确顺序操作,避免反复试错。

使用方式:Phase 1 按技术栈选类型;Phase 2 用 cat > /tmp/shell.jsp << 'EOF' 等方式写入本地文件;Phase 3 上传,PUT 方式示例 curl -X PUT "http://TARGET:8080/shell.jsp/" --data-binary @/tmp/shell.jsp -v,成功响应码为 201 或 204,表单方式用 curl -X POST -F "file=@/tmp/shell.jsp;filename=shell.jsp",日志注入方式先以 User-Agent 写入 payload 再经 LFI 包含日志;Phase 4 用 curl -s "http://TARGET:8080/shell.jsp?cmd=id" 验证;Phase 5 执行命令,注意 URL 编码空格与特殊字符。

适用场景:发现文件上传漏洞、PUT 方法可用、存在 LFI 等可写入 webshell 的渗透测试场景。

限制:资料未提供具体授权范围、目标环境版本要求及法律合规说明;Python/Flask/Django 通常无法直接上传 webshell;部分绕过技巧依赖特定服务器与操作系统;常见错误包括 PUT 返回 404、webshell 空白或 500、命令无输出、文件名被重命名等,需按资料中的排查表处理。