catflag上逆向题

class

下载后得到

用Java写的 且是.class后缀文件 用Java反编译工具Java Decompiler

下载地址:Java Decompiler (java-decompiler.github.io)

需要配置java环境 没配置的可以看这篇博客Java 开发环境配置_w3cschool

这把没用Java编译工具 用的在线反编译平台Java decompiler online (javadecompilers.com)

得到源码

import java.util.ArrayList;
import java.util.Scanner;

// 
// Decompiled by Procyon v0.5.36
//

public class Reverse
{
    public static void main(final String[] array) {
        final Scanner scanner = new Scanner(System.in);
        System.out.println("Please input the flag \uff1a");
        final String next = scanner.next();
        System.out.println("Your input is \uff1a");
        System.out.println(next);
        Encrypt(next.toCharArray());
    }
    
    public static void Encrypt(final char[] array) {
        final ArrayList<Integer> list = new ArrayList<Integer>();
        for (int i = 0; i < array.length; ++i) {
            list.add(array[i] + '@' ^ 0x20);
        }
        final int[] array2 = { 131, 129, 148, 134, 140, 129, 135, 155, 138, 129, 150, 129, 191, 133, 129, 147, 153, 191, 133, 129, 147, 153, 157 };
        final ArrayList<Integer> o = new ArrayList<Integer>();
        for (int j = 0; j < array2.length; ++j) {
            o.add(array2[j]);
        }
        System.out.println("Result:");
        if (list.equals(o)) {
            System.out.println("Congratulations\uff01");
        }
        else {
            System.err.println("Error\uff01");
        }
    }
经过ywmow师傅测试后发现 当你输入一个数后 他会按照相应的编码进行控制 并输出经过编码后的格式

而131, 129, 148, 134, 140, 129, 135, 155, 138, 129, 150, 129, 191, 133, 129, 147, 153, 191, 133, 129, 147, 153, 157 即是编码后的flag

所以可以得知k对应的为139,而如果用python的chr编码 差距为32

构造找出flag脚本如下:

n=[131, 129, 148, 134, 140, 129, 135, 155, 138, 129, 150, 129, 191, 133, 129, 147, 153, 191, 133, 129, 147, 153, 157]
c=''
for x in n:x=int(x-32)print(chr(x))c+=chr(x)
print(c)

easypython

下载后得到一个exe文件 反编译工具:pyinstxtractor.py

下载地址:https://nchc.dl.sourceforge.net/project/pyinstallerextractor/dist/pyinstxtractor.py

把下载得到的py

放到exe同样的目录下 用cmd的cd命令 进入

反编译命令为

python3 pyinstxtractor.py flag.exe

然后得到

用记事本打开flag文件得到

zygsctf{sq4c5ej2odk639znluayft8imxw0h7bp1grv}

helloword catflag逆向相关推荐

  1. BUUCTF-Reverse:helloword + findit(安卓逆向)

    Helloword+findit Helloword findit 这两道题是安卓逆向的题目~ 第一次接触安卓逆向的题目~ 工具下载: https://down.52pojie.cn/Tools/ H ...

  2. Windows破解逆向-CrackMe_1实例(使用IDA Pro修改静态区资源)

    这里开发了一个CrackMe实例,源码打包下载如下: https://github.com/fengfanchen/Qt/tree/master/CrackMe_1 程序是这个样子的: 程序从10s开 ...

  3. Windows破解逆向-CrackMe_1实例(使用OpenProcess修改内存中的值)

    这里开发了一个CrackMe实例,源码打包下载如下: https://github.com/fengfanchen/Qt/tree/master/CrackMe_1 程序是这个样子的: 程序从10s开 ...

  4. android逆向分析so,Android逆向——so反编译分析由浅入深(回帖奖励)

    如果可以,请自己编写so文件库,然后进行反编译自行学习.这样的进步是最快的. 这篇分析仅此一份,心血付出. 0x00 前言 说明 1.之前学习Android逆向的时候跑的太快,很多东西没有咀嚼直接吞咽 ...

  5. BUUCTF Reverse helloword、findit

    BUUCTF Reverse helloword.findit helloword findit 一天一道CTF题目,能多不能少 记录一下这两道题,这两道题是安卓逆向的题目~ 第一次接触安卓逆向的题目 ...

  6. Bullet学习教程 入门 配置方法及HelloWord示例

    关于学习Bullet的初衷是想在我的试验中加入更可信的三维碰撞检测机制,在这么多物理库的选择的为什么选择Bullet的主要原因是它的开源性以及支持IOS,其实这是我的肤浅的认识,关于Bullet.Ph ...

  7. 正向最大匹配 和逆向最大匹配对比比较

    正向最大匹配法 &逆向最大匹配法 原理对比 下面介绍的分词算法中最简单的正向最大匹配和反向最大匹配. 这种两种方法都是机械分词方法,它是按照一定的策略将待分析的汉字串与一个"充分大的 ...

  8. 同向逆向、多车道线检测

    同向逆向.多车道线检测 输入输出接口 Input: (1)左右两个摄像头采集的实时图像视频分辨率(整型int) (2)左右两个摄像头采集的实时图像视频格式 (RGB,YUV,MP4等) (3)摄像头标 ...

  9. asp.net webform 复制窗体代码_逆向分析流氓软件自我复制以及防御思路

    一.前言 好长时间没有投稿了,之前被发布的稿件,也收到了Freebuf的现金奖励,同时陆陆续续收到好多圈类人士的夸奖,备受鼓舞,觉得自己应该坚持投稿,为安全事业略尽绵薄之力!最近任务不重,正好有时间投 ...

最新文章

  1. 基于Keras的CNN/Densenet实现分类
  2. 《图解密码技术》分组密码(5) 输出反馈OFB模式
  3. NLP Chinese Corpus:大规模中文自然语言处理语料
  4. untitled软件怎么用_苹果手机怎么用4G网络于App Store下载超过200MB以上的软件
  5. redis之proxy集群之twemproxy
  6. PostgreSQL的中文拼音排序
  7. 2019全球最具颠覆性的17大公司
  8. pr预设的卷及内核锐化是什么_PR2018-认识模糊和锐化特效使用
  9. C++沉思录(Ruminations on C++)中文第2版电子书pdf下载
  10. C++动态数组类模板
  11. 上海相会 | 冒志鸿与丁磊畅谈ArcBlock未来宏图
  12. UDS之浅谈14 服务
  13. java.io.IOException: 远程主机强迫关闭了一个现有的连接
  14. 【我是初学者】关于获取配置文件.properties的常见三种方式--只是常见的方式,欢迎牛神来加瓦
  15. Digilent Analog Discovery Studio视频教程:DAQWare for Digilent AD 1.0.3新功能
  16. ArcPY实现分图斑批量制图
  17. ACM:nbsp;polya定理+hashnbsp;数论题nbsp;pojnbsp;3…
  18. 计算机宣传部职责,计算机系团总支宣传部第一学期工作总结
  19. 如何快速写完SCI论文
  20. 代码之美90后“女神”李雪

热门文章

  1. 【环境部署系列 04】Ascend 310(推理)ARM服务器 Ubuntu系统环境部署
  2. 布隆过滤器之误识别率FPP公式的推导
  3. 创业干货:在众说纷纭中找到前进的方向
  4. 二十一世纪大学英语读写教程(第三册)学习笔记(原文)——1 - How I Got Smart(我是如何变聪明的)
  5. 吉安赣吉计算机学校,吉安市撤销32所民办中职学校和2所公办学校中专部(班)...
  6. 李建忠设计模式之”数据结构“模式
  7. “机器学习就是现代统计学”
  8. 建设“东数西算”工程的实施办法以及背后价值
  9. Check failed: top_shape[j] == bottom[i]-shape(j) (1 vs. 2) All inputs must have the same shape, exc
  10. 我用 Python 找出了删除我微信的所有人并将他们自动化删除了