Good Morning

这WEB题萌我一脸。。打开这题仔细分析下就能知道是Flask+websocket,还给了源码。按照流程走一遍,发现是通过websocket进行交互的,最后有一次get_answer的机会,感觉有点像SQL注入,但是有一个类似mysql_real_escape()的函数,并不知道如何绕过。

后来发现数据库的编码是Shift-JIS,网上查了查发现有宽字节的注入,尝试了N多的姿势,绕过无果,无意间在某日本文章里发现,反斜杠会变成一个神奇的类似于¥一样的符号,然后用日文输入法输入了一下反斜杠,发现就是反斜杠。。。。WTF。。。

继续查了一下编码,发现是0x00a5,用十六进制编辑器把这个符号复制出来代替反斜杠,成功绕过。
payload:"type":"get_answer","question":"name¥","answer":" (|1#")

OptiProxy

ruby web,真不会。。。现学ruby,分析代码,流程大概是一个反代。这个程序会把网页中的img标签中的src链接指向的东西全部wget回来。于是在自己的vps上写个index.html,内容如下:

<img src="http:/../../../../flag" />

wget使用的参数是--page-requisites,不会解析URL,只会建立一个http:的文件夹,向上层遍历目录就可以了。

DES OFB

脚本很简单。。。就是个DES OFB模式的加密,没有密钥。
前几天刚好看到DES弱密钥,详情可以见之前的一篇博客:博客
写个脚本解密就行了。

summary

掌握的姿势还是不够多,哎,继续学习。