学习笔记
文章平均质量分 67
5WDD
这个作者很懒,什么都没留下…
展开
-
Frida-Hook-Java层操作大全
让我们从非常基础的知识开始。什么是钩子?Hook是指拦截和修改应用程序或Android系统中函数或方法行为的过程。例如,我们可以钩取我们应用程序中的一个方法,并通过插入我们自己的实现来改变其功能。现在,让我们尝试在一个应用程序中钩取一个方法。我们将使用JavaScript API 来完成这个任务,但值得注意的是,Frida也支持Python。原创 2024-03-04 01:25:50 · 761 阅读 · 0 评论 -
[Android]Frida-hook环境配置
它帮助你查看其他程序或应用内部发生的事情,即使你没有原始代码也能做到。Frida允许你识别程序或应用中的特定函数或方法,并拦截它们。当这些函数被调用时,Frida可以对它们接收的数据进行更改,或者查看它们的执行情况。例如,你可以查看变量的值,了解程序的执行流程,甚至在代码被执行时修改数据或代码。这里我选择使用的是Android Studio中的x86模拟器,所以我将下载的是x86的版本。如果您使用的是Arm64的机器,请使用Arm64的版本。如果您想要检索特定应用程序的包名称,您可以使用。原创 2024-02-17 02:04:12 · 707 阅读 · 0 评论 -
[虚拟机逆向]UNCTF - 2019 EasyVm
虚拟机逆向是指对一个运行在虚拟机上的程序进行逆向工程。虚拟机是一种软件层,它模拟了一种计算机架构,允许程序在不同的平台上运行。在虚拟机上运行的程序通常使用一种特定的指令集,这个指令集不同于在物理机器上运行的指令集。虚拟机逆向包括对虚拟机本身的分析,以及对在虚拟机上运行的程序的分析。对于虚拟机本身的分析,可以探究虚拟机的指令集、内存布局、代码执行流程等方面。对于在虚拟机上运行的程序的分析,可以通过反编译、动态调试等手段获取程序的源代码、调用栈信息、内存映射等信息,以此来理解程序的行为和工作原理。原创 2023-03-06 21:58:40 · 857 阅读 · 0 评论 -
[Reverse][HGAME]kunmusic
dll文件检查之后发现是.net直接使用dnspy反编译发现这里在对这个data做什么处理下断点动态调试查看内存发现mz文件头,将数据dump出来,构成一个新的dll文件再使用dnspy反编译music类中发现了约束求解的逻辑,揭秘之后在和enc异或就可以得到flag。原创 2023-02-02 16:54:44 · 120 阅读 · 0 评论 -
[Reverse][Hgame2023]patchme
点开文件可以看到一个可疑函数对文件地址进行操作跟踪过去看一看发现地址爆红,出现大量没有被解析的数据段那么我们猜测这里是对文件进行保护的一个函数,那么我们将其异或回去,使用idc或者idapython运行idapython脚本之后发现本来ida无法识别的汇编代码变得可以识别了,那么我们声明所有的未声明函数就可以在下面找到输出flag的方法了。原创 2023-02-02 16:27:28 · 146 阅读 · 0 评论 -
[SWPUCTF 2021 新生赛]easy_md5
由于php中存在==的弱类型比较,所以我们可以通过hash比较的缺陷去绕过也就是只要两个数的md5加密后的值以0e开头就可以绕过,因为php在进行弱类型比较(即==)时,会现转换字符串的类型,在进行比较,而在比较是因为两个数都是以0e开头会被认为是科学计数法,0e后面加任何数在科学计数法中都是0,所以两数相等,在进行严格比较(===)时才会先判断字符串类型是否相等,在比较。像这样特殊的md5值还有。原创 2023-01-16 14:52:41 · 1526 阅读 · 0 评论 -
[Reverse]2022年春秋杯easy_python
直接看到题目文件显然这是一段python文件的字节码,看到129行之前的一连串的赋值语句,加上数组名字叫做flag我们可以知道这个就是我们需要解密的明文,那么我们再看接下来的加密部分看到这个指令,就是进行一个循环,也就是189-54=135那么就是135行到189行设置了一个循环,迭代器是0-42可以看到循环的主要内容就是,首先拿到flag[i]的值然后右移5位然后再取flag[i]的值,然后左移3位,然后将两个值进行位或运算之后再与255再存入flag[i]原创 2022-12-25 15:36:56 · 109 阅读 · 0 评论 -
[第五空间 2021]StrangeLanguage
由于pyd文件的本质就是dll文件所以我们直接使用ida64来反汇编程序就好了。字符串中可以发现这个数据,很明显这个数据就是brainfuck代码。反编译main.pyc文件后可以发现里面只是单纯的调用了一个文件。运行之后就可以得到一段反编译过来的python代码了。然后我们看后序的加密,根据逻辑推断可以发现是异或,此处发现大量的赋值语句,显然这就是enc了。我们直接利用python脚本将其解释。我们找到这个brainfuck文件。修改逻辑后将这一段代码输出来。并且是本位异或下一位的数据。原创 2022-12-25 01:38:03 · 301 阅读 · 0 评论 -
学习笔记-概率DP
学习笔记-概率DP原创 2022-03-16 21:19:49 · 260 阅读 · 2 评论