首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
不同程序OEP特征总结
2024-11-02
逆向集录_00_不同程序OEP特征总结
在分析/逆向 程序时,如果事先知道这类程序的一些特征,那将会是事半功倍的: 分析/逆向 程序,和写程序不同,比喻的话:写程序像在作案,分析/逆向 程序就像是在破案,对破案来讲,重在假想和推理: 特征1:VC链接器版本 VS版本 链接器版本 VS2017 14.12 VS2015 14.0, 14.1 VS2013 12.0 VS2012 11.0 VS2010 10.0 VS2008 9.0 VS2005 8.0 VC2003 7.0, 7.1 VC6/VB6/E语言 6.0 VC5/BC++
一些程序OEP入口特征
声明: 1.本文中使用的例子来源于吾爱破解的官方教程第一课中的无壳例子,本人利用空闲时间挨个进行查看并截图纪录下来 2.欢迎补充讨论 一些程序OEP入口特征 一. AMS程序 1.载入PEID 2.载入OD 二. AutoIt_v3程序 1.载入PEID 2.载入OD 三. BC++6程序 1.载入PEID 2.载入OD 四. BC++2010程序 1.载入PEID 2.载入OD 五. Delphi程序 1.载入PEID 2.载入OD
常见程序入口点(OEP)特征
delphi: 55 PUSH EBP 8BEC MOV EBP,ESP 83C4 F0 ADD ESP,-10 B8 A86F4B00 MOV EAX,PE.004B6FA8 vc++ 55 PUSH EBP 8BEC MOV EBP,ESP 83EC 44 SUB ESP,44 56 PUSH ESI vc6.0 55
脱壳:OEP(即程序入口点)查找 --- 基本思路和常见方法
OEP:程序的入口点,软件加壳就是隐藏了OEP(或者用了假的OEP), 只要我们找到程序真正的OEP,就可以立刻脱壳. PUSHAD (压栈) 代表程序的入口点, POPAD (出栈) 代表程序的出口点,与PUSHAD相对应,一般找到这个,OEP就在附近. 常见寻找OEP脱壳的方法 方法一: 1.用OD载入,不分析代码! 2.单步向下跟踪F8,是向下跳的让它实现 3.遇到程序往回跳的(包括循环),我们在下一句代码处按F4(或者右健单击代码,选择断点——运行到所选) 4.绿色线条表示跳转没实现,不
常见寻找OEP脱壳的方法
方法一: 1.用OD载入,不分析代码! 2.单步向下跟踪F8,是向下跳的让它实现 3.遇到程序往回跳的(包括循环),我们在下一句代码处按F4(或者右健单击代码,选择断点——运行到所选) 4.绿色线条表示跳转没实现,不用理会,红色线条表示跳转已经实现! 5.如果刚载入程序,在附近就有一个CALL的,我们就F7跟进去,这样很快就能到程序的OEP 6.在跟踪的时候,如果运行到某个CALL程序就运行的,就在这个CALL中F7进入 7.一般有很大的跳转,比如 jmp XXXXXX 或者 JE XXXXXX
Java程序员从笨鸟到菜鸟之(一百零二)sql注入攻击详解(三)sql注入解决办法
sql注入攻击详解(二)sql注入过程详解 sql注入攻击详解(一)sql注入原理详解 我们了解了sql注入原理和sql注入过程,今天我们就来了解一下sql注入的解决办法.怎么来解决和防范sql注入,由于本人主要是搞java web开发的小程序员,所以这里我只讲一下有关于java web的防止办法.其实对于其他的,思路基本相似.下面我们先从web应用程序的角度来看一下如何避免sql注入: 1.普通用户与系统管理员用户的权限要有严格的区分. 如果一个普通用户在使用查询语句中嵌入另一个Drop
破解之寻找OEP[手动脱壳](2)
1.使用ESP定律 OD载入后,F8一次,在寄存器窗口的ESP的内容上(如0012FFA4)右键:“在数据窗口中跟随”,到内存数据窗口,将内存数据窗口以HEX 数据形式显示,在刚才的地址起始位置上(如0012FFA4)上右键:“断点”->“硬件访问”->“字”,F9直接运行,再F8一次或二 次,一般会到push ebp这句代码,这句代码所在的地址,就是OEP. 2.二次断点法 OD载入后,点击“M”按钮进入内存映射页面,先在数据(data).资源(rsrc).rdata.idata等区段下访问
破解之寻找OEP[手动脱壳](1)
OEP:(Original Entry Point),程序的入口点,软件加壳就是隐藏了OEP(或者用了假的OEP), 只要我们找到程序真正的OEP,就可以立刻脱壳. PUSHAD (压栈) 代表程序的入口点 POPAD (出栈) 代表程序的出口点,与PUSHAD相对应,一般找到这个OEP就在附近啦! 常见寻找OEP脱壳的方法: 方法一: 1.用OD载入,不分析代码! 2.单步向下跟踪F8,是向下跳的让它实现 3.遇到程序往回跳的(包括循环),我们在下一句代码处按F4(或者右健单击代码,选择断
Directx11学习笔记【三】 第一个D3D11程序
在先前的解决方案中新建一个新的Win32项目FirstD3D11Demo.在写代码之前,我们必须先添加dx11所需要的库.为了链接dx库,右键项目选择属性->vc++目录,在包含目录中添加你所安装的SDK根目录\Include,在库目录中添加 根目录\lib\x86(或x64),在链接器->输入的附加依赖项中添加d3d11.lib.d3dx11.lib.dxerr.lib. 第一次使用d3d,首先应该从初始化开始. 初始化d3d11的步骤主要有以下几个: 1.定义我们要检查的设备类型和特征级别
给Lisp程序员的Python简介
给Lisp程序员的Python简介 作者:Peter Norvig,译者:jineslong<zzljlu@gmail.com> 这是一篇为Lisp程序员写的Python简介(一些Python程序员告诉我,这篇文章对他们学习Lisp也有帮助,尽管这不是我的本意).基本上,Python可以看作一个拥有"传统"语法(Lisp社区称之为"中缀"或者"m-lisp"语法)的Lisp方言.一个来自comp.lang.python的帖子说到&qu
个人项目——wc源程序特征统计
这一次要做的项目是wc——统计程序文件特征的命令行程序. 根据需求需求得到的模式为:wc.exe [parameter][filename] 在[parameter]中,用户通过输入参数与程序交互,需实现的功能如下: 1.基本功能 支持 -c 统计文件字符数 支持 -w 统计文件单词数 支持 -l 统计文件总行数 2.拓展功能 支持 -a 返回高级选项(代码行 空行 注释行) 支持 -s 递归处理符合条件的文件 3.高级功能 支持 -x 程序以图形界面与用户交互 [filename] 是待处
如何将常规的web 应用程序转化为云上多租户 SaaS 解决方案
如何将web 应用程序转化为多租户 SaaS 解决方案 https://www.ibm.com/developerworks/cn/cloud/library/cl-multitenantsaas/index.html 通过一些方法和步骤快速将您的 web 应用程序转化为云应用程序 想象一下,您有一个一直在市场上出售的 web 应用程序.您了解到云基础架构中的软件即服务 (SaaS) 是行业的未来趋势.您意识到您需要它,并且您的客户也要求您提供 SaaS 版本的产品. 问题是,您需要快速.有效地
规范抢先看!微信小程序的官方设计指南和建议
基于微信小程序轻快的特点,我们(微信官方)拟定了小程序界面设计指南和建议. 设计指南建立在充分尊重用户知情权与操作权的基础之上.旨在微信生态体系内,建立友好.高效.一致的用户体验,同时最大程度适应和支持不同需求,实现用户与小程序服务方的共赢. 说到设计规范,这里有一篇绝对不能错过的:<内部教程!超实用6步透视网易设计规范(附完整PDF下载)> 一.友好礼貌 为了避免用户在微信中使用小程序服务时,注意力被周围复杂环境干扰,小程序在设计时应该注意减少无关的设计元素对用户目标的干扰,礼貌地向用户展示
web 应用程序转化为多租户 SaaS 解决方案
web 应用程序转化为多租户 SaaS 解决方案 https://www.ibm.com/developerworks/cn/cloud/library/cl-multitenantsaas/index.html 想象一下,您有一个一直在市场上出售的 web 应用程序.您了解到云基础架构中的软件即服务 (SaaS) 是行业的未来趋势.您意识到您需要它,并且您的客户也要求您提供 SaaS 版本的产品. 问题是,您需要快速.有效地转换为 SaaS,并且最好能够维持或增强您的盈利能力. SaaS 应用
有关OEP脱壳
首先补充: OEP:(Original Entry Point),程序的入口点,软件加壳就是隐藏了OEP(或者用了假的OEP), 只要我们找到程序真正的OEP,就可以立刻脱壳. PUSHAD (压栈) 代表程序的入口点 POPAD (出栈) 代表程序的出口点,与PUSHAD相对应,一般找到这个OEP就在附近啦 OEP脱壳方法: 方法一: .用OD载入,不分析代码! .单步向下跟踪F8,是向下跳的让它实现 .遇到程序往回跳的(包括循环),我们在下一句代码处按F4(或者右健单击代码,选择断点——运行
脱壳实践之寻找OEP——两次内存断点法
0x00 前言 对于加壳程序第一件事就是要找到OEP(oringinal Entry point),由于加壳的缘故,当PE文件载入OD或者其他调试软件时进入的的往往是壳程序的入口地址.所以要进行逆向分析第一步就必须找到PE程序的原始入口点. 0x01 壳的加载过程 壳和病毒在某些方面比较类似,都需要比原程序更早获得控制权.壳修改了原程序的的执行文件的组织结构,从而比原程序更早获得控制权,并且并不会影响原程序的正常运行.了解的壳的加载过程对于脱壳加壳异常重要.壳的加载过程如下: 1)保存入
寻找OEP
1.使用ESP定律 OD载入后,F8一次,在寄存器窗口的ESP的内容上(如0012FFA4)右键:"在数据窗口中跟随",到内存数据窗口,将内存数据窗口以HEX数据形式显示,在刚才的地址起始位置上(如0012FFA4)上右键:"断点"->"硬件访问"->"字",F9直接运行,再F8一次或二次,一般会到push ebp这句代码,这句代码所在的地址,就是OEP. 2.二次断点法 OD载入后,点击"M"
Themida和Winlicense加壳软件脱壳教程
(一)Themida和不用license的Winlicense加壳软件就不说了,直接上脚本脱壳. (二)先看看不同版本OEP的一些小特征: Temida2.1.X.X版本之后的OEP特征(2.0.8.0,2.1.0.10,2.1.3.32等) Temida2.1版本之前的OEP特征,如(2.0.3.0,1.8.2.0,1.885等): Temida OEP特征:如(2.0.3.0,) 一,对于Winlicense2.1.0.10及其以下版本,不用license,可自己随意构造一个license直
脱壳_01_虚拟机壳_VMP
写在前面的话: 上一篇文章中,带领大家一起分析了简单的压缩壳ASPACK,今天,就和大家一起来揭开VMP这道神秘的面纱: [花指令]:扰乱调试器的,并不执行: [混淆]:对原指令进行拆解或等价替换,会执行: 零.自己写个程序,加壳 0.为方便我们对VMP壳有更清楚的认识,这里,我们先自己写个程序,然后,加壳: 通过分析对比压缩前后的程序,辅助大家进行更深一层的了解,测试代码如下: #include <windows.h> int main(int argc, char** argv) { Me
脱壳_00_压缩壳_ASPACK
写在前面的话: Aspack是最常见的一种压缩壳,具有较好的兼容性.压缩率和稳定性,今天我们就来一起分析一下这个壳: 零.分析压缩壳: 0.在开始动态调试前,用PEID和LoadPE查看一些信息,做到心中有数: 1.了解了基本的信息后,我们将文件拖到调试器中,进行分析: 分析之前,要明确以下几点,这也是我们的目的(分析时,该做些什么): I). 找到原始OEP II). dump文件: III). 如果需要修复文件,则进行修复,一般IAT: IV). 如果程序仍然无法运行,去掉脱壳后的随机
热门专题
没有发现system32下的electron.exe
vue登录页面点击登录验证码进入首页
罗技k380连接不了
Unity3D看不到Gizmos划线了
linux虚拟机连不上外网 dhcp
win7系统桌面没有administrator
linux openVPN client 配置
linux下if语句的所以用法
电信固定IP是否开放端口
kubelet的工作原理
winform combobox 高亮一行
e.srcElement被弃用
寻找平面上的极大点 分治
eyebeam连接freeswitch
unity修改粒子方向
queue执行非动画
macOS High Sierra 安装U盘制作
jenkins 连ftp不能写入文件
Mysql 读写死锁解决方案
latex把文字加粗