Crash, Crash, Crash

最近开发项目碰到了个很神奇的野指针问题,在arm64下正常,armv7a下炸了,然而这个项目是从C代码移植过来的,ndk那边只做了层CPP的封装,配置gradle的时候,直接指定了外部cmake,因此没办法直接用android studio调试,至少我不知道有什么办法可以导入源码。

然后你看l[……]

查看文章

认真你就输系列 – Arm间接寻址

我们都知道x86中的寻址相对于arm稍微简单一些,arm因无法直接操作内存地址,所以需要使用成对的ldr和str指令完成操作,因此,在操作一些常量或者字符串的时候,免不了要寻址,常见的教程版本大概是这样子讲的(摘抄):

汇编器编译后,反汇编看大概是长这样的:

乍一看没什么问题吧?[……]

查看文章

Tracing

最近感觉记忆力衰退,遂写几篇文章进行备忘。
代码分析的过程中,经常会碰到大坨难懂的逻辑(比如动态的函数指针,鬼知道它跳到哪里去了),或是难以定位关键点的问题,这个时候就需要tracing技术了,把所有的调用记录下来,再静态分析对流程进行梳理。
用tracing技术可以用来对付那些恶心的混淆(ollv[……]

查看文章

“合法”の酷鸟浏览器

注意!本文不是广告,更不是软文,找激活码请绕道,咱根本就没用过

好吧,我承认标题有点戏虐,今天群里看到张图

emmmm,从哪里开始吐槽呢?什么时候访问国外热门网站不合法了吗?当然不会讨论这种无聊话题的话~

下载到的是一个安装包,我虚拟机前段时间搞炸了,也懒得装了,毕竟听说要用的[……]

查看文章

pycharm开发idapython

试了N多文本编辑器,智能提示都很不理想,包括用了Visual Studio这种宇宙第一ide也不行(还碰到了一堆bug),下载了一个pycharm community版本,导入script之后,再把ida安装目录下的python整个导入并设置为source root就可以了,整体体验十分好,强力推荐[……]

查看文章

ELF Dump文件修复(一) ELF文件结构

写这个文章呢,无非就一个理由,巩固基础,不过我这种逆向思维的性格,大家大概也知道这系列文章的走向。

关于ELF的一些结构呢,我就不在这里浪费篇幅了,随便找几篇文章都比我讲得好,这里我只提一些关联性的总结。

在program header table里面

e_phoff

e[……]

查看文章