app3

题目来源: 暂无

题目描述:

 

 

下载下来发现是一个ab文件,查询发现是安卓手机的备份文件

可以运用Android backup extractor将其转换成tar文件

语法是java -jar abe.jar unpack <backup.ab>  <backup.tar>

如果有密码语法是java -jar abe.jar unpack <backup.ab>  <backup.tar> [password]

之后解压tar文件,看到了两个数据库和base.app

放入jadx反汇编,发现数据库是被加密的

 

 

第一行说明被加密,第二行说明被SqlCipher加密,第三行说明版本是3.4.0

因此尝试获得密码

密码是将Stranger与123456各取前四位拼接在一起得到Stra1234

之后将其进行MD5加密,得到的16进制摘要前面加上Stra1234,后面加上yaphetshan,然后进行sha-1加密,最后取其16进制摘要的前七位

因此得到解密脚本

import hashlib

s = 'Stra1234'
ss = 'yaphetshan'
m = hashlib.md5()
m.update(s.encode())
s1 = m.hexdigest()
s2 = s + s1 + ss
h = hashlib.sha1()
h.update(s2.encode())
print(h.hexdigest()[0:7])

 

这就是数据库的密码

刚开始进了Demo.db,结果发现flag是空的

原来在Encryto.db里,看到flag里面是VGN0ZntIM2xsMF9Eb19ZMHVfTG92M19UZW5jM250IX0=

base64解码得到flag

Tctf{H3ll0_Do_Y0u_Lov3_Tenc3nt!}

posted @ 2021-08-21 23:25  hktk1643  阅读(84)  评论(0编辑  收藏  举报