首页
社区
课程
招聘
[原创]2019看雪CTF Q2第六题
发表于: 2019-6-10 21:16 2732

[原创]2019看雪CTF Q2第六题

2019-6-10 21:16
2732

此题没有反调试,逻辑也不复杂。

运行界面如下:


IDA F5出来的代码如下

要求输入SN长度不超过0x31,SN经过base64encode计算,要求与"!NGV%,$h1f4S3%2P(hkQ94=="相等。

跟踪base64_encode函数,发现相较于标准base64encode算法修改了2处地方:

1)  将编码表修改为

tuvwxTUlmnopqrs7YZabcdefghij8yz0123456VWXkABCDEFGHIJKLMNOPQRS9+/

2) 将编码后的字符加密处理,函数逻辑即为charEncrypt()

运行下程序,得出字符的加密映射关系

charEncrypt(A)=Z

charEncrypt(B)=Y

charEncrypt(C)=X

charEncrypt(D)=W

charEncrypt(E)=V

charEncrypt(F)=U

charEncrypt(G)=T

charEncrypt(H)=S

charEncrypt(I)=R

charEncrypt(J)=Q

charEncrypt(K)=P

charEncrypt(L)=O

charEncrypt(M)=N

charEncrypt(N)=M

charEncrypt(O)=L

charEncrypt(P)=K

charEncrypt(Q)=J

charEncrypt(R)=I

charEncrypt(S)=H

charEncrypt(T)=G

charEncrypt(U)=F

charEncrypt(V)=E

charEncrypt(W)=D

charEncrypt(X)=C

charEncrypt(Y)=B

charEncrypt(Z)=A

charEncrypt(a)=!

charEncrypt(b)="

charEncrypt(c)=#

charEncrypt(d)=$

charEncrypt(e)=%

charEncrypt(f)=&

charEncrypt(g)='

charEncrypt(h)=(

charEncrypt(i)=)

charEncrypt(j)=*

charEncrypt(k)=+

charEncrypt(l)=,

charEncrypt(m)=-

charEncrypt(n)=.

charEncrypt(o)=/


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 1
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//