攻防世界-Web_php_include-胎教版wp

前言:

  • 考点:文件包含,data伪协议
    • Data伪协议 嵌入纯文本:data:,纯文本内容(当数据为纯文本且无需指定数据类型时,可省略「MIME 类型」和「编码」,直接用基础格式
    • Data伪协议 嵌入可执行内容(指定[MIME类型]):data:[MIME],[可执行内容]
    • Data伪协议 嵌入二进制数据(base64编码):data:[二进制MIME类型];base64,Base64编码后的数据

解题步骤:

  • 1.进入靶场,是一段PHP代码,我们进行代码审计,大致说是要以GET方式得到变量$page的值,而且使用了循环语句,一旦识别到page值中存在php://,会将其改为空格,不断循环,直至不存在为止,简单理解为过滤掉了php://
  • 2.过滤掉了php://,导致我们filter伪协议没办法使用,我们这时想到data伪协议,构造payload :data://text/plain,<?system('ls')?> 输入运行得到

    我们肯定对fl4gisisish3r.php感兴趣,访问它
  • 3.修改执行命令,将ls改为cat fl3gisisish3r3.php,输入运行,flag在源码里,我们查看源码就可以得到
  • 4.如果想直接得到flag,可以将可执行内容改为show_source('cat fl4gisisish3r3.php') 这样就可以直接显示flag
相关推荐
消失的旧时光-194334 分钟前
C++ 多线程与并发系统取向(七)—— 并发排障与工程纪律(从“会写”到“能控场”)
开发语言·c++·并发
Y0011123637 分钟前
Day24—IO流-2
java·开发语言
CS生41 分钟前
Rust环境准备
开发语言·后端·rust
一名优秀的码农41 分钟前
vulhub系列-12-Hackademic.RTB1(超详细)
安全·web安全·网络安全·网络攻击模型·安全威胁分析
m0_738120721 小时前
sqli-labs过关解析(17- 20附带源码解析)
数据库·sql·web安全·php·ctf·安全性测试
Dxy12393102161 小时前
Python生成随机手机号码
开发语言·python
小帅学编程1 小时前
Python学习
开发语言·python·学习
下北沢美食家1 小时前
Express框架入门
开发语言·javascript·express
遥望九龙湖2 小时前
打包动态库
开发语言·c++·visualstudio