博客
关于我
网络安全实验室----微笑一下就能过关
阅读量: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伪协议有了更深入的理解。通过代码审计和实际构造,我学会了如何在受限的条件下完成任务。这不仅锻炼了我的技术能力,也让我意识到细节的重要性。

    你可能感兴趣的文章
    Python基础之(一)基本数据类型
    查看>>
    Python基础【os】
    查看>>
    Python基础——面向对象
    查看>>
    Python基础——线程锁
    查看>>
    python基础——线程与进程
    查看>>
    Python基础——构造方法和特殊成员方法
    查看>>
    Python基础——多线程值从Thread类继承
    查看>>
    Python基础——多线程之信号量
    查看>>
    Python基础——_thread多线程
    查看>>
    Python基础——Thread类与线程对象
    查看>>
    Python基础——Thread创建管理多线程
    查看>>
    Python基础——SQLite数据库基本操作
    查看>>
    Python基础——MySQL数据库基本操作
    查看>>
    Python基础_列表 list
    查看>>
    python系列【仅供参考】:python异步库调用gevent和asyncio对比
    查看>>
    python基础3
    查看>>
    Python基础08 面向对象的基本概念
    查看>>
    python系列【仅供参考】:python二进制转10进制
    查看>>
    Python基础-函数篇
    查看>>
    python基础---->常用模块
    查看>>