攻防世界——Guess-the-Number

本文介绍了一个使用Java编写的简单程序,它包含一个名为guess的类,用于执行XOR加密和解密操作。程序中通过BigInteger类实现十六进制字符串的异或运算,并在main方法中演示了解密特定输入的逻辑。
package p000;

import java.math.BigInteger;

/* renamed from: guess */
/* loaded from: 6a8bee79ee404194bb8a213a8a0e211d.jar:guess.class */
public class guess {
    static String XOR(String _str_one, String _str_two) {
        BigInteger i1 = new BigInteger(_str_one, 16);
        BigInteger i2 = new BigInteger(_str_two, 16);
        BigInteger res = i1.xor(i2);
        String result = res.toString(16);
        return result;
    }

    public static void main(String[] args) {
        if (args.length > 0) {
            try {
                int guess_number = Integer.parseInt(args[0]);
                if (1545686892 / 5 == guess_number) {
                    int i = 349763335 + 345736730;
                    String answer = XOR("4b64ca12ace755516c178f72d05d7061", "ecd44646cfe5994ebeb35bf922e25dba");
                    System.out.println("your flag is: " + answer);
                } else {
                    System.err.println("wrong guess!");
       
### CTF misc guess-xsctf 题解 攻防世界攻防世界相关的misc类别中,guess-xsctf题目通常涉及对某些隐藏逻辑的猜测和验证。以下是对该题目的详细解析: #### 题目分析 根据提供的引用内容[^3],可以推测此题目可能与Base64编码或多次解码有关。此外,misc类别的题目通常需要对文件、字符串或其他数据进行处理以提取关键信息。因此,guess-xsctf可能要求参赛者通过脚本自动化多次解码操作来获取最终答案。 #### 解题步骤概述 1. **确定输入格式**:题目可能提供一个经过多次Base64编码的字符串作为输入。 2. **编写解码脚本**:使用Python脚本实现多次Base64解码功能,直到无法继续解码为止。 3. **提取最终结果**:解码完成后,检查输出是否包含flag或其他提示信息。 以下是基于上述思路的Python脚本示例: ```python # -*- coding:utf-8 -*- import base64 def base64decoding(src): num = 0 try: while True: src = base64.b64decode(src).decode('utf-8', errors='ignore') num += 1 except Exception as e: print(f"[+] The result of decoding is: {src}") print(f"[+] The number of decoding is: {num}") if __name__ == '__main__': encoded_string = "需要多次解码的内容" # 替换为实际题目提供的字符串 base64decoding(encoded_string) ``` #### 注意事项 - 确保输入字符串正确无误,避免因字符错误导致解码失败[^3]。 - 如果解码后仍无法找到flag,需结合题目描述进一步分析是否存在其他隐藏逻辑。 #### 示例输出 假设输入字符串为`Sm9objogV2VsY29tZQ==`,运行脚本后可能得到如下输出: ``` [+] The result of decoding is: John: Welcome [+] The number of decoding is: 1 ``` #### 结论 通过上述方法,可以有效解决guess-xsctf题目中的多次Base64解码问题。如果题目还涉及其他复杂逻辑,则需结合具体提示进一步探索。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

name_name123

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值