http://blog.163.com/shanshenye2k@yeah/blog/static/823405412012930555115/ 第 1 章 逆向与反汇编工具 了解反汇编的一些背景知识后,再深入学习IDA Pro之前,介绍其他一些用于二进制文件的逆向工程工具,会对我们学习有所帮助。这 ...
分类:
其他好文 时间:
2016-04-17 00:47:21
阅读次数:
407
解题思路: 这是一道以快速幂计算为原理的题,实际上也属于求最短路径的题目类型。那么我们可以以当前求出的幂的集合为状态,采用IDA*方法即可求解。问题的关键在于如何剪枝效率更高。笔者采用的剪枝方法是: 1)如果当前状态幂集合中的最大元素max满足 max*2^(maxd-cur_d)<n,则剪枝。原因 ...
分类:
其他好文 时间:
2016-04-01 21:57:04
阅读次数:
157
电商APP的首页设计和实现,直接关系到对用户跳出率与最后的购买转换率。使用过天猫iPhone客户端的童鞋,一定能感受到其良好的用户体验和交互流畅。作为电商行业的佼佼者,以及具有移动端开发多年的沉淀,天猫在首页的UI层次与类设计是怎样的呢,笔者使用越狱iPad、ida、Reveal、dumpdecry ...
分类:
其他好文 时间:
2016-04-01 06:30:11
阅读次数:
193
解题思路: 这是紫书上的一道题,一开始笔者按照书上的思路采用状态空间搜索,想了很多办法优化可是仍然超时,时间消耗大的原因是主要是: 1)状态转移代价很大,一次需要向八个方向寻找; 2)哈希表更新频繁; 3)采用广度优先搜索结点数越来越多,耗时过大; 经过简单计算,最长大概10次左右的变换就能出解,于 ...
分类:
其他好文 时间:
2016-04-01 06:28:18
阅读次数:
198
1、结构体的创建及导入,结构体指针等。
以JniNativeInterface, DexHeader为例。
解析Dex的函数如下:
F5后如下:
File->load file->parser c header file,导入Dex.h
上图中a1,右键转成结构体,选择dexheader,效果如下:...
分类:
移动开发 时间:
2016-03-31 14:54:10
阅读次数:
179
1. 题目描述由$n \times n, n \in [1, 5]$的正方形由$2 \times n \times (n+1)$根木棍组成,可能已经有些木棍被破坏,求至少还需破坏多少木根,可以使得不存在任何正方形?2. 基本思路这是一道非常有趣的题目,可以使用IDA*解也可以用DLX解。可以试试5 ...
分类:
其他好文 时间:
2016-03-26 13:59:03
阅读次数:
177
1. 题目描述给定一个正整数$n$,求经过多少次乘法或除法运算可以从$x$得到$x^n$?中间结果也是可以复用的。2. 基本思路实际结果其实非常小,肯定不会超过20。因此,可以采用IDA*算法。注意几个剪枝优化就好了:(1)每次新计算的值必须从未出现过;(2)每次新计算的值进行还可以执行的运算次数的
分类:
其他好文 时间:
2016-03-23 19:46:33
阅读次数:
273
在网上找了好久的获得函数大小方法,也没找到很好的方法,在看雪论坛上看的也就是递归找返回点,将所有返回插入一个链表,然后根据最下面的返回点确定函数末尾得到大小。 还有同学一直说的可以遍历符号文件pdb来得到函数大小,我也没有尝试过-_- 最近在看IDA Pro权威指南,刚好看到IDC脚本,当发现可以通
分类:
其他好文 时间:
2016-03-22 06:18:45
阅读次数:
167
用IDA也有好些时间了,以前就只会用F5功能玩无壳无保护的裸驱动,感觉太坑了,这两天就开始看网上大牛的逆向。 今天记录一下sudami曾经逆向过的fuck.sys。第一遍自己走的时候漏掉了好多东西,然后看他的新驱动,一步步比较, 最后把驱动文件分析的比较明朗了。 首先这个文件有的别多的花指令,jz,
分类:
其他好文 时间:
2016-03-20 17:47:10
阅读次数:
176
解题思路: 1.简单分析我们可以发现,当n=9时,最多只需要剪切八次即可完成排序。并且全排列数量9!=362880不算很大,所以我们可以将当前排列作为状态,转化成十进制数存入set以便判重。然后逐渐增加解答树的深度(搜索最大深度)进行迭代加深搜索。 2.构造启发函数。本题可以定义一个后继错数:当前状
分类:
其他好文 时间:
2016-03-20 13:07:13
阅读次数:
273