+ [总结](#_94)
作者:冰耿
作者其他详细专栏
CTF系统学习专栏https://blog.csdn.net/bing_geng/category_12496105.html
Python爬虫学习专栏https://blog.csdn.net/bing_geng/category_12494819.html
难度:1
方向:Web
题目描述:一名合格的黑客眼中,所有的上传点都是开发者留下的后门
一. 前言:
做这个题目前前后后一共花了五天的时间,因为本身不是一直有空,这道题首先要预先处理的问题很多。
1. 先安装好中国蚁剑,教程整理如下,kali 零基础安装中国蚁剑
[https://editor.csdn.net/md/?articleId=134451677]( )
2. 理解 **.user.ini**文件
.user.ini 文件通常是与 PHP 配置相关的文件。在 PHP 应用程序中,用户可以通过 .user.ini 文件来自定义一些 PHP 的配置选项,以适应特定的应用需求。
以下是一些关键点:
位置: .user.ini 文件通常位于用户的网站目录下,可以影响到该目录及其子目录下的 PHP 执行环境。请注意,这个文件名以点开头,表示是一个隐藏文件。
作用: 该文件允许用户设置 PHP 的配置选项,类似于主配置文件 php.ini。通过这个文件,用户可以在不修改全局 PHP 配置的情况下,对特定应用进行定制。
优先级: 在用户目录中的 .user.ini 文件的设置优先级高于全局的 php.ini 设置。这意味着你可以在应用的目录中定义一些特定于该应用的 PHP 配置,而不会影响到其他应用或整个系统。
安全性: 对于共享托管环境,需要谨慎使用 .user.ini,因为用户可以在自己的目录中定义 PHP 设置,可能导致安全隐患。
示例:
一个示例的 .user.ini 文件可能如下:
Copy code
; 设置 PHP 错误报告级别
error_reporting = E_ALL
; 启用或禁用魔术引号
magic_quotes_gpc = Off
意思就是说 这个文件可以影响php的配置
3. 下面这四个是文件上传要绕过的点
检查文件内容是否有php字符串
检查后缀中是否有htaccess或ph
检查文件头部信息
文件MIME类型
到这里,可能基础比较薄弱的读者已经开始晕了,别担心,我们可以跟着下面一步一步来,先实现获取到flag值,再回过头来想想哪一步不太理解。
二. 题目界面
三. 本人步骤与思路
- 首先题目名字是 easyupload,反应到有可能是上传php文件如何拿到权限,这里要我们上传的是头像,猜测是对图片文件会允许通过,而其他文件将会被过滤,特别是包含php后缀等等。
- 经过尝试,如果上传php文件,将会提示如下,你上传的文件好像是恶意的
- 我们想要上传php文件,获得控制权限又不能直接上传php文件,该如何去做,所以就想到了可以通过burp工具,.user,ini配置文件,上传一个假的图片文件,这三个的结合来获取权限。
检查文件内容是否有php字符串
检查后缀中是否有htaccess或ph
检查文件头部信息
文件MIME类型
对于第一点可以利用短标签绕过,例如<?=phpinfo();?>
对于第二点可以通过上传.user.ini以及正常jpg文件来进行getshell。所以下面就是开干环节。
- 我是在kali虚拟机中进行的,因为我的burp和蚁剑工具都在kali上。首先在桌面创建两个文件,一个名为 user.ini (不是 .user.ini ,为什么是这样,因为有坑!kali里面创建以 . 开头的文件会被隐藏起来,选择文件的时候没无法选中,所以先创建 user.ini, 用burp抓包的时候再改名字,改文件类型)
user.ini,内容为
//会指定执行a.jpg文件
GIF89a
auto\_prepend\_file=a.jpg
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
需要这份系统化资料的朋友,可以点击这里获取
多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**