新160个crackme - 091-DOSKEY-CRACKME2

运行分析

  • 需破解Name和Password

PE分析

  • upx壳,32位

手动脱壳

  • x32dbg打开程序,按一下F8,根据ESP定律,在此处下断点
  • 按一下F9,两下F8,来到OEP处00401000
  • 打开Scylla,点击转储保存文件
  • 点击IAT自动搜索,点击获取导入,点击恢复转储,选择上一步保存的文件

  • 使用DIE查看,发现脱壳成功,程序为MFC程序

静态分析&动态调试

  • ida搜索字符串,双击进入

  • 通过静态分析,逻辑如上

  • 3个变量的值如上

算法分析

python 复制代码
username = 'concealbear'
str_1 = 'biq2jrxc-ape3*dsynhz8gt5o7f0uml4v19w6+/k'
str_2 = '-apeoiq2jrml4xcsw6ynh7f0uv19+3/k*dbz8gt5'
str_3 = 'h7f0uv19+3/kjrml4xcsw6yn*dbz8gt5-apeoiq2'

username_encode_1 = []
for k in range(len(username)):
    v5 = 41 * ord(username[k]) % 40;
    v5 = str_1[v5];
    username_encode_1.append(v5)

for i in range(len(username)):
    v8 = 31 * ord(username[i]) % 40;
    v8 = str_2[v8];
    username_encode_1.append(v8)

for j in range(len(username_encode_1)):
    username_encode_1[j] = str_3[11 * ord(username_encode_1[j]) % 40]

print("".join(username_encode_1))
  • 验证成功
相关推荐
不知名。。。。。。。。35 分钟前
算法 ---哈希表
数据结构·算法·散列表
上海云盾安全满满36 分钟前
网站被 DDoS 攻击的过程和应对方案
安全·web安全·ddos
yi.Ist2 小时前
图论——Floyd算法
c++·算法·图论·floyd
让我们一起加油好吗8 小时前
【基础算法】初识搜索:递归型枚举与回溯剪枝
c++·算法·剪枝·回溯·洛谷·搜索
stbomei9 小时前
基于 MATLAB 的信号处理实战:滤波、傅里叶变换与频谱分析
算法·matlab·信号处理
2401_8762213410 小时前
Reachability Query(Union-Find)
c++·算法
德先生&赛先生11 小时前
LeetCode-542. 01 矩阵
算法·leetcode·矩阵
HAH-HAH11 小时前
【洛谷】P2197【模板】Nim 游戏
算法·游戏
lichkingyang11 小时前
最近遇到的几个JVM问题
java·jvm·算法
晓梦.11 小时前
IPSec 安全基础
服务器·网络·安全