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

    你可能感兴趣的文章
    Netty心跳检测机制
    查看>>
    Netty核心模块组件
    查看>>
    Netty框架内的宝藏:ByteBuf
    查看>>
    Netty框架的服务端开发中创建EventLoopGroup对象时线程数量源码解析
    查看>>
    Netty源码—2.Reactor线程模型一
    查看>>
    Netty源码—3.Reactor线程模型三
    查看>>
    Netty源码—4.客户端接入流程一
    查看>>
    Netty源码—4.客户端接入流程二
    查看>>
    Netty源码—5.Pipeline和Handler一
    查看>>
    Netty源码—5.Pipeline和Handler二
    查看>>
    Netty源码—6.ByteBuf原理一
    查看>>
    Netty源码—6.ByteBuf原理二
    查看>>
    Netty源码—7.ByteBuf原理三
    查看>>
    Netty源码—7.ByteBuf原理四
    查看>>
    Netty源码—8.编解码原理一
    查看>>
    Netty源码—8.编解码原理二
    查看>>
    Netty源码解读
    查看>>
    Netty的Socket编程详解-搭建服务端与客户端并进行数据传输
    查看>>
    Netty相关
    查看>>
    Netty遇到TCP发送缓冲区满了 写半包操作该如何处理
    查看>>