一、前言
对病毒进行逆向分析,可以彻底弄清楚病毒的行为,从而采取更有效的针对手段。为了节省篇幅,在这里我不打算将“熊猫烧香”进行彻底的分析,只会讲解一些比较重要的部分,大家只要掌握了这些思想,那么就可以处理很多的恶意程序了。一般来说,对病毒的静态分析,我们采用的工具是IDA Pro,动态分析则采用OllyDbg。由于后者会使病毒实际运行起来,所以为了安全起见,最好在虚拟机中操作。...
分类:
其他好文 时间:
2014-11-17 14:09:25
阅读次数:
254
gcc -E 预处理gcc -v 编译链接过程cc1 编译器as 汇编器collect2 链接器objdump -d 可执行文件的反汇编操作ctrl+L 清空屏幕main函数并不是C程序真正的入口,而是_start
分类:
其他好文 时间:
2014-11-09 23:41:46
阅读次数:
277
使用虚拟机 VMware Workstation 10Linux环境:Ubuntu 14.04 LTS Server amd64我把过程截图如下。首先是hello world程序:备注:gcc -o 参数,指定生成程序文件名。gdb下,disas命令对应英文为disassembler,反汇编。这里没...
分类:
数据库 时间:
2014-11-08 23:33:35
阅读次数:
274
Android软件安全与逆向分析 http://book.2cto.com/201212/12432.html Smali--Dalvik虚拟机指令语言 http://blog.csdn.net/wdaming1986/article/details/8299996
分类:
移动开发 时间:
2014-11-05 12:58:05
阅读次数:
170
项目决定移植一款C++开源项目到Android平台,开始对JNI深入研究。
JNI是什么?
JNI(Java Native Interface)意为JAVA本地调用,它允许Java代码和其他语言写的代码进行交互,简单的说,一种在Java虚拟机控制下执行代码的标准机制。
NDK是什么?
Android NDK(Native Development Kit )是一套工具集合,允许你用像C/C++语言那样实现应用程序的一部分。
为什么要用NDK?
1、安全性,java是半解释型语言,很容易被反汇编后拿到源代码文件...
分类:
其他好文 时间:
2014-11-01 10:02:15
阅读次数:
428
1. 关于如下的程序,关于结构体的拷贝,拷贝是拷贝到内存中的什么地方? 我们进入debug进行反汇编,单步等操作跟踪查看。发现: 在main中,我们看到call 0266应该对应的是转跳到func处执行。 在这里,func赋值完成后,又call到了0B3D:13EA处,这里应该是其向内存中复制的函数...
分类:
编程语言 时间:
2014-10-30 00:01:21
阅读次数:
314
本系列的3介绍了现有的linux系统对栈的保护,在那种栈保护措施下,要修改SIP(saved instruction pointer)不可能;但是栈保护对象有限,对程序中的数据不一定都能保护到。本文就是探讨程序中有内存操作漏洞时,如何利用漏洞改写数据,达到控制的目的。...
分类:
数据库 时间:
2014-10-23 14:36:06
阅读次数:
207
摘要:
本文主要在之前系列1的代码基础上,分析下gcc如何进行栈保护以避免栈溢出攻击的。...
分类:
数据库 时间:
2014-10-20 23:29:46
阅读次数:
423
Linux C++ 调试神技--如何将Linux C++ 可执行文件逆向工程到Intel格式汇编对于许多在windows 上调试代码的人而言, Intel IA32格式的汇编代码可能并不陌生,因为种种的原因,很多软件工程师不得不去尝试理解汇编代码。Windows PE的反汇编格式默认是Intel格式...
分类:
编程语言 时间:
2014-10-19 19:55:19
阅读次数:
552
对于《DebuggingAndroidApplication》一文中最后附上的练习,我采用了另一种静态方法绕开原有的逻辑去破解。主要的过程如下: 利用apktool将练习的runtime.apk文件反编译,生成的smali格式的反汇编代码,接着从smali文件的代码中寻找突破口,修改程序,再利...
分类:
移动开发 时间:
2014-10-19 11:20:41
阅读次数:
300