web——upload-labs——第三关——后缀黑名单绕过

上传一个正常的一句话木马,判断一下验证类型

响应后返回提示不允许上传.asp,.aspx,.php,.jsp后缀文件!

且查看网页源代码中并没有前端验证机制,所以可以判断这道题是后端验证

使用burp

提示无法上传.php结尾的文件,但我们的一句话木马本身就是php脚本,如果不是.php结尾,那么服务器就无法执行。我们要上传php脚本,但服务器不让我们上传.php结尾的文件,那不就进死循环了吗?

别急,php脚本不一定要.php结尾。只需要我们上传的一句话木马能被服务器解析为php语言执行就行了,管它是什么后缀呢!

其实这道题考察的是黑名单后缀绕过

从提示中我们可以看到,限制了.asp,.aspx,.php,.jsp四种后缀

PHP是一种广泛使用的开放源代码的服务器端脚本语言,主要用于Web开发。默认情况下,PHP文件具有`.php`扩展名,但是服务器可以被配置为接受其他文件扩展名作为PHP文件来处理。以下是一些可能被服务器配置为识别并解析为PHP脚本的文件扩展名:

  1. **.php** - 这是最常见的PHP文件扩展名。

  2. **.php3** - 早期的PHP版本使用的扩展名。

  3. **.php4** - 用于PHP 4.x系列。

  4. **.php5** - 用于PHP 5.x系列。

  5. **.php7** - 用于PHP 7.x系列。

  6. **.php8** - 用于PHP 8.x系列。

  7. **.phtml** - 这是PHP混合HTML文件使用的另一个旧扩展名。

  8. **.phps** - 用来显示源代码的高亮显示而不是执行它。

  9. **.html** or **.htm** - 有时服务器被配置为执行嵌入在HTML文件中的PHP代码。

  10. **.inc** - 有时用于包含文件,但这不是一个安全做法,因为它可能会暴露敏感代码

用phtml结尾

可以注入

结束

相关推荐
里欧跑得慢1 小时前
17. Flutter Hero动画实现:让界面过渡更加优雅
前端·css·flutter·web
IT_陈寒2 小时前
Vue的这个响应式陷阱,我debug了一整天才爬出来
前端·人工智能·后端
kyriewen2 小时前
前端测试:别为了100%覆盖率而写测试,那是自欺欺人
前端·javascript·单元测试
去伪存真2 小时前
我自己写的第一个skills--project-core-standards
前端·agent
Data_Journal2 小时前
如何使用cURL更改User Agent
大数据·服务器·前端·javascript·数据库
竹林8183 小时前
wagmi v2 多链钱包切换:一个 Uniswap 仿盘项目让我踩了三天坑
前端·javascript
donecoding3 小时前
Playwright MCP 页面捕获:Snapshot、截图、HTML 到底选哪个?
前端·ai编程·前端工程化
滕青山3 小时前
在线PDF拆分工具核心JS实现
前端·javascript·vue.js
Smilezyl3 小时前
一个独立开发者,靠一份 markdown 驱动 Claude Code, 用 20 天跑通 9 个包的 monorepo 工程
前端·人工智能·github
技术崽崽3 小时前
不止有 Agent:Cursor 进阶使用技巧全解析
前端