Reverse02

小刘根据自己所学的知识制作了一个打地鼠的游戏,玩起来十分的有趣,但是通过发现中重要信息有泄露风险,你能找出其中的漏洞在哪里吗?

提交的flag格式:wdflag{xxxxx}

jadx-gui-1.4.4.exe 解密 jar

该路径下找到

通过 AI 生成解密脚本

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.Base64;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;

public class DecryptBatch {

    private static final String ALGORITHM = "AES";
    private static final String SECRET_KEY = "Y4SuperSecretKey";
    private static final String INPUT_FILE = "pass.txt"; // 输入文件路径

    public static void main(String[] args) {
        try {
            BufferedReader reader = new BufferedReader(new FileReader(INPUT_FILE));
            String line;
            while ((line = reader.readLine()) != null) {
                try {
                    String decrypted = decrypt(line);
                    System.out.println("Encrypted: " + line + ", Decrypted: " + decrypted);
                } catch (Exception e) {
                    System.err.println("Failed to decrypt: " + line);
                    e.printStackTrace();
                }
            }
            reader.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public static String decrypt(String encrypted) throws Exception {
        SecretKeySpec keySpec = new SecretKeySpec(SECRET_KEY.getBytes(StandardCharsets.UTF_8), ALGORITHM);
        Cipher cipher = Cipher.getInstance(ALGORITHM);
        cipher.init(Cipher.DECRYPT_MODE, keySpec);

        byte[] decoded = Base64.getDecoder().decode(encrypted);
        byte[] decryptedBytes = cipher.doFinal(decoded);

        return new String(decryptedBytes, StandardCharsets.UTF_8);
    }
}

pass.txt 内容为 文件中的密文

解密得到 flag

WEB01

后台账号密码为 admin/admin

这里可以通过测试,也可以通过给的本地源码。查看。

通过文件包含进行 getshell

任意位置上传图片马。 这里我选择的后台管理员的头像上传

上传之后,通过模板进行包含引用。

里面通过如下语句进行包含

{eyou:include file=“uploads/allimg/20241104/1-241104114F5509.png” /}

访问首页拿到 flag

Web3

访问 web 界面。通过目录扫描可以发现 robots.txt

其中 bmp 图片 通过 wbStego4 工具可以进行解密。

下载地址 :

http://wbstego.wbailer.com/

得到内容为 ssh 公钥。我们需要根据公钥得到私钥。

RW_IHZ.KFY>HHS-IHZ AAAAB3NzaC1yc2EAAAADAQABAAABAHqSISYfkwuFeX20KTtyDhpG/nmyMK5MrmjKILUbLxpEtgw+4i0sIR4sWtNpGSVAMLZ4YO8EY6p7FBw0z4u0ALo2qC8I763lfKlNXH1WHWexRHd72MEpxpOzt79ukabEr7OWpRdDEISj3MyEalVNYGTKMt/TQWR/dnFd+TsDB2aRDBQQq9VfQhZ9Z864huQ4Du8PKg42plzfRPJsEhe4JpE0GW5QRap9ZNHM/4fSSHJlwqbBqGdeIjw+U7zY/RokxK979+f7SN6qMc9FzAUTnbwFGLpZe4ohz4pPJNrmRKfERTSKDoXw1krdDZuEZzCgiprpR8WqLvGoDXhYstcrgWU=

将前面的RW_IHZ.KFY>HHS-IHZ 替换为 ssh-rsa

利用 RSACtfTool.py 提取私钥

下载地址: RsaCtfTool:RSA attack tool (mainly for ctf) – retrieve private key from weak public key and/or uncipher data – GitCode

登录即可拿到 flag

作者:SwBack

物联沃分享整理
物联沃-IOTWORD物联网 » 网鼎杯-玄武组-WP-部分

发表回复