分享一下我的经验与总结 https://blog.csdn.net/m_de_g/article/details/120380488
{{模板漏洞}}
环境打不开
还是不太懂为什么?a={paathru('ls')} ,这里为什么要加{}吗,写成?a=passthru('ls')执行不成功
这是模板,变量值要被带入模板渲染加载,要符合模板特定语法,所以要{}
可以用passthru popen scandir head ,可以参考https://zhuanlan.zhihu.com/p/401583380
smarty是个模板
先用a={{7*7}},发现有注入,用tplmap跑一下,发现的smarty构架。然后搜了一下smarty的模板,{$smarty.version},发现版本号3.1.有{if php代码}{/if}漏洞。。可以直接执行php代码,最后在linux搜索命令上卡了我很久
哪位大神告诉一下为什么?a={paathru('ls')} ,这里为什么要加{}吗,写成?a=passthru('ls')执行不成功
加个标签哦,{if paathru('ls')}{/if}
模板注入我不太熟,但是知道这里可以通过模板注入命令执行就ok了。看到源代码之后发现有一个命令执行函数漏掉了passthru,就用这个函数传入"grep -r fl[a]g{[^_]*} 目录",目录使用 "../../"这样的层层查找,这里需要注意的是利用grep支持正则表达式绕过对flag字符串的过滤 和 过滤回显中的一些干扰项(不用那么费心去找了)。
more ./*|grep fla 用来匹配当前目录下,文件内容里有fla的,直接输出文件内容
我的flag在根目录,?a={{passthru('more ../../../*|grep fla')}}
...
评论
modeng 2年前
举报
分享一下我的经验与总结 https://blog.csdn.net/m_de_g/article/details/120380488
yiting888 2年前
举报
{{模板漏洞}}
Y0ng 2年前
举报
环境打不开
陈江川0118 2年前
举报
还是不太懂为什么?a={paathru('ls')} ,这里为什么要加{}吗,写成?a=passthru('ls')执行不成功
qinyuan 1年前
举报
这是模板,变量值要被带入模板渲染加载,要符合模板特定语法,所以要{}
ximing 2年前
举报
可以用passthru popen scandir head ,可以参考https://zhuanlan.zhihu.com/p/401583380
lengf 2年前
举报
smarty是个模板
yswdlll 2年前
举报
先用a={{7*7}},发现有注入,用tplmap跑一下,发现的smarty构架。然后搜了一下smarty的模板,{$smarty.version},发现版本号3.1.有{if php代码}{/if}漏洞。。可以直接执行php代码,最后在linux搜索命令上卡了我很久
qingguo515 2年前
举报
哪位大神告诉一下为什么?a={paathru('ls')} ,这里为什么要加{}吗,写成?a=passthru('ls')执行不成功
yswdlll 2年前
举报
加个标签哦,{if paathru('ls')}{/if}
2817001550 2年前
举报
模板注入我不太熟,但是知道这里可以通过模板注入命令执行就ok了。看到源代码之后发现有一个命令执行函数漏掉了passthru,就用这个函数传入"grep -r fl[a]g{[^_]*} 目录",目录使用 "../../"这样的层层查找,这里需要注意的是利用grep支持正则表达式绕过对flag字符串的过滤 和 过滤回显中的一些干扰项(不用那么费心去找了)。
ycfhw1 2年前
举报
more ./*|grep fla 用来匹配当前目录下,文件内容里有fla的,直接输出文件内容
rexAn 2年前
举报
我的flag在根目录,?a={{passthru('more ../../../*|grep fla')}}