萌新之php一句话木马(上传漏洞) 您所在的位置:网站首页 找到了找到了下一句 萌新之php一句话木马(上传漏洞)

萌新之php一句话木马(上传漏洞)

2024-06-11 13:07| 来源: 网络整理| 查看: 265

0x00参考文章 https://www.cnblogs.com/wangtanzhi/p/12243206.html https://xz.aliyun.com/t/2435 https://blog.csdn.net/momo_sleet/article/details/82497520

0x01 什么是一句话木马

传到服务器,然后用菜刀或者蚁剑连接你上传的脚本,菜刀/蚁剑就会自动向服务器post相应的代码,让你得到访问服务器的权限,并可以下载和上传文件到服务器 0x03 eval函数 eval() 函数把字符串按照 PHP 代码来计算。 该字符串必须是合法的 PHP 代码,且必须以分号结尾。 在这里插入图片描述 0x04漏洞条件 文件可上传 知道文件上传的路径 上传文件可以被访问 上传文件可以被执行 或者可以直接把代码写入服务器的php文件中

0x05一些简单绕过 1.前端可能通过javascript函数设置允许上传的文件类型 在这里插入图片描述 如碰到这种验证,你不需要懂他的代码逻辑,你只要知道,他是检测你文件上传的类型的,并且是js 只要js就可以在前端把它无效化 在这里插入图片描述 这里可以看到js函数的作用位置,直接把它调用函数的地方删掉,自然不会验证了 修改后为:

在这里插入图片描述

2.后端php检测文件后缀和content-type或文件头 上传php文件,然后bp抓包,可以将后缀改成.jpg,content-type改成别的,添加文件头 关于文件头建议自己去看,这里推荐一篇博客 https://blog.csdn.net/qq_40574571/article/details/80150157 一个修改的例子 在这里插入图片描述 注意上图中加的图片头为GIF89A,对应的文件后缀应为.gif,图中.jpg对应的应该是别的头,这里只是为了举个例子,不要深究

贴几个一般题目中过滤用到的代码 检测content-type 在这里插入图片描述 检测后缀 在这里插入图片描述 一般绕过后缀检测为方法很多,如果大小写不敏感的检测代码可以通过大小写绕过,如果是直接去除后缀的话,可以通过双写绕过(如.pphphp,用操作字符串的方法删除中间的php留下的还是.php) 如果检测不严格,也可以用.php3.phtml等后缀代替.php后缀

有时也可以用**%00截断**绕过后缀检测

关于00截断: 条件 php版本要小于5.3.4 在url中%00表示ascll码中的0 ,而ascii中0作为特殊字符保留,表示字符串结束,所以当url中出现%00时就会认为读取已结束,如果filename是以get形式传递,例如 在get请求如 https:/xxxxxx/upfiles/?filename=test.php%00.txt 函数检测后缀时可能只会检测到.txt把它当做txt文件,但当url解析时%00会被当做结束字符,url会默认以为后面没有其他东西了,所以实际传入时把它当做test.php传入服务器 而在post请求时也可以用类似的方法,但比较麻烦,可以通过bp抓包后修改文件内容的十六进制数据完成00截断,具体如图

在这里插入图片描述 此处a约等于上面的.txt,先在上传时把要截断的地方用空格占位,空格对应的十六进制数据为20,再bp抓包,找到那个20的位置改为00即可引发00截断 (bp在这里看十六进制数据) 在这里插入图片描述 关于00截断涉及的漏洞还有很多,建议去自行了解

3.直接对文件内容进行检测 –1.过滤



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有