由于项目需求,需要对二进制进行加壳处理,于是对加壳工具进行比较,最终选择upx,因为是开源的软件。

名称 加壳类型 商用/开源 优点 缺点 平台兼容性
upx 压缩壳 开源 1、压缩率高
2、解压速度快
3、压缩的可执行文件没有额外的内存开销
4、开源
1、可能被杀毒软件误认为
恶意软件,存在误杀(目前在virscan.org
上没有扫出病毒之类的信息)
2、用upx加壳后,使用upx -d就可以脱壳,
还有脱壳工具也可以进行脱壳,脱壳简单,
强度弱
windows
linux
arm
ASProtect 加密壳 商用 研究它的人很多,因此很容易被脱壳 windows
EXECrptor 加密壳 商用 加密安全性表现良好 1、有破解版
2、兼容性不是很好
Armadillo 加密壳 商用 Armadillo中比较强大的保护选项是Nanomites保护(即CC保护),用的好能提高强度,其他选项没什么强度
Themida 加密壳 商用 虚拟机保护技术 生成的软件有些大
VM Protect 虚拟机壳 商用 1、加密的安全级别很高
2、破解难度很大
1、加密数据多
2、可能会影响系统的性能
Windows、linux

1、环境

uname  -a

Linux centos 3.10.0-1062.el7.x86_64 #1 SMP Wed Aug 7 18:08:02 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

2、操作步骤

以ls命令为例,使用readelf查看原始的ls

使用upx对ls加壳,./upx.out -o myls ls

使用file对ls进行查看

使用file对myls查看

upx解压缩

./upx.out -d myls

objdump -d myls

压缩前后大小比较

使用upx对二进制进行加壳相关推荐

  1. UPX源码分析——加壳篇

    0x00 前言 UPX作为一个跨平台的著名开源压缩壳,随着Android的兴起,许多开发者和公司将其和其变种应用在.so库的加密防护中.虽然针对UPX及其变种的使用和脱壳都有教程可查,但是至少在中文网 ...

  2. 【逆向】UPX工具使用及加壳

    加壳常用的工具: https://www.52pojie.cn/thread-165931-1-1.html 下载UPX加壳脱壳工具: http://upx.sourceforge.net/ UPX使 ...

  3. Reverse | 使用UPX对软件进行加壳

    题目描述: 主机C:\Reverse\6目录下有一个CrackMe6.exe程序,这个程序是使用upx程序加过壳的,请尝试对其进行手工脱壳,并编写详细的分析报告.要求脱壳后的程序可以正常运行. 实验步 ...

  4. 实验四:使用UPX加壳与脱壳

    一.实验目的 了解程序加壳.脱壳原理 掌握PE文件结构 学习利用UPX Shell.LoardPE.IDA等工具完成软件的加.脱壳操作 二.实验题目 UPX加壳:对crackme加上UPX壳,用 Lo ...

  5. 压缩加壳工具UPX编译及使用实例

    压缩加壳工具UPX编译及使用实例 压缩加壳工具UPX编译及使用实例 UPX介绍 UPX在debian下编译 UPX使用 压缩加壳工具UPX编译及使用实例 UPX介绍 UPX是一个著名的压缩壳,主要功能 ...

  6. UPX对Android上ELF加壳使用过程中的若干问题总结

    1. UPX中使用的压缩算法有三种,最早是UCL,然后加入了NRV,3.91版本又加入了LZMA.按照UPX源码中的文档来说,UCL压缩效率是相对较低的,但是好处是OpenSource的,NRV效率较 ...

  7. Ubuntu使用upx加壳时报错:NotCompressibleException

    在ubuntu中使用官方3.95版本upx对程序进程加壳,upx提示加壳失败:NotCompressibleException 原因是我写的demo程序编译后小于40kb,使用静态编译后,达到800+ ...

  8. CTF-UPX脱壳加壳讲解;(详细版)

    在做CTF-RE题的时候,下载的题目附件会发现缺少函数方法的现象,说明这个文件就被加壳处理了; 这个是加壳状态下的; 脱壳后~~~~~~~ 如何发现是加壳的呢? 除了开头所描述的方法,还有第二种 用E ...

  9. experiment : EXE使用UPX加壳后, 用OD查找OEP

    测试程序 #include "stdafx.h" #include <windows.h> #include <tchar.h>int _tmain(int ...

最新文章

  1. [JAVA][Liferay] Configure sharding in multiple sites
  2. Chrome开发者工具Element style里的Computed标签页
  3. Red Hat Linux 5.4 开启xdm远程访问
  4. Sping : @InitBinder注解
  5. 再看lambda/sorted/filter/map
  6. 操作mysql_操作mysql
  7. pandas多行合并一行_Pandas函数妙用
  8. 使用ASP.Net Forms模式实现WebService身份验证 (转)
  9. java实用技巧论坛_学习Java前要掌握6大技巧!
  10. 测试金士顿固态硬盘软件,金士顿固态硬盘优化工具(Kingston Toolbox)
  11. 408考研计算机网络视频,计算机408考研视频哪个好
  12. 简单记录阿里云语音识别API调用方法
  13. Rxjava Subject分析
  14. 【爱情叙记】--刚闹完别扭
  15. int(4)、int(8)、int(11) 分别占用几个字节 ?
  16. 全国地铁数据爬取-python
  17. 酷科技 | 智能戒指 ——将科技武装到手指
  18. Spring Boot 整合 RabbitMQ 实现
  19. 从零开发商城系统 系统功能模块整理
  20. 《养个皮皮虾:开心赶海水族箱》用户隐私政策

热门文章

  1. 数字IC/FPGA推荐书籍
  2. php 怎样取时间的年月日,php如何获取年月日的时间戳以及日期的方法
  3. 关于 abiFilters armeabi-v7a
  4. 从一道题谈C++中构造函数调用构造函数
  5. Python基于YOLOv5的交通标志识别系统[源码]
  6. 天地伟业tiandy如何连手机_天地伟业安卓版下载-天地伟业app官方下载v4.1.3[视频监控]...
  7. r语言plot函数x轴y轴名字_R语言中绘图的注释函数小结
  8. 广义交叉验证(GCV)
  9. matlab常用函数及用法总结
  10. nubia ui 5.0 android,流畅度爆棚 搭Android 5.0系统新机一览