ctfshow re2

article/2025/6/17 13:49:50

打开附件如下
在这里插入图片描述勒索病毒我去上网查了一下,发现是通过加密数据,所以这个题可能和加密有关,除了勒索病毒还有一个enflag.txt打开如下
在这里插入图片描述
先不管这个
第一步查壳这个exe程序
在这里插入图片描述无壳。
第二步用ida32位打开这个
shift+f12查看字符
在这里插入图片描述有个充值成功,跟进
在这里插入图片描述可以看到这个字符串 DHmqqvqxB^||zll@Jqjkwpmvez{
可以知道是异或,脚本如下

s="DH~mqqvqxB^||zll@Jq~jkwpmvez{"
key=""
for c in s:key+=chr(ord(c)^0x1f)
print(key)
#[Warnning]Access_Unauthorized

[Warnning]Access_Unauthorized结合这个可以猜测这是个密钥,那个enflag是个密文,用winhex打开
在这里插入图片描述0xC3,0x82,0xA3,0x25,0xF6,0x4C,
0x36,0x3B,0x59,0xCC,0xC4,0xE9,0xF1,0xB5,0x32,0x18,0xB1,
0x96,0xAe,0xBF,0x08,0x35
把这个放进data

#include<stdio.h>
void rc4_init(unsigned char* s, unsigned char* key, unsigned long Len_k) //初始化函数
{int i = 0, j = 0;char k[256] = { 0 };unsigned char tmp = 0;for (i = 0; i < 256; i++) {s[i] = i;k[i] = key[i % Len_k];}for (i = 0; i < 256; i++) {j = (j + s[i] + k[i]) % 256;tmp = s[i];s[i] = s[j];s[j] = tmp;}
}
void rc4_crypt(unsigned char* Data, unsigned long Len_D, unsigned char* key, unsigned long Len_k) //加解密
{unsigned char s[256];rc4_init(s, key, Len_k);int i = 0, j = 0, t = 0;unsigned long k = 0;unsigned char tmp;for (k = 0; k < Len_D; k++) {i = (i + 1) % 256;j = (j + s[i]) % 256;tmp = s[i];s[i] = s[j];s[j] = tmp;t = (s[i] + s[j]) % 256;Data[k] = Data[k] ^ s[t];}
}
int main()
{unsigned char key[] = "[Warnning]Access_Unauthorized";unsigned long key_len = sizeof(key) - 1;unsigned char data[] = { 0xC3,0x82,0xA3,0x25,0xF6,0x4C,0x36,0x3B,0x59,0xCC,0xC4,0xE9,0xF1,0xB5,0x32,0x18,0xB1,0x96,0xAe,0xBF,0x08,0x35};rc4_crypt(data, sizeof(data), key, key_len);for (int i = 0; i < sizeof(data); i++){printf("%c", data[i]);}printf("\n");
}

运行如下
在这里插入图片描述flag{RC4&->ENc0d3F1le}


http://chatgpt.dhexx.cn/article/NAXytZwv.shtml

相关文章

CTFShow re2 (RC4

参考&#xff1a;CTFSHOW re2 本文&#xff1a;跟着大佬的博客一步一步做CTFShow re2的记录 IDA分析 有个比较函数 re一下 s "DH~mqqvqxB^||zllJq~jkwpmvez{" s1 for i in s:s1 chr(ord(i) ^ 0x1f) print(s1)得到 再四处看看 跟进sub_401028 四个sub点进去看看…

2023年天津市逆向re2.exe解析-比较难(超详细)

2023年天津市逆向re2.exe解析(较难) 1.拖进IDA里进行分析2.动态调试3.编写EXP脚本获取FLAG4.获得FLAG1.拖进IDA里进行分析 进入主程序查看伪代码 发现一个循环,根据行为初步判定为遍历输入的字符并对其ascii^7进行加密 初步判断sub_1400ab4ec为比较输入和flag的函数 跟进u…

RE2..

RE2 Simple and Effective Text Matching with Richer Alignment Features Simple and Effective Text Matching with Richer Alignment Features 论文提出了一种快速且高效的文本匹配模型&#xff0c;建议保留三个可用于序列间对齐的关键特征&#xff1a;原始点对齐特征、先前…

RE2正则表达式引擎资料

2019独角兽企业重金招聘Python工程师标准>>> 官网RE2&#xff0c;C正则表达式库实战《自动机理论 语言和计算导论》 转载于:https://my.oschina.net/letiantian/blog/280743

Go与Re2正则

Golang支持Re2正则标准&#xff08;实际上并不支持全部&#xff0c;只是Re2语法的子集&#xff09;&#xff0c;本文介绍一些Golang正则支持语法的解释。 1、Regex Flags 1、贪婪和非贪婪&#xff1a; 正则匹配的时候一个个字符向后找。贪婪就是即使已经匹配了还会尝试向后找…

【文本匹配】之 RE2论文详解

RE2 - Simple and Effective Text Matching with Richer Alignment Features 这篇论文来自阿里&#xff0c;19年的ACL论文。《Simple and Effective Text Matching with Richer Alignment Features》&#xff1a;https://arxiv.org/abs/1908.00300 Intro 很多深层网络只拥有…

文本匹配、文本相似度模型之RE2

简单有效的文本匹配&#xff0c;具有更丰富的对齐功能 github: https://github.com/daiyizheng/shortTextMatch/blob/master/src/DL_model/classic_models/models/RE2.py 本文作者提出了一种快速、强神经网络的通用文本匹配方法。保持序列间对齐可用的三个关键特征:原始点方向…

RE2,C++正则表达式库实战

RE2简介 RE2是,一个高效、原则性的正则表达式库&#xff0c;由Rob Pike和Russ Cox两位来自google的大牛用C实现。他俩同时也是Go语言的主导者。Go语言中的regexp正则表达式包&#xff0c;也是RE2的Go实现。 RE2是&#xff0c;一个快速、安全&#xff0c;线程友好&#xff0c;PC…

DB9接口定义

注意上表是公头的引脚定义&#xff0c;公头与母头的引脚编号是轴对称的&#xff0c;因此将公头和母头连接时是相同序号的引脚相连接。 作为串口使用时要注意&#xff0c;公头的2号是RXD&#xff0c;因而母头的2号是TXD&#xff0c;公头的3号是TXD&#xff0c;因而母头的3号是RX…

LIN DB9定义

没找到合适的图片所以用上图代替&#xff0c;在LIN中&#xff0c;图中CAN_H&#xff08;7&#xff09;为LIN线&#xff0c; GND&#xff08;3&#xff09;接地. 实物图如下

DB9串口接口定义

公头 母头 定义不同 连线都是2 3 5 但是 公头 2是RXD 3是Txd 母头 2是TXD 3是RXD而且两者的排列顺序,画pcb时注意 以上是公头接线方法~ 母头原理图接线 交叉 但是上图的db9的原理图是母的画法啊&#xff0c;应该是直接从ad的库中调去的&#xff0c;ad的库中只有着一种画法 例子…

DB9定义图

DB9接口定义图

DB9接口定义 串口接口定义 MAX232电路

我们知道老式电脑主板上面都会有9针的串口&#xff0c;即使到了现在&#xff0c; 很多人还是用串口来通信&#xff0c;这是做嵌入式与工控的一上很好的上位要与下位机通信的方案&#xff0c; 因为他接口简单&#xff0c;编程容易。 我们来讲一下定义&#xff1a; 首先普通主…

计算机九针孔什么接口,db9接口-USBCAN-I设备的DB9针串口头中的针脚是如何定义的-电气资讯 - 电工屋...

db9接口定义RXD和TXD接线的颜色怎么接 1)使用串口直通线。 设计电路时&#xff0c;单片机的RXD连接电路板DB9的TXD&#xff0c;单片机的TXD连接电路板DB9的RXD&#xff0c;具体实现可在232电平转换芯片处反接。 (2)使用串口交叉线。 设计电路时&#xff0c;因为串口线已做交叉&…

RS-232C接口定义(DB9)

RS-232C接口定义(DB9)引脚 定义 符号 1 载波检测 DCD&#xff08;Data Carrier Detect&#xff09; 2 接收数据 RXD&#xff08;Received Data&#xff09; 3 发送数据 TXD&#xff08;Transmit Data&#xff09; 4 数据终端准备好 DTR&#xff08;Data Terminal Rea…

DB9 ------ 接口定义

下图是母座和公座的接口定义&#xff1a; 特别提醒&#xff1a;以上是公座和母座的接口定义&#xff0c;如果是串口线&#xff0c;RXD就变成TXD&#xff0c;以此类推。 转载于:https://www.cnblogs.com/god-of-death/p/9368120.html

硬件DB9接口定义

DB9接口定义及串口芯片定义连接 双向同头线交叉&#xff0c;双向异头线直通