i春秋训练营题集(web)
签到1
打开网页,得到一个kali界面,随便输入后,发现不管输入什么,它自己会弹出指令,于是一直输入直到弹出所有指令即可得到flag
签到2
打开链接,是一个拼图小游戏,完成游戏即可得到flag
Broken(jother编码)
打开链接,可以看到一个超链接
点击超连接可以看到如下内容
点击F12将元素里的内容复制到控制台,回车,一直提示Unexpected token ‘]’,于是在最后填一个’]’,回车,发现依然报错
将后面的小括号删去,再填上’]’,得到[Array(1)]文件,里面就是flag
jother编码
jother是javascript语言中利用少量字符构造精简的匿名函数方法对于字符串进行的编码方式。其中少量字符包括:"!"、"+"、"("、")"、"["、"]"、"{"、"}"。只用这些字符就能完成对任意字符串的编码。
利用jother编码可以在不用字母和数字的情况执行任意js代码,这个在XSS攻击中是十分有用的。比如代码中对“alert”过滤,可以考虑利用jother重新编码函数,用匿名函数调用“alert”,在调用“alert”的时候仅替换alert中的r,这样就形成了“ale”+xxx(jother)+“t”的形式。
解码方式:
alert(xxx)、console(xxx)、document.write(xxx)即可(xxx为编码内容)。也可以直接粘贴到开发者工具的console中解码。
who are you?
打开网页得到此页面
提示没有许可,查看网页源码也没有特别的,于是用burpsuit抓包。
发现cookie有特别的地方,是一串base64编码,解码得到
解码后发现是Rot13编码
Rot13编码
ROT13(回转13位,rotateby13places,有时中间加了个减号称作ROT-13)是一种简易的置换暗码。----《互动百科》
简单的说就是通过将输入的原字符串ASCII+13/或者ASCC-13:
例如:输入 HELLO 会变成:URYYB
例如:输入 hello 会变成:uryyb
再将得到的Rot13编码解码得到,guest:访客,但是一般访客的权限都很低,这里可能需要admin,于是先用Rot13编码admin,再用base64编码放入cookie中
放入cookie中后send可以看到它提示登录成功,并且提示是post传参。
于是改包,变为post传参,并用PHP数组绕过,得到一个PHP文件地址,访问即可得到flag