首页 > 编程语言 >Java逆向解密

Java逆向解密

时间:2023-05-02 10:11:11浏览次数:60  
标签:逆向 Java int 191 解密 flag 136 java

(这里是个解题的分界,涉及到了java,以后还会碰到py)依旧查壳。

java的一般都是64位,按照老套路扔进IDA中,你会发现,你看不懂它在干嘛了,而且没有伪代码给你看了,因为IDA无法反编译java的文件,我们需要另一个软件jadx-gui来进行对java文件的反编译。拖进工具里,如下:

简单的一个暴力枚举就可以了,脚本如下:(这里就不解释里边的函数作用了,java应该都会吧)

int main(){
    string flag = "";
    int KEY[] = {180, 136, 137, 147, 191, 137, 147, 191, 148, 136, 133, 191, 134, 140, 129, 135, 191, 65};
    for (int i = 0; i < 18; i++) {
        for (int j = 32; j <= 126; j++) {
            if(((j + '@') ^ 32) == KEY[i]){
                flag += char(j);
                break;
            }
        }
    }
    cout << flag << endl;
    return 0;
}

得到flag{This_is_the_flag_!}收工。

标签:逆向,Java,int,191,解密,flag,136,java
From: https://www.cnblogs.com/TFOREVERY/p/17367388.html

相关文章

  • java(1)基础下载安装以及path环境变量配置
    一.java1.java语言跨平台原理(1):这里JVM指的是Java虚拟机,而Java虚拟机根据自己的需求下载不同的版本,有Window版JVM,macOs版JVM,linux版JVM。大概就是在需要运行JAVA应用程序的操作系统上,安装一个与操作系统相对应的java虚拟机(JVM)。2.JRE和JDK(1.)JRE(JavaRuntimeEnvironment)是j......
  • Java的stream操作
    Java中的stream只需告诉做什么,而不用管怎么做1.创建流1.1从数组创建流1.1.1Arrays提供String[]names={"nick","jack","michael","jone","jane"};//Arrays提供的返回流的接口Stream<String>stream=Arrays.stream(strs);查看Array......
  • Java内置工具类
    Java内置工具类1.String类首先,String类的值不能被更改如果对String对象操作(增加长度等),会新开辟一块内存空间,再更改String的指向(如果有的话),而原来字符串不变(可能指向被更改或者不存在)。因此如果要大量更改String类型时不推荐用他,应该用StringBuffer或者StringBuliderStrin......
  • 2021Business CTF syncopation逆向
    开始将题目拖入工具后,定位到main函数,这里因为ida看伪代码有点头大,这里我就用ghidra来逆向题目伪代码:非常简单就能看出这个程序做了什么voidmain(void){intiVar1;undefined8extraout_RDX;longlVar2;size_t*__n;EVP_PKEY_CTX*ctx;longin_FS_OFFSET;c......
  • Java异常
    原文链接:Java里的异常(Exception)详解(一)什么是java里的异常由于java是c\c++发展而来的, 首先我们先看看c语言里的错误.1.c语言里的错误我们实现一个程序的过程包括, 代码编写,编译代码成为程序, 执行程序.其中大部分常见的语法错误都会被编译代码这样部过滤掉. 但......
  • 前端进化笔记-JavaScript(二)
    因为作者学过其他类c语言,就不对大家都熟悉的内容进行赘述了。语法JavaScript区分大小写标识符:变量,函数,属性,函数参数的名称第一个字符必须是字母,下划线(_),美元符号($);关键字、保留字、true、false和null不能用作标识符作者在后续阅读的过程中,发现对各种名称不熟悉导致阅读不......
  • JavaWeb复习笔记
    MysqlsqlDDLDMLDQL约束设计多表查询内连接外连接子查询事务......
  • Java教程:Springboot项目如何使用Test单元测试
    今天早上来公司领导突然分配了任务,就是简单的测试一下实体的添加修改功能,要使用到Juntil单元测试,目前使用springboot项目,jpa,maven管理,回忆起曾经用到过@Test注解,于是开始唰唰唰的写起了测试咧,然鹅,一顿报错,依赖无法注入,空指针,乱七八糟的一大通,无奈开始借助百度,终于实现了单元测试,......
  • java-echart报表插件使用笔记
    java-echart报表插件使用笔记  报表插件Echart java类 packagecom.spring.controller;importjava.io.IOException;importjava.util.Arrays;importjava.util.Date;importjava.util.List;importjavax.servlet.http.HttpServletRequest;importjavax.servle......
  • JAVA创建线程的方式总结
    1.继承Thread类通过继承Thread类,并重写它的run方法,就可以创建一个线程。publicclassTestThread1extendsThread{publicTestThread1(Stringname){super(name);}@Overridepublicvoidrun(){System.out.println(Thread.currentTh......