follow

Training:Get the first half of flag @BackdoorCtf and other at #backdoorctf15 on irc.freenode.org. Join them and submit sha-256 of the flag.

第一部分,点击那个@BackdoorCtf,发现在twitter,然后翻推文,发现这个:
1.png

2041615da55336e54cae0692663c2cf35aaa33188c6fa68c56a813f878d9a24d
第一部分拿到,接下来是第二部分,加入irc频道#backdoorctf15,在顶部发现这个
2.png

d68e69f3bbebbb346d338cdf937009ba3c69e5bea60158de2d47da09574f9342
组合进行sha256加密得到:14405472874FDDF3F051A9085D6C3F559F2804363776E06F2C4AFE08E55CD918
提交发现不成功,换成小写,成功,一阵蛋碎。。

WEB150

Training:You have found H4x0r’s news site. He created this quite long time ago, so there are chances that it has some loopholes. Find the sha-265 hash of the MD5 hash of the admin’s password for the website

给了一个地址,输入一个id,返回信息,先尝试and 1=1和and 1=2,发现都是空白,于是猜想是不是有单引号,改变一下,用1′ and ‘1’=’1和’1’=’2尝试,正确和错误,扔到sqlmap里面跑了下,发现是sqlite,两张表,data和users,都跑不出数据,但是得到了几个信息
1:flag需要的admin password在users中,但是显示的信息是在data表中
2:都只有3个字段,注意到页面上已经显示出了title和data两个字段了,所以查询语句应该是select * from data;
构造语句,拿到admin password,sha256(password) get flag
3.png

NONAME

Training:Intrestingly enough, even though it was not expected, Chintu found a cool website to play with, though he can’t get the flag. Can you? Visit this. Submit the SHA-256 hash of the flag obtained.

这道题。找了好多基友帮忙。不过也学到了很多东西,值了,但是有一点,拿到的组合flag不知道为什么,提交总是错误的
先看题目的另一个描述:

Welcome to Noname! You can see an intrepreter above
Get admin’s flag and admin’s secret. Remember admin is one of the people
Submit sha-256 of secret and flag joined

完全不知道这是什么鬼,不过上面有提示让输入东西,输入个s,我擦,返回个异常
但是抓到了一个连接
4.png

访问发现是一个json,提交的数据和返回的数据只能输入数字,输入字母就给java.lang.RuntimeException: Unable to resolve symbol: s in this context,但是数字能做什么,于是尝试输入特殊符号,直到输入到*的时候,才返回了不一样的数据:


1
{"expr":"*","result":"#<core$_STAR_ clojure.core$_STAR_@41c34a7a>"}

clojure.core,去问了一下朋友,知道了这是个什么东西,然后就去找它的文档,google:clojure.core api第一个连接就是很详细的文档,翻了老半天,找到了这个function:loaded-libs 然后试一下这个function能给我们返回来什么东西5.png

我一眼就瞄到了这玩意儿,然后又去翻文档,最终在Namespace repl下翻到了这个
6.png

来一发,看看返回什么东西


1
{"expr":"(clojure.repl/dir noname.people.admin)","result":"flag\nnil"}

然后(noname.people.admin/flag)拿到第一部分flag: 7.png

_b7w_1_l1k3_60l4n6_700nil
然后还需要admin’s secret,(noname.people.admin/secret)走一发
8.png

额。这是什么鬼。。 然后跑去问盆友,问google,然后找到问题所在了,flag是公有的,但是secret是私有的,如果在公有的flag下去调用私有的secret,就会报错,解决办法,直接引用。好粗暴。 看这个错:
java.lang.IllegalStateException: var: #’noname.people.admin/secret is not public
所以我们直接引用(#’noname.people.admin/secret),成功拿到第二部分的flag
9.png

组合一下:1_4m_50_cl0jur3d_y0u_c4n7_3v3n_7h1nk_b7w_1_l1k3_60l4n6_700nil
但是,不管是大写还是小写都是错误的,真是哔了狗了,不知道怎么回事了,但是正确的flag就是这个没错了