【攻防世界】CTF 网络安全学习 easyupload
作者:冰耿
作者其他详细专栏
CTF系统学习专栏https://blog.youkuaiyun.com/bing_geng/category_12496105.html
Python爬虫学习专栏https://blog.youkuaiyun.com/bing_geng/category_12494819.html
难度:1
方向:Web
题目描述:一名合格的黑客眼中,所有的上传点都是开发者留下的后门
一. 前言:
做这个题目前前后后一共花了五天的时间,因为本身不是一直有空,这道题首先要预先处理的问题很多。
1. 先安装好中国蚁剑,教程整理如下,kali 零基础安装中国蚁剑
[https://editor.youkuaiyun.com/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文件,将会提示如下,你上传的文件好像是恶意的
学习路线:
这个方向初期比较容易入门一些,掌握一些基本技术,拿起各种现成的工具就可以开黑了。不过,要想从脚本小子变成黑客大神,这个方向越往后,需要学习和掌握的东西就会越来越多以下是网络渗透需要学习的内容: