bugku web ctf 练习

1.web2


看到这个滑稽的笑脸直接F12查看一下源码,

就发现了flag

<!--flag KEY{Web-2-bugKssNNikls9100}-->


2.计算器

嗯,直接输入答案,好像不行,只能输入一位,查看源码,看能不能改输入的长度,

只需将maxlength的值改为答案的位数就可以。

flag{CTF-bugku-0032}

 

3.web基础$_GET

$what=$_GET['what'];
echo $what;
if($what=='flag')
echo 'flag{****}';

直接构造:

http://120.24.86.145:8002/get/?what=flag
flagflag{bugku_get_su8kej2en}



4.web基础$_POST

直接用火狐的hackBar,直接构造。

flagflag{bugku_get_ssseint67se}


5.矛盾

$num=$_GET['num'];
if(!is_numeric($num))
{
echo $num;
if($num==1)
echo 'flag{**********}';
}


主要是考了is_numeric($num)函数用于检测变量是否为数字或者字符串。如果是指定的变量数字和数字字符串则返回true,否则返回false。
所以说传入一个参数 num,is_numeric 会判断参数是否为数字, 如果不是数字就会进入下面的if循环,但是到了循环里面又要判断但是下面又需要判断num==1, 这里看似有矛盾, 实际上PHP是个若类型的语言,当传入num=1a的时候,对比是否为数字时,他是字符串,但是在做if比较时候由于是字符串 1a 会被转换为数字 1 。

6.web3

进到题目中没有什么发现,就先看看源码,在最后一行发现了

&#75;&#69;&#89;&#123;&#74;&#50;&#115;&#97;&#52;&#50;&#97;&#104;&#74;&#75;&#45;&#72;&#83;&#49;&#49;&#73;&#73;&#73;&#125;


嗯,进行Unicode的解码

KEY{J2sa42ahJK-HS11III}

7.域名解析

听说把 flag.bugku.com 解析到120.24.86.145 就能拿到flag
在host文件里进行修改

访问flag.bugku.com 就可也出现flag。

KEY{DSAHDSJ82HDS2211}


8.你必须让他停下

打开网站后网页一直都在跳动,原因在于前端这串js,

<script language="JavaScript">
function myrefresh(){
window.location.reload();
}
setTimeout('myrefresh()',500); 
</script>


想着flag可能就在网页中,用bp进行一帧一帧的看,然后无限重放,即可获得flag。

flag{dummy_game_1s_s0_popular}

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值