攻防世界--->地穴

news2024/12/26 9:32:15

前言:学习笔记。

下载 解压 查壳。

64位ida打开。

进入主函数。

很容易得知,这是一个RC4加密。

(题外话)

在reverse中,RC4考点,不会很难。

reverse中RC4关键点就是,抓住异或。

一般解这种题,都可以在xor处下断点去,看看加密后的值。

此题,在RC4加密完后,与0x22进行异或与密文进行对比。

先得到与0x22异或前的数据。(flag_RC4_encode)

编写RC4解密脚本:


""" 未魔改的RC4,逆向推导明文"""
def rc4(key, data):
    S = list(range(256))
    j = 0
    out = []

    # Key-scheduling algorithm (KSA)
    for i in range(256):
        j = (j + S[i] + key[i % len(key)]) % 256
        S[i], S[j] = S[j], S[i]

    # Pseudo-random generation algorithm (PRGA)
    i = j = 0
    for char in data:
        i = (i + 1) % 256
        j = (j + S[i]) % 256
        S[i], S[j] = S[j], S[i]
        k = S[(S[i] + S[j]) % 256]
        out.append(char ^ k)

    return bytes(out)

key = b'12345678abcdefghijklmnopqrspxyz' # RC4_Key值。
ciphertext = bytes.fromhex('BCC5127D852384717B392802D351F32C892BA62CAF09') # RC4加密后的值。
plaintext = rc4(key, ciphertext)
print(f"明文:{plaintext.decode()}") # 解密。

在线工具也可以。

flag{nice_to_meet_you}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2115035.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Open a folder or workspace... (File -> Open Folder)

问题:vscode Open with Live Server 时 显示Open a folder or workspace... (File -> Open Folder)报错 解决:不可以单独打开文件1.html ; 需要在文件夹里打开 像这样

【哈希表】深入理解哈希表

目录 1、哈希表简介2、哈希函数2.1、概念2.2、常用的哈希函数2.2.1、直接定址法2.2.2、除留余数法2.2.3、平方取中法2.2.4、基数转换法 3、哈希冲突3.1、概念3.2、开放地址法【闭散列:key存放到冲突位置的“下一个”空位置】3.3、链地址法【开散列:冲突位…

SAM 2:分割图像和视频中的任何内容

文章目录 摘要1 引言2 相关工作3 任务:可提示视觉分割4 模型5 数据5.1 数据引擎5.2 SA-V数据集 6 零样本实验6.1 视频任务6.1.1 提示视频分割6.1.2 半监督视频对象分割6.1.3 公平性评估 6.2 图像任务 7 与半监督VOS的最新技术的比较8 数据和模型消融8.1 数据消融8.2…

dr 航迹推算 知识介绍

DR(Dead Reckoning)航迹推算是一种在航海、航空、车辆导航等领域中广泛使用的技术,用于估算物体的位置。DR航迹推算主要通过已知的初始位置和运动参数(如速度、方向)来预测物体的当前位置。以下是 DR 航迹推算的详细知…

跨平台电商数据整合:item_get API在电商大数据平台中的角色

在电商行业蓬勃发展的今天,跨平台运营已成为众多商家的必然选择。然而,随之而来的数据孤岛问题却成为了制约电商企业进一步发展的瓶颈。为了解决这一问题,电商大数据平台应运而生,而item_get API作为获取商品详情的关键接口&#…

统计学第6天

1、变量间关系的度量 函数关系 (1)是一一对应的确定关系; (2)设有两个变量x和y,变量y随x一起变化,并完全依赖于x,当x取某个数值时,y根据确定的关系取相应的值,称y是x的…

建设网盘聚合中心—Win10+Alist+RaiDrive

经常需要在网上找各种资源,但遇到 2 个问题: 1. 大部分网盘都需要先将文件保存在自己网盘后才能下载,也就是必须创建对应网盘账号。 2. 有些网盘还必须要下载客户端才能下载文件。 创建账号无法避免,但可以不用下载那么多的客户端…

写在 Pencils Protocol TGE 前:加密市场共识才是王道,拥抱社区

“Pencils Protocol 正在成为本轮市场周期中,加密项目建立共识最有力的工具!” 对于加密项目而言,代币 TGE 是一个非常重要的事情,它不仅仅意味着生态内经济系统的全面启动,同时也意味着项目生态市场的全面开启。当然…

《Rust避坑式入门》第1章:挖数据竞争大坑的滥用可变性

赵可菲是一名Java程序员,一直在维护一个有十多年历史的老旧系统。这个系统即将被淘汰,代码质量也很差,每次上线都会出现很多bug,她不得不加班修复。公司给了她3个月的内部转岗期,如果转不出去就会被裁员。她得知公司可…

AF透明模式/虚拟网线模式组网部署

透明模式组网 实验拓扑 防火墙基本配置 接口配置 eth1 eth3 放通策略 1. 内网用户上班时间(9:00-17:00)不允许看视频、玩游戏及网上购物,其余时 间访问互联网不受限制;(20 分) 应用控制策略 2. 互联…

二维空间向量的p范数等密度轨迹

图2-52:二维空间向量的 ℓ p \ell p ℓp范数等密度轨迹。 想过两种方式,还是放在一起省地方。 禹晶、肖创柏、廖庆敏《数字图像处理(面向新工科的电工电子信息基础课程系列教材)》 禹晶、肖创柏、廖庆敏《数字图像处理》资源…

数据库系统原理及应用——仓库管理系统

目录 引言 一.需求设计说明书 1.需求分析 2.系统背景 3.系统目标 4.人员分配 5.数据流程图(DFD) 二.概念结构设计 1.局部E-R图 (1)供应商 (2)货物 (3)客户 &…

1-19 平滑处理——双边滤波 opencv树莓派4B 入门系列笔记

目录 一、提前准备 二、代码详解 cv2.bilateralFilter函数用于对图像进行双边滤波。双边滤波是一种保持边缘的平滑技术,常用于图像去噪声和增强图像的细节。函数的四个参数如下: 三、运行现象 四、完整工程贴出 一、提前准备 1、树莓派4B 及 64位系统…

stack smashing detect以及解决之道

0. 简介 相较于其他报错,stack smashing detect这个报错是最令人头疼的段错误种类。“Stack smashing detect” 是指在程序运行过程中检测到栈溢出的情况。栈溢出是一种常见的安全漏洞,发生在程序尝试往栈空间写入超过其边界范围的数据时。 1. 常见分类…

改写二进制文件

以下是一些常见的方法和工具: 1. 使用十六进制编辑器 十六进制编辑器 是最直接的工具之一,用于查看和编辑二进制文件中的数据。它允许你以十六进制格式查看和修改文件内容。 常见十六进制编辑器: HxD(Windows)Hex F…

铁路订票系统小程序的设计

管理员账户功能包括:系统首页,个人中心,管理员管理,车次信息管理,基础数据管理,论坛管理,通知公告管理,用户管理,轮播图信息 微信端账号功能包括:系统首页&a…

【linux学习指南】Linux编译器 gcc和g++使用

文章目录 📝前言🌠 gcc如何完成🌉预处理(进行宏替换) 🌠编译(生成汇编)🌉汇编(生成机器可识别代码) 🌠链接(生成可执行文件或库文件)&…

变压器制造5G智能工厂工业物联数字孪生平台,推进制造业数字化转型

变压器制造5G智能工厂工业物联数字孪生平台,推进制造业数字化转型。作为传统制造业的重要组成部分,变压器制造行业也不例外地踏上了数字化转型的快车道。而变压器制造5G智能工厂物联数字孪生平台的出现,更是为这一进程注入了强大的动力&#…

内卷时代无人机培训机构如何做大做强

在当今社会,随着科技的飞速发展,“内卷”一词频繁被提及,反映了各行业竞争日益激烈的现象。对于无人机培训行业而言,如何在这样的时代背景下脱颖而出,实现做大做强的目标,成为每个培训机构必须深思的问题。…

自学C语言-11

** 第3篇 高级应用 ** 第11章 结构体和共用体 迄今为止,我们在程序中用到的都是基本数据类型。但实际开发中,有时简单的变量类型无法满足程序中各种复杂的数据要求,因此C语言还提供了构造类型。构造类型数据是由基本类型数据按照一定规则组成的。 本章致力于使读者了解结…