博客
关于我
网络安全实验室----微笑一下就能过关
阅读量:113 次
发布时间:2019-02-27

本文共 686 字,大约阅读时间需要 2 分钟。

PHP伪协议实战:从题目到解题全解析

个人收获

PHP伪协议

在这次实战中,我深刻体会到了PHP伪协议的强大之处。通过题目中的线索,我学会了如何利用URL参数构造特殊的数据片段,进而完成任务。这次经历让我对PHP伪协议的应用有了更深入的理解。


转载

题目描述

题目要求我们通过特定的条件完成任务。最终目标是获取特定的关键字,这需要我们充分利用PHP伪协议的特性。


解题思路

1. 开启题目

首先,我打开了题目页面,注意到页面中包含了一些图片和链接。我的第一步是查看页面的源码。

2. 代码审计

通过查看源码,我发现了一些关键的限制条件:

  • 禁止使用某些字符和符号:包括“.”、“%”、“0-9的数字”、“http”、“https”、“ftp”、“telnet”等。
  • 禁止包含文件:但文件内容必须是特定的符号组合(如“●’◡’●”)。
  • 利用URL参数:可以通过查询字符串构造特定的数据片段。
  • 3. PHP伪协议的应用

    结合以上条件,我意识到这道题的核心就是利用PHP伪协议。由于禁止使用某些协议(如http、https),我只能通过URL参数传递数据。

    最终,我构造了一个符合条件的URL:

    ?^[^=data://text/plain;charset=unicode,(●’◡’●)]&

    4. 获取关键字

    通过上述URL,我成功获取了题目中的关键字。这一过程让我对PHP伪协议的灵活性和实用性有了更深刻的认识。


    总结

    这次题目让我对PHP伪协议有了更深入的理解。通过代码审计和实际构造,我学会了如何在受限的条件下完成任务。这不仅锻炼了我的技术能力,也让我意识到细节的重要性。

    你可能感兴趣的文章
    MySQL高级-视图
    查看>>
    nacos集群搭建
    查看>>
    Navicat for MySQL 查看BLOB字段内容
    查看>>
    Neo4j的安装与使用
    查看>>
    Neo4j(2):环境搭建
    查看>>
    nessus快速安装使用指南(非常详细)零基础入门到精通,收藏这一篇就够了
    查看>>
    Nessus漏洞扫描教程之配置Nessus
    查看>>
    Nest.js 6.0.0 正式版发布,基于 TypeScript 的 Node.js 框架
    查看>>
    Netpas:不一样的SD-WAN+ 保障网络通讯品质
    查看>>
    netsh advfirewall
    查看>>
    Netty WebSocket客户端
    查看>>
    Netty 异步任务调度与异步线程池
    查看>>
    Netty中集成Protobuf实现Java对象数据传递
    查看>>
    Netty工作笔记0006---NIO的Buffer说明
    查看>>
    Netty工作笔记0011---Channel应用案例2
    查看>>
    Netty工作笔记0013---Channel应用案例4Copy图片
    查看>>
    Netty工作笔记0014---Buffer类型化和只读
    查看>>
    Netty工作笔记0020---Selectionkey在NIO体系
    查看>>
    Vue踩坑笔记 - 关于vue静态资源引入的问题
    查看>>
    Netty工作笔记0025---SocketChannel API
    查看>>