在编写应用程序的时候,通常会记录日志以便事后分析,在很多情况下是产生了问题之后,再去查看日志,是一种事后的静态分析。在很多时候,我们可能需要了解整个系统在当前,或者某一时刻运行的情况,比如当前系统中对外提供了多少次服务,这些服务的响应时间是多少,随时间变化的情况是什么样的,系统出错的频率是多少。这些...
分类:
数据库 时间:
2015-12-01 22:58:08
阅读次数:
393
一、前言从这篇文章开始我们开始我们的破解之路,之前的几篇文章中我们是如何讲解怎么加固我们的Apk,防止被别人破解,那么现在我们要开始破解我们的Apk,针对于之前的加密方式采用相对应的破解技术,Android中的破解其实大体上可以分为静态分析和动态分析,对于这两种方式又可以细分为Java层(smail和dex)和native层(so)。所以我们今天主要来讲解如何通过静态分析来破解我们的apk,这篇文...
分类:
移动开发 时间:
2015-11-28 20:06:56
阅读次数:
496
0x00 前言之前的两篇文章从链接视图和执行视图分析了elf文件的大致结构,这篇文章主要内容是对于so文件进行简单的加密工作,针对Ida等静态分析工具的分析,一旦开始动态调试就应该很容易就可以dump出内存,直接修复了。0x01 思路主要是两种思路,对文件中指定的section加密,然后在运行时由....
分类:
移动开发 时间:
2015-11-26 12:51:39
阅读次数:
364
在用非ARC模式编写iOS程序的时候,造成程序内存泄露在所难免,后期我们一般会进行内存优化。自己比较常用的内存优化方法有两种 1、Analyze,静态分析内存泄露的方法。很简单,在Xcode菜单栏中点击 ”Product“ -> "Analyze",编译完成后项目工程中可能造成内存泄露的代码就会被标...
分类:
移动开发 时间:
2015-11-25 13:18:28
阅读次数:
216
0x00 前言静态反汇编之王,毫无疑问就是Ida pro,大大降低了反汇编工作的门槛,尤其是出色的“F5插件”Hex-Rays可以将汇编代码还原成类似于C语言的伪代码,大大提高了可读性。但个人觉得“F5插件”只能作为一项辅助手段,在结合动态调试和静态分析之后,了解了整个函数的流程再利用F5看“C语言...
1. 什么是FindBugsFindBugs 是一个静态分析工具,它检查类或者 JAR 文件,将字节码与一组缺陷模式进行对比以发现可能的问题。有了静态分析工具,就可以在不实际运行程序的情况对软件进行分析。不是通过分析类文件的形式或结构来确定程序的意图,而是通常使用 Visitor 模式来鉴别代码是否...
分类:
数据库 时间:
2015-11-16 12:36:10
阅读次数:
184
本文主要介绍开发过程中用到的比较好的工具。 1、ccache 高速C/C++编译工具,能够5-10倍提升编译速度。详解 2、cppcheck cppcheck是一个C/C++代码静态分析工具,只检测那些编译器通常无法检测到的bug类型。详解 3、wireshark 好用的抓包工具。详...
分类:
其他好文 时间:
2015-11-06 17:41:08
阅读次数:
241
打印堆栈是调试的常用方法,一般在系统异常时,我们可以将异常情况下的堆栈打印出来,这样十分方便错误查找。实际上还有另外一个非常有用的功能:分析代码的行为。android代码太过庞大复杂了,完全的静态分析经常是无从下手,因此通过打印堆栈的动态分析也十分必要。Android打印堆栈的方法,简单归类一下1....
分类:
移动开发 时间:
2015-10-22 17:20:36
阅读次数:
334
怎么保证多人开发进行内存泄漏的检查:1,使用Analyze进行代码的静态分析。在非ARC下,2,为避免不必要的麻烦多人开发时尽量使用ARC。
分类:
其他好文 时间:
2015-10-22 10:22:13
阅读次数:
148
1.引言 最近在项目中使用了静态程序分析工具PC-Lint, 体会到它在项目实施中带给开发人员的方便。PC-Lint是一款针对C/C++语言、windows平台的静态分析工具,FlexeLint是针对其他平 台的PC-Lint版本。由于PC-Lint/FlexeLint是商业的程序分析工具,不便于....
分类:
编程语言 时间:
2015-10-18 06:32:56
阅读次数:
300