adworld-EasyRE

2023-11-08

1、拿到exe文件,扔到exeinfo里面看一下,发现是32位无壳
在这里插入图片描述
2、扔到IDA里面,通过[shift+F12]找字符串
在这里插入图片描述
发现"right",双击跟过去
在这里插入图片描述
发现sub_401080调用了这个字符串,跟过去,F5反编译
在这里插入图片描述
对于23行到30行的代码我们猜测是将输入串赋值到byte_40336C里面来,但是不是很确定,我们可以去OD里面确认一下

把文件扔进OD,根据sub_401080函数在IDA中相对位置(汇编代码textview可看见)可以在OD中找到其位置,然后该循环之后打断点
在这里插入图片描述
从图中发现byte_40336C的地址就是0x39336C
F9键开始运行程序,然后输入24个字符,我这里输入了123456789123456789123456,继续F9运行至断点处
使用db 0x39336C查看内存地址的内容,发现就是进行了赋值操作
在这里插入图片描述
那么这道题其实就是将输入串进行了异或后减6的操作,所以解码一下就OK了

s = "xIrCj~<r|2tWsv3PtI\x7fzndka"

flag = ""

for i in range(len(s)):
    flag += chr((ord(s[i]) ^ 6) - 1)

print(flag[::-1])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

adworld-EasyRE 的相关文章

  • Servlet学习(八):Session

    一 Session的基本使用 1 概念 Session 服务端会话跟踪技术 将数据保存到服务端 Session是存储在服务端而Cookie是存储在客户端 存储在客户端的数据容易被窃取和截获 存在很多不安全的因素 存储在服务端的数据相比于客户
  • GDB 格式化结构体输出及记录到文件

    GDB 常用命令参考手册 set print address set print address on 打开地址输出 当程序显示函数信息时 GDB会显出函数的参数地址 系统默认为打开的 show print address 查看当前地址显示
  • JDBC五种连接方式详解

    目录 前言 二 JDBC程序编写步骤 1 总流程图如下 2 五种连接方式 2 1 数据库连接方式一 2 2 数据库连接方式二 2 3 数据库连接方式三 2 4 数据库连接方式四 2 5 数据库连接方式五 总结 前言 JDBC Java Da
  • 【计算机网络】 RTT和RTO

    文章目录 RTT 往返时延 RTO Retransmission Timeout 超时重传时间 RTT 往返时延 RTT Round Trip Time 是计算机网络中的一个重要的性能指标 表示从发送端发送数据开始 到发送端接收到来自接收端
  • STM32学习笔记——EXIT(外部中断)

    目录 一 什么是中断系统 二 中断系统执行流程 三 NVIC 提供中断控制器 CPU的好助手 1 NVIC的作用 STM32 2 NVIC优先级分组 四 EXTI 外部中断 1 EXTI简介 2 EXTI基本结构 3 EXTI框图 五 AF
  • elk笔记12--常见api和设置区别

    elk笔记12 常见api和设置区别 1 freeze 和 close 区别 1 1 freeze介绍 1 2 close介绍 2 persistent 和transient区别 3 两个allocation 说明 本文主要记录 es 中常
  • 《数据结构》将一个带头结点的单链表分解成两个单链表

    将一个带头结点的单链表分解成两个单链表 题目描述 设计一个算法 将一个带头结点的单链表分解成两个具有相同结构的 链表B和C 其中B白哦的结点为A中小于0的结点 C表的结点为A中大于0 的结点 要求B和C 仍利用A表的结点 A表的元素都是非0
  • pyqt5 QLabel详细用法

    QLabel控件类的主要API如下 setAlignment 设置文本的对齐方式 setIndent 设置文本缩进 text 获取文本内容 setText 设置文本内容 selectedText 返回所选择的字符 setBuddy 设置伙伴
  • OpenCV代码提取:遍历指定目录下指定文件的实现

    OpenCV 3 1之前的版本 在contrib目录下有提供遍历文件的函数 用起来比较方便 但是在最新的OpenCV 3 1版本给去除掉了 为了以后使用方便 这里将OpenCV 2 4 9中相关的函数给提取了出来 适合在Windows 64
  • python运行报错:‘NoneType‘ object is not callable

    NoneType object is not callable 空类型对象不可调用 调用了装饰器函数 但是装饰器函数没有返回值 导致使用的函数报错 参照代码的注释 timmer 引用装饰器等于test1 timmer func 所以timm
  • 字节跳动开源 Kelemetry:面向 Kubernetes 控制面的全局追踪系统

    动手点关注 干货不迷路 Kelemetry是字节跳动开发的用于Kubernetes控制平面的追踪系统 它从全局视角串联起多个 Kubernetes 组件的行为 追踪单个 Kubernetes 对象的完整生命周期以及不同对象之间的相互影响 通
  • MongoDB 获取数组中匹配到的第一个元素对象

    例如当前test库中的grade集合中有两条文档数据 如下图所示 相关的两个实体映射类如下 import lombok Data import org springframework data annotation Id import or
  • 政企数智办公潮水里的融云「答卷」

    在这张集合了党政机关 金融保险 交通 能源电力等中大型组织复杂办公需求的高难度答卷上 融云在扎实耐打的通信底层之上 保持灵活的身段和强大的进化能力 稳定而轻盈 在不断变化的环境中正在成为确定性本身 作者 皮爷 出品 产业家 如果说过去两年里
  • 报sslSocketFactory(SSLSocketFactory) not supported on JDK 9+

    使用OkHttpClient的时候 jdk版本1 8 0 151启动不会报错 但jdk版本1 8 0 202启动就会报错 应该是OkHttpClient jdk小版本号高了不行 修改代码如下 public class SSLSocketCl
  • 20.docker之DockerCompose基础进阶

    1 docker compose命令模板 docker compose yml 作用 compose以项目为核心 在项目中定义一组具有相同业务逻辑单元服务运行 注意 在编写docker compose yml文件时 所有的冒号 短横线 后面
  • Spring框架入门基础1:IOC---控制权反转

    Spring框架的优点 方便解耦 简化开发 Spring就是一个大工厂 可以将所有对象创建和依赖关系维护 交给Spring管理 这也是IOC的作用 IOC IOC就是控制反转 将创建对象的过程交给spring进行管理 可以用来减低计算机代码
  • linux命令练习-实验一

    实验序号 一 实验项目 熟悉常用的Linux操作 实验成绩 一 实验目的 为后续上机实验做准备 熟悉常用的Linux操作 1 了解安装Linux的方法 2 熟悉常用的Linux操作 二 实验内容 一 安装Linux Ubuntu 14 以上
  • [12]STM32-NVCI中断优先级管理

    前言 这一篇博客主要讲解NVCI中断优先级分组 优先级设置 因为还没有我还没学到做中断实验 所以有些地方我自己理解得也不是很透彻 这是看了原子哥的视频用自己的话来梳理一下思路 基础知识 STM32 有 84 个中断 包括 16 个内核中断和
  • 网络编程——基础知识

    全文目录 网络发展 协议 OSI七层模型 TCP IP五层 或四层 模型 网络传输 网络地址 IP地址 MAC地址 网络通信的本质 网络发展 网络没有出来之前计算机都是相互独立的 网络就是将独立的计算机连接在一起 局域网和广域网的区别只是范

随机推荐

  • 大数除法(模拟除)

    所谓大数除法就是很大的数 用unsigned long long 都存不下的数 的有关除法的运算 但是以下方法只适合求取高精度对低精度的大数除法可用 也就是说对被除数有限制 一般来说是在int 型的范围内的 include
  • 数据结构第三章栈和队列(一)

    数据结构 第三章栈和队列 include
  • 点云库PCL学习笔记 -- 输入输出IO -- 6.PCL中记录时间长度TicToc 类和系统Time 类

    点云库PCL学习笔记 输入输出IO 6 PCL中记录时间长度TicToc 类和系统Time 类 PCL库中用于记录时间长度的方法 第一种 TicToc 类的方法 添加头文件 include
  • pytorch(仅供自己参考勿看)

    一 安装Anaconda 下载pytorch前最好先安装Anaconda 可以按照以下方法下载 https blog csdn net weixin 50888378 article details 109022585 二 安装pytorc
  • 如何提高for循环的效率--兆易创新一面

    1 实例化变量放在循环外 include
  • 使用Lubuntu开发Android应用

    之前下了个ubuntu来编译Android源码并且开发App 后来发现桌面环境不太好用 而且32位Linux不能顺利编译Android源码 最近有空便重新下载Lubuntu 64位并配置好所有配置 其间颇多不顺 特记录下来 通过下面的步骤连
  • 8.1数据结构作业

    include
  • vue后台管理系统之日志管理模块

    前端的后台的日志管理模块功能的实现 使用的是elementUI框架 这是日志管理模块实现的效果图 div class log header div div div
  • error C2220: warning treated as error - no object file generated的处理方法

    很久以前在win2k DDK写的一个驱动 居然在2003ddk下编译不过去 真是奇怪 环境变量改为win2k 也不行 先是error C2220 warning treated as error no object file generat
  • 基于centos开发的server系统单机部署gp(rpm)

    1 下载安装包 rpm deb或源码 打开greenplum官网https github com greenplum db gpdb releases 下载安装包 或Greenplum Database Greenplum Database
  • 一个公式告诉你为什么程序员要转算法工程师

    原来的标题是 算法工程师工资调查 20170611 今天 2017年6月11日 爬了某招聘网站的十大城市的算法工程师职位 算法工程师 这里的算法工程师包括比较广泛 有做数据科学的 有做图形的 有做信号处理的 之后会统计更细分的领域 十大城市
  • 核酸预约地址查询结果查询小程序

    核酸检测报告结果查询 核酸检测 核酸检测预约 核酸 核酸检测查询 核酸检测报告 核酸检测结果 核酸检测地址导航 检测 核酸检测报告结果查询 核酸检测 核酸检测预约 核酸 核酸检测查询 核酸检测报告 核酸检测结果 核酸检测地址导航 检测 核酸
  • Go官方库RPC开发指南

    Go官方提供了一个RPC库 net rpc 包rpc提供了通过网络访问一个对象的方法的能力 服务器需要注册对象 通过对象的类型名暴露这个服务 注册后这个对象的输出方法就可以远程调用 这个库封装了底层传输的细节 包括序列化 服务器可以注册多个
  • 【多种优化算法比较】混沌引力搜索算法(CGSA)(Matlab代码实现)

    欢迎来到本博客 博主优势 博客内容尽量做到思维缜密 逻辑清晰 为了方便读者 座右铭 行百里者 半于九十 本文目录如下 目录 1 概述 2 运行结果 3 参考文献 4 Matlab代码及文献 1 概述 文献来源 自过去十年以来 启发式优化算法
  • 链表中环的入口结点--LeetCode第142题

    给一个链表 若其中包含环 请找出该链表的环的入口结点 否则 输出null 题解 快慢指针法 快指针一次走两步 慢指针一次走一步 当快慢指针第一次相遇 此时 2 x y n圈周长 x y 相遇以后快指针回到head和慢指针以同样速度每次走一步
  • 【springboot】yml的配置与获取数据:

    一 yml的配置 二 获取yml的配置数据
  • js工厂方法模式

    h1 给我一张名片 工厂方法模式 h1 p 工厂方法模式 Factory Method 通过对产品类的抽象使其创建业务主要负责用于创建多类产品的实例 p p 工厂方法模式本意是说将实际创建对象工作推迟到子类中 这样核心类就成了抽象类 Jav
  • R手册(NLP)--text2vec

    文章目录 分词器 I O 处理 迭代器 支持 create 函数 向量化 主题模型 text2vec 这个 R 包提供了高性能和简洁的 API 来进行文本分析 自然语言处理 分词器 word tokenizer strings 英语分词器
  • 如何从文件最后一行开始读取文件内容

    import java io import java util ArrayList 镜像图像 public class Solution public static void main String args throws Exceptio
  • adworld-EasyRE

    1 拿到exe文件 扔到exeinfo里面看一下 发现是32位无壳 2 扔到IDA里面 通过 shift F12 找字符串 发现 right 双击跟过去 发现sub 401080调用了这个字符串 跟过去 F5反编译 对于23行到30行的代码