Close

[tjctf] web writeup

看了一眼ctftime发现多了一个tjctf在6号的时候开始的,于是着手做一下

Blank


进去一片空白,查看网页源代码

flag??????

Cookie Monster

真的是Cookie Monster。。

flag在cookie中

Central Savings Account

这道题很奇怪根本没有经过后端验证,所以估计所有代码都在js里面

打开这个

有一段源码

就是这个

Request Me


进入的页面是这个,既然名字叫request me那么我就换一个请求头试试
这是啥意思。。

option有了回显
于是学习一下HTTP Basic Auth

在HTTP中,基本认证(Basic access authentication)是一种用来允许网页浏览器或其他客户端程序在请求时提供用户名和口令形式的身份凭证的一种登录验证方式。
在发送之前是以用户名追加一个冒号然后串接上口令,并将得出的结果字符串再用Base64算法编码。例如,提供的用户名是Aladdin、口令是open sesame,则拼接后的结果就是Aladdin:open sesame,然后再将其用Base64编码,得到QWxhZGRpbjpvcGVuIHNlc2FtZQ==。最终将Base64编码的字符串发送出去,由接收者解码得到一个由冒号分隔的用户名和口令的字符串。

可是账号密码好像不知道呀=。=
这下看起来不能用postman了,掏出bp
好像是因为https导致不能使用bp,postman还不接受这咋做啊。。
上网查了一下发现可以用curl 命令来进行查询
curl -X PUT "https://request_me.tjctf.org/" -u admin:admin --data "username=admin&password=admin"
我从post,get一个一个试下来发现到这的时候有了不一样的回显


然后莫名其妙的就弹出了flag。
看来是我不了解PUT和DELETE的原理的原因吧

Ess Kyoo Ell

这道题一进去就知道肯定是道sql题

但是却是显示了没有password字段,没有那你做什么表单,我把password去掉image
不懂这是啥错误就试一下弱密码吧image
不行,但是从上面那个没有发现password字段来思考他查询的时候应该把表单里的那两个都做变量了所以试一下前面image
可以了,有回显的所以他的sql语句是
select * from table where $username = $value and $password = $value
我们只要把后面注释了然后加一段username = admin就行了image
可以了,他的后端好像是python

Stupid Blog

首先先是登录注册image
登录之后的界面是这样的
图像传不上去,可以发消息给user,感觉要打cookie
网上又通过图片来传递xss的
https://portswigger.net/blog/bypassing-csp-using-polyglot-jpegs
不会做=。=等writeup,图片传不上去还怎么打cookie
csp又是self、、

Programmable Hyperlinked Pasta

这道题有毒
进入之后是一个网页很简单


点击了左下角之后产生了变化,并且在源码中找到了image
一看很简单啊=。=路径都告诉了,肯定是任意文件读取
然后试一下image
没有???伪协议试一下也没有???
ssrf啥的都试了。。最后发现是image
../flag.txt

Moar Horses

这道题有毒。。
给的hint很对,果然不是渗透
他只要一直往下滑就行了

如题目所说
$(window).scroll(function () { console.log( $('.jscroll-next-parent').html() ); })

<a href=”/legs”>Oops, you couldn’t get the flag</a> debugger eval code:1:32
<a href=”/legs”>Oops, you couldn’t get the flag debugger eval code:1:32
<a href=”/legs”>tjctf{h0rs3s_h4v3_lonG_l3gS} debugger eval code:1:32
<a href=”/legs”>tjctf{h0rs3s_h4v3_lonG_l3gS} debugger eval code:1:32
<a href=”/legs”>Oops, you couldn’t get the flag debugger eval code:1:32
<a href=”/legs”>Oops, you couldn’t get the flag

Leave a Reply

Your email address will not be published. Required fields are marked *