BugkuCTF-Reverse题mobile1(gctf)

知识点

java.security.MessageDigest类
功能:用于为应用程序提供信息摘要算法的功能,如md5和SHA。换句话说,就是生成md5或者是SHA密码。
相关:
getinstance:静态函数,用来实例操作和初始操作。
update:处理数据
reset:重置摘要
digest:明文变为密文

解题流程

根据题目下载了一个压缩包
首先下载文件,看到是apk文件,那就是安卓逆向。拿模拟器来运行看看
在这里插入图片描述
jeb打开文件,找到关键函数
在这里插入图片描述
分析代码,计算v1的md5,形成的md5密文的字符串取偶数就是flag
在onCreate里面调用了checkSN函数,传进去的值是edit_username和edit_sn,edit_username就是v1
在这里插入图片描述
用python写md5的算法,求解flag

import hashlib
import string
def encrypt_md5(str):md=hashlib.md5()   #创建md5对象md.update(str.encode(encoding='utf-8'))   #这里需用encode()函数对字符串进行编码,#不然会报TypeError: Unicode-objects must be encoded before hashingreturn md.hexdigest()s="Tenshine"
s=encrypt_md5(s)
print(s)
print(len(s))#方法一:
for i in range(len(s)):if i%2==0:print(s[i],end='')
#方法二:
for i in range(0,len(s),2):print(s[i],end='')

总结下来:首先用户名是固定的,Tenshine经过MD5加密之后就是
b9c77224ff234f27ac6badf83b855c76这一串,根据源码分析,每隔1位进行拼接就是flag,所以就是flag{bc72f242a6af3857}

方法二:
某大佬有另外的解法,我直接拷过来了,不过我没有成功实现此方法,有兴趣的可以了解一下。
首先我们通过Android killer反编译这个apk找到checkSN函数
在这里插入图片描述
这里呢可以看到当调用此函数的时候会传递两个string类型的参数,这里我们转Java代码看一下
在这里插入图片描述
这里呢可以看到当调用此函数的时候会传递两个string类型的参数,这里我们转Java代码看一下
在这里插入图片描述
这里呢 前面那几个判断 我们直接无视,下面这一块我圈起来的代码 我们可以看到 他是判断 参数2的长度有没有22个 有的话 则开始算flang的然后跟参数2进行比较,注意看 这里是突破点

通过这几串代码 我们可以看到他是判断参数2长度有没有22个 有的话就算出flag的值 跟参数2进行比较

这里我们返回Android killer 找到文本比较这个位置的代码 然后直接输出log 打印出代码算出的flag的内容
在这里插入图片描述
然后编译回去 再在模拟器里面安装 然后打开ddms 这里我们在输入框里面随便输入22位内容 然后点击按钮

再看ddms可以看到flag已经输出出来了
在这里插入图片描述
这样就找出flag的值了
在这里插入图片描述

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

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

相关文章

面趣 | 苹果最刁钻的20个面试题,试试你会通关吗?

如同大部分硅谷公司一样,苹果会在面试中询问基于你过去工作经历的技术难题,以及与技术不太相关的“烧脑”谜题。有一些需要复杂的数学计算;还有一些虽然简单,但是语义却模糊不清。准备好了么?我们开始吧! 以…

Python divmod 函数 - Python零基础入门教程

目录 一.divmod 函数介绍二.divmod 函数使用三.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.divmod 函数介绍 divmod 函数也是 Python 的内置函数,它是把除数和余数运算结果结合起来,返回一个包含商和余数的元…

AR热度不在? NO! 三星开发者大会将聚焦AR

目前,IT界普遍关注人工智能、大数据、云计算、AR以及区块链等技术,而这些技术中,AR早在1990年被提出,是一种实时地计算摄影机影像的位置及角度并加上相应图像、视频、3D模型的技术,这种技术的目标是在屏幕上把虚拟世界…

Cloud一分钟 |2018天猫双11结果出炉:2135亿;工信部透露:6G概念研究也在今年启动;英特尔39款至强新处理器曝光...

Hello,everyone:11月12日早,星期一,新的一天祝大家工作愉快!CSDN一分钟新闻时间:双十一成交额 2135亿元!张勇:不为数字而做11月12日零点,2018年天猫双十一落下帷幕&#…

Python all函数 - Python零基础入门教程

目录 一.Python all 函数简介二.Python all 函数使用三.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.Python all 函数简介 参数:iterable 迭代器,元组或者列表 返回值:如果iterable 迭代器中的所有…

Python abs函数 - Python零基础入门教程

目录 一.Python abs 函数介绍二.Python abs 函数使用三.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.Python abs 函数介绍 abs 函数是 Python 内置函数,主要作用就是计算数字的绝对值!语法如下: 参…

BugkuCTF-Reverse题不好用的ce

解题 方法一 下载程序,运行一下: 点确定,有会弹出一个新的窗口: 点击Command按钮,左上角的数字就会增加,大概是要我们点击一万次: PEiD查加壳: 并没有加壳,是MFC编程…

正视SD-WAN

SD-WAN热火朝天,突然之间涌现无数SD-WAN企业,SD-WAN的蓝海似乎一夜之间变红了在2012年,VMWare以12.6亿美金收购SDN初创Nicira,而Juniper则收购了仅仅成立两天的初创公司Contrail System,随后Cisco收购Tail-f和Insieme……

Python int函数 - Python零基础入门教程

目录 一.int 函数介绍二.int 函数使用三.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.int 函数介绍 int 在 Python 中实际上是一个变量类型,表示整形,但是实际上一样的可以充当函数使用,也是 Pyth…

BugkuCTF-Reverse题逆向入门

此题相比于逆向题,更像杂项题 010editor打开一看发现是图片的base64编码

Cloud一分钟 |百度遭北京信管局行政处罚;双11计算能力超100万核;腾讯回应高管被抓系谣言...

Hello,everyone:11月14日早,星期三,新的一天祝大家工作愉快!CSDN一分钟新闻时间:百度遭北京信管局行政处罚 进入电信业务不良名单相关部门表示:”后续相关公司如果再犯,应当有更严厉…

Python eval 函数 - Python零基础入门教程

目录 一.前言二.Python eval 函数简介三.Python eval 函数实战四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.前言 Python 内置函数其实挺多的,其中 input 和 eval 算得上比较特殊,input 属于交互式内置函数&…

BugkuCTF-Reverse题入门逆向多解法

补充:IDA里面十六进制转字符的快捷键:R 方法一 第一步PEID,这里可以看出程序是32位的 查壳:(无壳) 拖进IDA32分析: 先查看伪码:F5 找到main函数 发现有许多 mov 指令,66H 是 ‘f…

从实践出发,腾讯云深入解读云端数据库技术

毋庸置疑,数据已经成为信息化社会最关键的基础元素之一。离开数据的支持,大数据、人工智能等技术就都没有了用武之地,信息化、智能化也就成了空谈。而数据库则是存储和承载数据的重要场所,因此,其重要性不言而喻。随着…

Python input 函数 - Python零基础入门教程

目录 一.前言二.Python input 函数简介三.Python input 函数实战四.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.前言 Python 内置函数其实挺多的,其中 input 和 eval 算得上比较特殊,input 属于交互式内置函数…

Python map 函数 - Python零基础入门教程

目录 一.前言二.Python map 函数语法简介三.Python map 函数实战 1.使用 map 函数2.map 函数配合 lambda 匿名函数一起使用 四.Python map 函数效率对比五.Python map 函数总结六.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.前言 截…

马克!程序员必须收藏的 10 类工具库,助你提高效率变大神

对程序员和IT专业10个有用的工具和库橙色的扩音器挂在橙色的墙上”Oleg Laptev在Unsplash网站上写道。每一个行业都有它自己的一些工具。软件行业也不例外。一个好的程序员比其他人更加熟悉那些工具,也能比一般的程序员更善于使用那些工具。但是,有一些工…

BugkuCTF-Reverse题特殊的Base64

知识点 换表的base64特点: 1.出现64个字节的字符串(其实应该叫做表)作为数组取值,并且(经常,不是一定)出现“/”和“”符号 2.作为补位,体现为对3求余(%3) …

Python enumerate 函数 - Python零基础入门教程

目录 一.Python enumerate 函数介绍二.Python enumerate 函数使用 1.Python enumerate 函数案例 12.Python enumerate 函数案例 2 三.猜你喜欢 零基础 Python 学习路线推荐 : Python 学习目录 >> Python 基础入门 一.Python enumerate 函数介绍 enumerate 函数一般用在…

Cloud一分钟 |亚马逊市值被微软反超;GKE全球大宕机长达19小时;苹果市值跌破9000亿美元...

Hello,everyone:11月15日早,星期四,新的一天祝大家工作愉快!CSDN一分钟新闻时间:云计算要“凉凉”?亚马逊市值被微软反超,巨头云计算支出放缓亚马逊下跌、Alphabet下跌、微软下跌。苹…