CTFshow 文件包含 web81

本文为博客 VIP 文章,开通 VIP 后可阅读全文

开通 VIP


源码

<?php

/*
# -*- coding: utf-8 -*-
# @Author: h1xa
# @Date:   2020-09-16 11:25:09
# @Last Modified by:   h1xa
# @Last Modified time: 2020-09-16 15:51:31
# @email: h1xa@ctfer.com
# @link: https://ctfer.com

*/


if(isset($_GET['file'])){
   
   
    $file = $_GET<
CTFshow文件包含web78-web81 文件包含web78-web81web78web79php://input伪协议data协议web80php://input伪协议日志包含绕过web81web82(没完全理解) web78 if(isset($_GET['file'])){ $file = $_GET['file']; include($file); }else{ highlight_file(__FILE__); } 看到源码中的include函数,这个表示从外部引入php文件并执行,如果执行不成功,就返回文件的 阅读详情

相关推荐

CTFshow Web 78-81关:文件包含漏洞原理、PHP伪协议利用与防御实战

文件包含Web安全中一个基础且关键的漏洞类型,其原理在于应用程序动态加载文件时,未对用户可控的输入进行充分校验,导致攻击者能够操纵文件路径,引入并执行非预期的文件。从技术实现上看,这通常涉及PHP中的include、require等函数。理解其原理不仅有助于认识漏洞成因,更能把握其巨大的技术价值:攻击者利用此漏洞可读取服务器敏感文件(如/etc/passwd)、执行任意系统命令,甚至通过结合伪协议实现远程代码执行,从而完全控制服务器。在常见的应用场景中,无论是CTF竞赛还是真实渗透测试,文件包含漏洞的利用

weixin_27199085的博客 264

文件包含漏洞

文件包含漏洞

qq_52263650的博客 1184

ctfshow web入门 web文件包含 web78--web81

php伪协议和日志文件访问

2301_81040377的博客 453

CTFshow-Web入门》09. Web 81~90

include() 利用,一句话木马之 Nginx 日志利用、条件竞争写入木马、file_put_contents() 利用,伪协议(php://filter/)、伪协议(data://)、PHP 特性之 intval()。

学习学习学习...... 2700

ctfshow-web80、81

然后,代码使用str_replace()函数对file变量进行两次替换操作。第一次替换将file中的php字符串替换为?,第二次替换将file中的data字符串替换为?首先,代码使用isset()函数检查是否存在名为'file'的GET参数。发现与刚刚一样都是user-agent,那还是在user-agent中插入一句话木马,后续做法与web80一样。最后,代码使用include()函数来包含$file变量所代表的文件。意思是将file中的:字符串替换为?看网页信息,发现是nginx服务器。

m0_73590931的博客 810

ctfshow web 文件包含 78~81

最近了解了一点伪协议相关知识,做几个文件包含的题目试试水好了,本次wp的题目依旧取自ctfshow,为新手向,81题后面的暂时不会做,先放着好了既然关于文件包含嘛,跟伪协议当然分不开了啦,以下是我对常用伪协议(暂时只见过这些)的总结UCS-4*UCS-4BEUCS-4LE*UCS-2UCS-2BEUCS-2LEUTF-32*UTF-32BE*UTF-32LE*UTF-16*UTF-16BE*UTF-16LE*UTF-7UTF7-IMAPUTF-8*ASCII*?>]

yanxi3329的博客 1150

ctfshow文件包含web78~81

这里要将php改为大写的,但是上面的input协议就不用,这是因为我们的参数file是通过get方式传参的,str_replace函数检查也只是检查get方式传入的值,input协议中的php是通过post方式传参的,因此不用改,data协议的php是get方式传入的,于是需要大小写绕过。可以看到在上一道题的基础上,增加了对php字符串的过滤,但是值得注意的是,过滤是区分了大小写的,这就意味着,可以使用大小写绕过,但是这里的大小写绕过对input和data协议有用,对filter协议没有用。

m0_74312676的博客 1786

ctfshow web入门文件包含web78-81

ctfshow web入门文件包含web78-81

m0_62207170的博客 298

CTFshow web 入门 web78------web81 文件包含wp

php代码?分析代码,repalce函数将输入值中的php替换成?,可见此处php被过滤。2.得到以上文件,可知我们需要访问flag.php文件。上一题的该方法无法得到flag,会被替换成?最后右键查看源代码,得到flag。文件包含类型,并且没有任何过滤。那么考虑对php代码进行编码。system()用法如上图。查看源代码得到flag。

2202_75289892的博客 1064

ctfshow web78-web81文件包含漏洞 wp

事先声明,本文只用来学习交流,不参与以任何商业形式的活动。本文不会出现flag。 web78 啥都没过滤,直接用php伪协议查看flag.php 解码得出flag web79 通过替换函数,将php换成了???,可以换一个php的伪协议绕过,用data伪协议 web80 这里把data也给过滤了,所有换一个伪协议,用input伪协议 然后查看f10g.php就能得到flag web81 这下把:这过滤了,伪协议是用不...

qq_56158055的博客 4343

CTFSHOW-WEB入门-文件包含78-81

【代码】CTFSHOW-WEB入门-文件包含78-81

2301_80024722的博客 467

[ctfshow web入门] web81 文件包含,过滤伪协议,使用日志包含

摘要 本文介绍了一种绕过文件包含安全过滤的方法。代码过滤了"php"、"data"和":"字符,但可以通过包含服务器日志文件(如/var/log/nginx/access.log)来执行PHP代码。在User-Agent中插入<?php system('ls'); ?>和<?php system('tac fl0g.php'); ?>等恶意代码,当包含日志文件时这些代码会被执行,从而获取服务器信息或读取特定文件内容。这种方法

qq_50332504的博客 222

ctfshow 文件包含web78-web81)

这个题可以用日志包含来做,apache的日志一般是/var/log/apache/access.log。nginx的日志在/var/log/nginx/access.logstep1:把一句话木马加到U-A头里:

m0_62274649的博客 355

ctfshow-web81(文件包含)

<?php /* # -*- coding: utf-8 -*- # @Author: h1xa # @Date: 2020-09-16 11:25:09 # @Last Modified by: h1xa # @Last Modified time: 2020-09-16 15:51:31 # @email: h1xa@ctfer.com # @link: https://ctfer.com */ if(isset($_GET['file'])){ $file = $_GE.

m0_62094846的博客 353

ctfshow web入门29-39 78-81 文件包含与简单命令执行

文件包含和命令执行的简单例题,学习并记录

Takagiapa的博客 713

CTFshow文件包含

这题是最基础的文件包含,直接?file=flag.php是不行的,不知道为啥,直接用下面我们之前在命令执行讲过的payload即可。

2301_76227305的博客 664
上一篇: CTFshow 文件包含 web80
下一篇: CTFshow 文件包含 web82
Kradress
博客等级 码龄7年 121粉丝 · 211原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值