AWCTF萌新赛web题WP

1、pacman
在这里插入图片描述
一个游戏,看到题目直接看网页源代码
因为不能邮右键,所以直接在view-source:加网址
view-source:http://49.232.149.138:11521/pacman/
在这里插入图片描述
看到两个js文件,都打开

在index.js中发现flag
在这里插入图片描述
base64解密
在这里插入图片描述
然后将解密出来的那个js代码放入控制台中,然后能出来flag
在这里插入图片描述
2、real_ez在这里插入图片描述
在这里插入图片描述

这题比较简单,主要靠百度
在这里插入图片描述
可以发现title上就有flag
在这里插入图片描述
在这里插入图片描述
可以直接去腾讯云查看
https://buy.cloud.tencent.com/price/eip#E8AEA1E8B4B9E591A8E69C9F
在这里插入图片描述
然后突然发现title又变了
在这里插入图片描述

在这里插入图片描述
直接在对话框中输入e6b0b4e6b0b4e5a4a7e5a4a7e59b9be5a484e5afbbe689bee5b9b8e5ad98e880857a7863
然后回车
在这里插入图片描述
扫一次啊二维码
在公众号上发一个flag,然后机会出来最后的flag片段
串接起来提交即可

3、web2
这个题考察了php伪协议
在这里插入图片描述

<?php

$flag = "flag{***}";

highlight_string(str_replace($flag, "flag{***}", file_get_contents(__FILE__)));

extract($_GET);

if(isset($file) && file_get_contents($file) == "hello hebust") {
    print($flag);
}

首先先分析下一些php函数的意思
extract() 函数:
extract() 函数从数组中将变量导入到当前的符号表。
extract($_GET);把客户端中get请求的变量名取出来
file_get_contents() 函数把整个文件读入一个字符串中。
file_get_contents()这个函数是可以绕过的
使用php://input伪协议绕过
① 将要GET的参数?xxx=php://input
② 用post方法传入想要file_get_contents()函数返回的值
用data://伪协议绕过
将url改为:?xxx=data://text/plain;base64,想要file_get_contents()函数返回的值的base64编码
或者将url改为:?xxx=data:text/plain,(url编码的内容)
最终payload
http://49.232.149.138:11521/web2.php?file=data://text/plain;base64,aGVsbG8gaGVidXN0

flag{75b478b4-d5c1-47d2-9716-5dee9b312d72}

4、local
在这里插入图片描述
这个题目比较简单
在这里插入图片描述
F12发现提示
在这里插入图片描述
输入密码后:
在这里插入图片描述
需要在本地才能访问,本地就是127.0.0.1
需要改下包即可,这里用hackbar
在这里插入图片描述
5、web0

在这里插入图片描述

<?php

$flag = 'flag{***}';

highlight_string(str_replace($flag, "flag{***}", file_get_contents(__FILE__)));

$_GET['id'] = urldecode($_GET['id']);

if (isset($_GET['uname']) and isset($_POST['passwd'])) {
    if ($_GET['uname'] == $_POST['passwd'])

        print 'passwd can not be uname.';

    else if (sha1($_GET['uname']) === sha1($_POST['passwd'])&($_GET['id']=='me'))
        die('Flag: '.$flag);
    else
        print 'sorry!';
}

这一题的关键主要在于

sha1($_GET['uname']) === sha1($_POST['passwd']

这个的比较,因为===是不能比较数组的所以可以使用数组绕过
最终的payload:
在这里插入图片描述
6、web1
在这里插入图片描述

<?php
$flag = "flag{***}";

highlight_string(str_replace($flag, "flag{***}", file_get_contents(__FILE__)));

function encode($str){
    $_o=strrev($str);
    for($_0=0;$_0<strlen($_o);$_0++){
       
        $_c=substr($_o,$_0,1);
        $__=ord($_c)-1;
        $_c=chr($__);
        $_=$_.$_c;   
    } 
    return (base64_encode($_));
}

print(encode($flag));
fDVjMGRlMC9kNDRkMDg3ZTQwMmRhNGU4NTIwMTAwNDNkemZga2U=

写一个逆向算法即可

<?php
$str="fDVjMGRlMC9kNDRkMDg3ZTQwMmRhNGU4NTIwMTAwNDNkemZga2U=";
$_="";
$_o = base64_decode($str);
for($_0=0;$_0<strlen($_o);$_0++){
	$_c=substr($_o,$_0,1);
	$__=ord($_c)+1;
	$_c=chr($__);
	$_=$_.$_c;
}
$_=strrev($_);
echo $_;
?>

在这里插入图片描述

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值