自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

犀牛划水

哪有什么胜利可言,挺住意味着一切。

  • 博客(21)
  • 资源 (3)
  • 收藏
  • 关注

转载 Xposed hook原理

java源码经过编译后,得到很多个class文件, 考虑到手机的内存较小,google改进了字节码的组织形式,将一个app中的所有class文件合到了一起构成dex文件。dex文件最终会和资源文件等一起打包成为apk,签名后安装到手机上。PackageManager在安装apk时,优化dex文件为odex,存放在/data/dalvik-cache目录下。dex文件是遵从于dalvik虚拟

2017-09-24 20:52:04 2032 2

转载 Linux进程与线程的区别

进程与线程的区别,早已经成为了经典问题。自线程概念诞生起,关于这个问题的讨论就没有停止过。无论是初级程序员,还是资深专家,都应该考虑过这个问题,只是层次角度不同罢了。一般程序员而言,搞清楚二者的概念,在工作实际中去运用成为了焦点。而资深工程师则在考虑系统层面如何实现两种技术及其各自的性能和实现代价。以至于到今天,Linux内核还在持续更新完善(关于进程和线程的实现模块也是内核完善的任务之一)。

2017-09-12 10:41:47 407

转载 Android Linker浅析

原文出处:http://blog.csdn.net/dinuliang/archive/2010/04/20/5509009.aspxandroid linker 浅析Android 的加载/链接器linker 主要用于实现共享库的加载与链接。它支持应用程序对库函数的隐式和显式调用。对于隐式调用,应用程序的编译与静态库大致相同,只是在静态链接的时候通过--dynamic-linker

2017-08-31 14:51:18 935

转载 整理android逆向工程师技能表 by非虫from看雪

1.       密码学基础1.1.    古典密码学基础1.2.    现代密码学基础1.2.1.      哈希算法1.2.2.      非对称加密与解密1.2.3.      椭圆曲线1.2.4.      数字签名1.2.5.      数据分组与校验1.3.    密码攻击理论1.4.    密码学库的识别2.       网络基础2.1.

2017-08-20 15:33:09 3850

原创 Android使用Google的apv查看pdf文件之源码的下载与编译

上回编译的MuPDF生成的so库体积太大了,于是尝试一下Google的apv来查看pdf关于MuPDF的资料比较多,但是关于apv的资料就很少了,甚至源码在墙外,还需要科学上网。源码地址http://code.google.com/p/apv/贴心如我下载好了上传了一份给你们:点击打开链接然后就开始根据apv - Building.wiki开始编译并且运行

2017-08-18 17:08:50 857

原创 Android使用MuPDF查看pdf文件之源码的下载与编译

官网下载源码地址:点击打开链接0、可以直接下载压缩包,也可以使用git拉取代码。我这里用的是直接下载。下载的版本为1.10。(1.11的版本platform文件夹下没有Android这个文件夹,不会用,所以还是用的1.10版本)1、下载后放到Linux虚拟机,然后使用make generate编译(也可在Windows下cygwin下编译,可尝试一下)。编译后得到gen

2017-08-15 14:57:07 3818 4

原创 在Android使用上ptrace的尝试(一)

Ptrace功能强大,可以用于调试跟踪。跑了蒸米大神写的例子,学习一下。实验1:获取system call的编号要ptrace的目标程序target,用来一直循环输出#include int count = 0;void sevenWeapons(int number){ char* str = "hello!"; printf("%s, %d\n",str,n

2017-08-10 11:19:50 2595 3

原创 ARM汇编基础知识汇总与Inline Hook

ARM汇编ARM汇编中B、BL、BLX指令的使用?B:跳转BL:例如BL{cond} label。带链接的跳转,如果条件cond满足,会首先将当前指令的下一条指令的地址拷贝到R14(即LR)寄存器中,然后跳转到label指定的地址处继续执行。这个指令通常用于调用子程序,在子程序的尾部,通过MOV PC, LR返回到主程序中。BX:例如BX{cond} Rm。带状态切换的跳转,如果条

2017-08-09 09:52:33 1196

原创 mprop工具修改Android的default.prop使其可调试

Android系统在跑起来后,会将default.prop文件里的配置信息写进内存C:\Users\wangz>adb shellroot@jflte:/ # cat default.prop## ADDITIONAL_DEFAULT_PROPERTIES#ro.secure=0ro.allow.mock.location=0ro.debuggable=0ro.adb.secu

2017-08-08 21:05:46 6256 1

转载 android下运行时动态链接dlopen()和dlsym()的实现

在android中,就如同在Linux下一样,我们也可以在app中,运行时动态加载一些动态链接库,执行调用其中的函数等操作。实现这一切最终依靠的就是dlopen()等几个函数。关于这几个函数的原型机这些API的用法,可以参考 LINUX下动态链接库的使用-dlopen dlsym dlclose dlerror这一篇。而此处我们就来看一下,在android c标准库的bionic中,这些函数究

2017-08-07 16:44:47 3251

原创 Android内存数据读取与修改/内存代码注入/内存dump

在Android的逆向时,对内存数据的操作主要有三种:内存数据读取与修改,内存代码注入,内存dump。之前对这三种操作的概念比较模糊,因此找了些资料整理如下,加深自己的理解。修改数据修改内存数据修改内存数据需要在十六进制窗口中进行编辑,可先将反汇编窗口与十六进制窗口同步。如下图所示,在反汇编窗口中点击鼠标右键弹出菜单,选中”Synchroni

2017-07-18 14:36:52 25010 2

转载 Android Linker 与 SO 加壳技术

1. 前言Android 系统安全愈发重要,像传统pc安全的可执行文件加固一样,应用加固是Android系统安全中非常重要的一环。目前Android 应用加固可以分为dex加固和Native加固,Native 加固的保护对象为 Native 层的 SO 文件,使用加壳、反调试、混淆、VM 等手段增加SO文件的反编译难度。目前最主流的 SO 文件保护方案还是加壳技术, 在SO文件加壳和脱

2017-07-17 15:45:09 584

转载 Android动态加载基础 ClassLoader工作机制

类加载器ClassLoader早期使用过Eclipse等Java编写的软件的同学可能比较熟悉,Eclipse可以加载许多第三方的插件(或者叫扩展),这就是动态加载。这些插件大多是一些Jar包,而使用插件其实就是动态加载Jar包里的Class进行工作。这其实非常好理解,Java代码都是写在Class里面的,程序运行在虚拟机上时,虚拟机需要把需要的Class加载进来才能创建实例对象并工作,而完

2017-07-12 20:13:27 434

原创 使用010Editor模板查看ELF、DEX等文件结构

下载地址:http://www.sweetscape.com/download/010editor/点击Templates选项--Online Template Repository下载点击Templates选项-NEW Templates打开模板,会出现下图所示命令行按F5,即使用对应的模板查看

2017-05-12 17:31:19 17923

原创 jni异常,c++抛出异常,java捕获

在MainActivity.java中public class MainActivity extends AppCompatActivity { // Used to load the 'native-lib' library on application startup. static { System.loadLibrary("native-lib");

2017-04-10 16:36:22 6466

原创 lintcode | 将整数A转换为B, Flip Bits

如果要将整数A转换为B,需要改变多少个bit位?您在真实的面试中是否遇到过这个题? Yes样例如把31转换为14,需要改变2个bit位。(31)10=(11111)2(14)10=(01110)2class Solution {public: /** *@param a, b: Two intege

2017-02-13 16:54:28 571

原创 lintcode | 克隆二叉树

深度复制一个二叉树。给定一个二叉树,返回一个他的 克隆品 。样例给定一个二叉树: 1 / \ 2 3 / \4 5返回其相同结构相同数值的克隆二叉树: 1 / \ 2 3 / \4 5/** * Definition of TreeNode: *

2017-02-06 10:37:01 626

原创 音频,PCM,采样率及android的AudioRecord与AudioTrack 资料整理

采样频率,也称为采样速度或者采样率,定义了每秒从连续信号中提取并组成离散信号的采样个数,它用赫兹(Hz)来表示。采样频率的倒数是采样周期或者叫作采样时间,它是采样之间的时间间隔。通俗的讲采样频率是指计算机每秒钟采集多少个信号样本。 音频重采样分为上采样和下采样,即插值和抽取。在实现有理数级重采样时,则是将上采样和下采样做结合(例如48kHz 转 44.1kHz时,将44.1kHz近似为44

2016-12-02 11:02:24 8548 1

原创 Danger is My Middle Name – Experimenting with SSL Vulnerabilities in Android Apps 阅读笔记

这篇文章是关于Android app上的信息泄露和SSL脆弱的研究。对100个流行的联网app使用静态分析和动态分析,实验表明32/100的app同意全部certificates和hostnames,有4个app对传输的敏感数据没有加密。进行中间人攻击实验,发现91%的app是易受攻击的,攻击者可以获取敏感信息包括证书、文件、个人资料、信用卡账号等等。 1        INTRODUCT

2016-07-01 17:02:38 424

原创 Security and System Architecture: Comparison of Android Customizations 阅读笔记

Security and System Architecture:Comparison of Android Customizations一、 简介    移动设备越来越普及也越来越复杂,体现在不仅有更多功能和源代码,而且系统架构也更加错综复杂。如果考虑架构安全,Android操作系统定制在关键方面差别巨大。二、主要工作2.1 基本介绍与方法论Ø  实验设备:Nexus 4,

2016-06-12 10:03:26 571

原创 CopperDroid: Automatic Reconstruction of Android Malware Behaviors 阅读笔记

问题:Android app的特性决定了我们很难依靠传统的基于systemcall的动态分析系统。比如:Android系统通过Binder进行进程内(IPC)和进程间(RPC)通信。仅仅依靠systemcall无法还原这些高级语义。解决:设计了CopperDroid,基于虚拟机的动态系统。CopperDroid通过直接监测System call,不但可以判断操作系统的一些动作(比如进程创建、文

2016-05-18 16:49:20 3252

pdfview源码 libapv.so

PDFview, pdf, android, apv, libapv.so

2017-08-18

MuPDF版本1.10编译的so库libmupdf.so

MuPDF版本1.10编译的so库libmupdf.so,包含3个平台:arm,armv7,x86

2017-08-16

mprop工具修改Android的default.prop使其可调试

mprop工具修改Android的default.prop使其可调试

2017-08-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除