android+so+upx,Android NDK UPX加固
准备编译环境:
1、zlib-1.2.8.tar.gz
2、ucl-1.03.tar.gz
3、lzma443.tar.bz2
4、upx-hg-d9e7cb4b5485.tar.gz https://www.pysol.org:4443/hg/upx.hg
编译UPX设置环境变量:
export UPX_UCLDIR=/usr/local/android/upx/ucl-1.03
export UPX_ZLIBDIR=/usr/local/android/upx/zlib-1.2.8
export UPX_LZMADIR=/usr/local/android/upx/lzma
export UPX_LZMA_VERSION=0x443
export UPX_DIR=/usr/local/android/upx/upx-hg-d9e7cb4b5485
提示几点:
1、upx使用上面给的链接下载,这个版本修复了加固SO后无法在手机上运行的错误
2、编译时提示找不到libz库,需要在UPXDIR/src/MakeFile中添加
INCLUDES += -I$(UPX_ZLIBDIR)
LIBS += $(addprefix -L,$(dir $(wildcard $(UPX_ZLIBDIR)/libz$(libext))))
最后在UPX根目录使用make all编译,编译完成后会在src目录下生成upx.out
准备JNI环境
使用编译好的Upx.out将jni生成的.so文件加固后放入APK中即可在手机上运行起来。
加固语法:
$./upx.out -f -o libjin_upx.so libjni.so
.....
packed 1 file.
android+so+upx,Android NDK UPX加固相关推荐
- UPX编译及so加固
UPX编译及so加固 来源 https://www.cnblogs.com/Reverser/p/5778042.html 参考 http://www.cnblogs.com/fishou/p/420 ...
- Android逆向之路---脱壳360加固原理解析
前言 众所周知,上次说到了如何脱壳360加固,大致意思就是安装一个xposed插件,然后自动就会脱壳了,那么这个插件是如何工作的呢,本次重点说说这个. 上次说道了dumpDex脱壳360加固,其实先说 ...
- Android:JNI 与 NDK到底是什么
前言 在Android开发中,使用 NDK开发的需求正逐渐增大 但很多人却搞不懂 JNI 与 NDK 到底是怎么回事 今天,我将先介绍JNI 与 NDK & 之间的区别,手把手进行 NDK的使 ...
- 【Android 逆向】Android 进程注入工具开发 ( Visual Studio 开发 Android NDK 应用 | Visual Studio 中 SDK 和 NDK 安装位置 )
文章目录 一.Visual Studio 中安装 " 使用 C++ 的移动开发 " 开发库 二.Visual Studio 中安装的 Android SDK 和 NDK 位置 三. ...
- Android之SDK、NDK、JNI和so文件
Android之SDK.NDK.JNI和so文件 1. SDK Android SDK(AndroidSoftware Development Kit),即Android软件开发工具包,And ...
- 在android studio中配置ndk开发环境
环境:android studio 1.5 android-ndk-r10b 1.下载android-ndk-r10b,解压. 2.android studio创建新项目, 配置ndk环境 打开fil ...
- Android:JNI 与 NDK的区别(含实例教学)
前言 在Android开发中,使用 NDK开发的需求正逐渐增大 但很多人却搞不懂 JNI 与 NDK 到底是怎么回事 今天,我将先介绍JNI 与 NDK & 之间的区别,手把手进行 NDK的使 ...
- Android之eclipse简单NDK入门
之前写了一篇JNI的使用,这里其实也是JNI的使用,只不过现在的使用更加方便,不需要什么cygwin或者gnu去创建那边麻烦,直接eclipse完成所有操作. 先前的一篇:http://xuzhiwe ...
- ldflags android,Android 开发手记一 NDK编程实例
Android开发手记一 ---- NDK编程实例 在Android上,应用程序的开发,大部分基于Java语言来实现.要使用c或是c++的程序或库,就需要使用NDK来实现.NDK是Native Dev ...
最新文章
- 后端缓存的23个关键关注点
- 练习 假设性思维 和Mapping from vision to reality
- 新上市Lighthouse专用芯片TS3633规格介绍
- Docker容器私有仓库——Harbor私有仓库的搭建
- 戴尔 成铭3980台式计算机,能文能武!戴尔成铭3980商用台式机评测
- 裂变实操:1个模型+4个步骤,教你打造流量的自循环系统
- Linux系统 proc self,linux – / proc / self / maps中的“— p”权限是什么意思?
- 批处理命令 / 延迟环境变量扩展
- boost::mp11::mp_cond相关用法的测试程序
- 终端查看命令有哪些功能命令_从命令式功能到纯粹功能式功能,再返回:Monads与范围内的延续...
- .NET Core SDK在Windows系统安装后出现Failed to load the hostfxr.dll等问题的解决方法
- Nginx代理服务器使用
- 极客大学架构师训练营 性能优化 进程 线程 锁 存储 分布式数据库 第14课 听课总结
- 重零开始学前端-基础(1) 什么是变量
- 读Doom启示录 有感
- leaflet报错:map container is already initialized
- 数据分析师是什么,深度解析数据分析师
- 冶金物理化学复习【6】吉布斯自由能的变化
- HTML入门学习线路图
- oracle报错ora-00054,ora-00054资源正忙的解决办法-Oracle
热门文章
- 泊松分布知识总结及例子
- PCB工程师不得不看:超级实用AD常用快捷键总结
- 2021-2025年中国移动设备管理软件行业市场供需与战略研究报告
- 计算机会考知识点贵州,贵州会考网
- 抚州市委宣传部一行莅临红谷滩区·高通中国·影创联合创新中心考察调研
- Qt 制作登录对话框
- hihocoder#1602 : 本质不同的回文子串的数量(manacher+Hash)
- 如何使用visual C++6.0查看MFC源码(.sbr浏览信息文件的功效)
- android 多点下载地址,多点app下载安装多点
- 如何在QQ空间中使用背景图片