Bugku-web(需要管理员)

WriteUp1

题目信息

解题思路

打开页面,

无任何有效信息,点击try again不会跳转其他页面,第二个连接是个广告

直接打开kali,扫描页面,看是否有隐藏文件夹

用dirsearch -u 命令

看到有一个颜色不同的页面robots.txt

访问robots.txt

看到有文件resusl.php文件,访问resusl.php

提示我不是管理员,且以get方式获取一个名为x的变量

直接在url中给x赋值为admin即可

得到flag

使用工具

Kali

dirsearch

Flag

flag{803e969b0700474c740ef52654602f56}

总结

通过本题学到:

robots协议

WriteUp2

题目信息

解题思路

打开页面,

查看源代码

点击code.txt

php 复制代码
<?php
if(isset($_GET['v1']) && isset($_GET['v2']) && isset($_GET['v3'])){ # 判断 URL 上 ? 后面这种 GET 传递的查询参数,v1 和 v2 和 v3 都得有值才进入这个 if 判断体里执行
    $v1 = $_GET['v1']; # 提取 v1 的值
    $v2 = $_GET['v2']; # 提取 v2 的值
    $v3 = $_GET['v3']; # 提取 v3 的值
    if($v1 != $v2 && md5($v1) == md5($v2)){ # 判断 v1 和 v2 的值不能相当,但是 hash 值弱判断得相等(前面做过类似的,有 2 个固定的值翻翻)
        if(!strcmp($v3, $flag)){ # strcmp 是 PHP 中的一个字符串比较函数,比较 2 个字符串是否相等:
# 情况1:$v3 和 $flag 完全相同包括字符顺序和大小写,则返回 0(才能进入因为前面有个 !), !0 才是真
# 情况2:$v3 大于 $flag,则返回正数
# 情况3:$v3 小于 $flag,则返回负数
            echo $flag;
        }
    }
}
?>

使两个if里的条件为true即可

v1赋值为MMHUWUV

v2赋值为NOOPCJF

因为strcmp 比较数组时返回null

v3[]=1

在url中传递三个参数即可

得到flag

Flag

flag{2a706404c7058ebe934e4b7255801421}

总结

通过本题学到:

知识点1:当 strcmp 比较数组类型时,会返回 null

知识点2:url?v3[]=666, 这种格式会让 PHP 把参数名和值转换成数组类型,$v3=['666']。

而 url?v3=[666] 这种格式会让 PHP 把参数名和值设置成 "[]" 左右中括号的字符串,不是数组,$v3="['666']"

相关推荐
cch89182 小时前
PHP vs Java:主流编程语言深度对比
java·开发语言·php
unable code2 小时前
[HNCTF 2022 WEEK2]ez_ssrf
网络安全·web·ctf·1024程序员节
吴声子夜歌2 小时前
Node.js——os操作系统模块
开发语言·node.js·php
FlyChat2 小时前
PHP全栈攻坚:智搜搜索从0到1搭建实战——融合ES/Redis/Kafka多组件+多语言爬虫的企业级搜索引擎架构解析
elasticsearch·搜索引擎·php
不会写DN12 小时前
PHP 中的文件读写与上传
android·开发语言·php
hangbobo16 小时前
宝塔面板 PHP 7.4 安装 swoole_loader 解密扩展
php·swoole·宝塔面板
xingxin3217 小时前
PHP代码分析溯源(第3题)
安全·web安全·网络安全·php
桌面运维家17 小时前
BGP路由优化实战:加速收敛,提升网络稳定性
网络·windows·php
徒 花18 小时前
web前端技术知识复习
前端·html·web