假期南邮断外网,CG-CTF进不去,那就整理下攻防世界Web新手区的题好了。

1、view source

看题即知做法,右键用不了,按F12就行。

2、robots

robots协议,CG-CTF(3)里也提过了,在题目给的url后接robots.txt访问,再访问flag_is_here.php就能看到flag了。

3、backup

备份文件后缀为.bak,访问之后会跳出一个文件,打开,flag就在里面。

4、cookie

用工具查看cookie值,访问cookie.php,告诉你看response,照做就能看到flag。

5、disabled_button

中科大招新赛的时候做到过类似的(我是先做的招新赛题。。。),F12把disable删掉就好了。

6、weak_auth

弱口令,别问,问就是爆破。

7、simple_php

看源码,用字符串绕过就完了。附上我的payload:?a=0ad&b=12345a。

8、get_post

按要求先get请求a,再post请求b就完事儿了,工具用hackbar。

9、xff_referer

和hgame接 头 霸 王一样的做法,burp suite打开,改就完事儿了。

10、webshell

一句话木马,用菜刀连发现有个flag.txt,打开就是flag了。

11、command_execution

已知ping功能无waf,那就很简单了。输入127.0.0.1&&find / -name "flag.*"进行查找,找到flag.txt文件,再输入127.0.0.1&&cat /home/flag.txt,就能拿到flag了。

12、simple_js

一进去就要你输密码,先随便输一下,等到进入空白页面,按F12,可以看到一段js代码

function dechiffre(pass_enc){
      var pass = "70,65,85,88,32,80,65,83,83,87,79,82,68,32,72,65,72,65";
      var tab = pass_enc.split(',');
              var tab2 = pass.split(',');var i,j,k,l=0,m,n,o,p = "";i = 0;j = tab.length;
                      k = j + (l) + (n=0);
                      n = tab2.length;
                      for(i = (o=0); i < (k = j = n); i++ ){o = tab[i-l];p += String.fromCharCode((o = tab2[i]));
                              if(i == 5)break;}
                      for(i = (o=0); i < (k = j = n); i++ ){
                      o = tab[i-l];
                              if(i > 5 && i < k-1)
                                      p += String.fromCharCode((o = tab2[i]));
                      }
      p += String.fromCharCode(tab2[17]);
      pass = p;return pass;
  }
  String["fromCharCode"](dechiffre("\x35\x35\x2c\x35\x36\x2c\x35\x34\x2c\x37\x39\x2c\x31\x31\x35\x2c\x36\x39\x2c\x31\x31\x34\x2c\x31\x31\x36\x2c\x31\x30\x37\x2c\x34\x39\x2c\x35\x30"));

  h = window.prompt('Enter password');
  alert( dechiffre(h) );

代码审计后发现无论密码输啥都没用。。。于是我人傻了,看了题解才知道fromCharCode的那一串就是flag,把那一串转成ascii码,再转成字符串即可。

文末吐槽点无关的事儿:2020年属实魔幻,我也做不到任何事情,我能做的也就只有继续学习了。

Categories:

Tags:

No responses yet

发表评论

电子邮件地址不会被公开。 必填项已用*标注

闽ICP备19027300号