社区
汇编语言
帖子详情
使用softice for nt,怎么样在PE文件执行的一开始时设断点呢?
LittleStar
2005-03-19 11:25:08
csip只能用于16位程序。
PE程序都是在0x400000开始的,可是我设bpmp 0x401000.然后运行一个PE文件并没有跳出softice:(
请问我应该怎么样设断点呢?
...全文
152
2
打赏
收藏
使用softice for nt,怎么样在PE文件执行的一开始时设断点呢?
csip只能用于16位程序。 PE程序都是在0x400000开始的,可是我设bpmp 0x401000.然后运行一个PE文件并没有跳出softice:( 请问我应该怎么样设断点呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
LittleStar
2005-04-06
打赏
举报
回复
bpx getcommandlinea可以解决
zara
2005-03-20
打赏
举报
回复
soft-ice 有个选项就是在加载 pe 后停留在程序的入口点处的, 缺省应该是选中的. 如果你加载所有的程序都是直接就运行了的话, 就在 Symbol Loader32 的 Setting 里看看吧. 如果只是某些程序这样的话, 是这类的程序有压缩或加密造成的. 可以试试一般的程序开始处都会调用 GetStartupInfo 或 GetCommandLine 这样的 API 来解决: bpx GetStartupInfo 或 bpx GetCommandLine
软件加密技术内幕 chm
软件加密技术内幕 要花时间看 第1章
PE
文件
格式深入研究 1.1
PE
文件
格式格式纵览 1.1.1 区块(Section) 1.1.2 相对虚拟地址(Relative Virtual Addresses) 1.1.3 数据目录 1.1.4 输入函数(Importing Functions) 1.2
PE
文件
结构 1.2.1 The MS-DOS头部 1.2.2 IMAGE_
NT
_HEADERS头部 1.2.3 区块表(The Section Table) 1.2.4 各种块(Sections)的描述 1.2.5 输出表 1.2.6 输出转向(Export Forwarding) 1.2.7 输入表 1.2.8 绑定输入(Bound import) 1.2.9 延迟装入数据(Delayload Data) 1.2.10 资源 1.2.11 基址重定位(Base Relocations) 1.2.12 调试目录(DebugDirectory) 1.2.13 NET头部 1.2.14 TLS初始化 1.2.15 程序异常数据 第2章
PE
分析工具编写 2.1
文件
格式检查 2.2 FileHeader和OptionalHeader内容的读取 2.3 得到数据目录(Data Dircetory)信息 2.4 得到块表(Sectio
nT
able)信息 2.5 得到输出表(ExportTable)信息 2.6 得到输入表(ImportTable)信息 第3章 Win32 调试API 3.1 Win32调试API原理 3.1.1 调试相关函数简要说明 3.1.2 调试事件 3.1.3 如何在调试时创建并跟踪一个进程 3.1.4 最主要的循环体 3.1.5 如何处理调试事件 3.1.6 线程环境详解 3.1.7 如何在另一个进程中注入代码 3.2 利用调试API编写脱壳机 3.2.1 tElock 0.98脱壳简介 3.2.2 脱壳机的编写 3.3 利用调试API制作内存补丁 3.3.1 跨进程内存存取机制 3.3.2 Debug API机制 第4章 Windows下的异常处理 4.1 基本概念 4.1.1 Windows下的软件异常 4.1.2 未公开的可靠吗 4.2 结构化异常处理(SEH) 4.2.1 异常处理的基本过程 4.2.2 SEH的分类 4.2.3 相关API 4.2.4 SEH相关数据结构 4.3 异常处理程序设计 4.3.1 顶层(top-level)异常处理 4.3.2 线程异常处理 4.3.3 异常处理的堆栈展开(Stack unwind) 4.3.4 异常处理程序设计中的几个注意事项: 4.4 SEH的简单应用 4.4.1 Win9x下利用SEH进ring0 4.4.2 利用SEH实现对自身的单步自跟踪 4.4.3 其它应用 4.5 系统背后的秘密 4.6 VC是如何封装系统提供的SEH机制的 4.6.1 扩展的EXCEPTION_REGISTRATION级相关结构 4.6.2 数据结构组织 4.7 Windows XP下的向量化异常处理(VEH) 第5章 软件加密技术 5.1 反调试技术(A
nt
i-Debug) 5.1.1 句柄检测 5.1.2
Soft
ICE
后门指令 5.1.3 i
nt
68子类型 5.1.4
ICE
Cream子类型 5.1.5 判断
NT
ICE
服务是否运行 5.1.6 I
NT
1 检测 5.1.7 利用UnhandledExceptionFilter检测 5.1.8 I
NT
41子类型 5.2 反跟踪技术(A
nt
i-Trace) 5.2.1
断点
检测 5.2.2 利用SEH反跟踪 5.2.3 SMC技术实现 5.3 反加载技术(A
nt
i-Loader) 5.3.1 利用TEB检测 5.3.2 利用IsDebuggerPrese
nt
函数检测 5.3.3 检查父进程 5.4 反DUMP技术(A
nt
i
软件加密技术内幕
chm格式,目录如下。 第1章
PE
文件
格式深入研究 1.1
PE
文件
格式格式纵览 1.1.1 区块(Section) 1.1.2 相对虚拟地址(Relative Virtual Addresses) 1.1.3 数据目录 1.1.4 输入函数(Importing Functions) 1.2
PE
文件
结构 1.2.1 The MS-DOS头部 1.2.2 IMAGE_
NT
_HEADERS头部 1.2.3 区块表(The Section Table) 1.2.4 各种块(Sections)的描述 1.2.5 输出表 1.2.6 输出转向(Export Forwarding) 1.2.7 输入表 1.2.8 绑定输入(Bound import) 1.2.9 延迟装入数据(Delayload Data) 1.2.10 资源 1.2.11 基址重定位(Base Relocations) 1.2.12 调试目录(DebugDirectory) 1.2.13 NET头部 1.2.14 TLS初始化 1.2.15 程序异常数据 第2章
PE
分析工具编写 2.1
文件
格式检查 2.2 FileHeader和OptionalHeader内容的读取 2.3 得到数据目录(Data Dircetory)信息 2.4 得到块表(Sectio
nT
able)信息 2.5 得到输出表(ExportTable)信息 2.6 得到输入表(ImportTable)信息 第3章 Win32 调试API 3.1 Win32调试API原理 3.1.1 调试相关函数简要说明 3.1.2 调试事件 3.1.3 如何在调试时创建并跟踪一个进程 3.1.4 最主要的循环体 3.1.5 如何处理调试事件 3.1.6 线程环境详解 3.1.7 如何在另一个进程中注入代码 3.2 利用调试API编写脱壳机 3.2.1 tElock 0.98脱壳简介 3.2.2 脱壳机的编写 3.3 利用调试API制作内存补丁 3.3.1 跨进程内存存取机制 3.3.2 Debug API机制 第4章 Windows下的异常处理 4.1 基本概念 4.1.1 Windows下的软件异常 4.1.2 未公开的可靠吗 4.2 结构化异常处理(SEH) 4.2.1 异常处理的基本过程 4.2.2 SEH的分类 4.2.3 相关API 4.2.4 SEH相关数据结构 4.3 异常处理程序设计 4.3.1 顶层(top-level)异常处理 4.3.2 线程异常处理 4.3.3 异常处理的堆栈展开(Stack unwind) 4.3.4 异常处理程序设计中的几个注意事项: 4.4 SEH的简单应用 4.4.1 Win9x下利用SEH进ring0 4.4.2 利用SEH实现对自身的单步自跟踪 4.4.3 其它应用 4.5 系统背后的秘密 4.6 VC是如何封装系统提供的SEH机制的 4.6.1 扩展的EXCEPTION_REGISTRATION级相关结构 4.6.2 数据结构组织 4.7 Windows XP下的向量化异常处理(VEH) 第5章 软件加密技术 5.1 反调试技术(A
nt
i-Debug) 5.1.1 句柄检测 5.1.2
Soft
ICE
后门指令 5.1.3 i
nt
68子类型 5.1.4
ICE
Cream子类型 5.1.5 判断
NT
ICE
服务是否运行 5.1.6 I
NT
1 检测 5.1.7 利用UnhandledExceptionFilter检测 5.1.8 I
NT
41子类型 5.2 反跟踪技术(A
nt
i-Trace) 5.2.1
断点
检测 5.2.2 利用SEH反跟踪 5.2.3 SMC技术实现 5.3 反加载技术(A
nt
i-Loader) 5.3.1 利用TEB检测 5.3.2 利用IsDebuggerPrese
nt
函数检测 5.3.3 检查父进程 5.4 反DUMP技术(A
nt
i-Dump) 5.5
文件
完整性检验 5.5.1 CRC校验实现 5.5.2 校验和(Checksum) 5.5.3 内存映像校验 5.6 反监视技术(A
nt
i-Monitor) 5.6.1 窗口方法检测 5.6.2 句柄检测 5.7 反静态分析技术 5.7.1 扰乱汇编代码 5.7.2 花指令 5.7.3 信息隐藏 5.8 代码与数据结合技术 5.9 软件保护的若干忠告 第6章 加壳软件编写 6.1 外壳编写基础 6.1.1 判断
文件
是否是
PE
格式的EXE
文件
6.1.2
文件
基本数据的读入 6.1.3 额外数据保留 6.1.4 重定位数据的去除 6.1.5
文件
的压缩 6.1.6 资源区块的处理 6.1.7 区块的融合 6.1.8 输入表的处理 6.1.9 外壳部分的编写 6.1.10 将外壳部分添加至原程序 6.1.10 小结 6.2 加壳程序综合运用的实例 6.2.1 程序简介 6.2.2 加壳子程序(WJQ_ShellBegin()) 6.2.3
PE
外壳程序 6.2.4 加进A
nt
i技术 6.2.5 通过外壳修改被加壳
PE
6.2.6 VC++调用汇编子程序 第7章 如何让壳与程序融为一体 7.1 序 7.1.1 为何需要壳和程序一体化 7.1.2 为阅读此章节需要的知识 7.1.3 基于此章节用的的例子程序说明 7.2 欺骗检查壳的工具 7.2.1 fi是如何检查壳的 7.2.2 欺骗fi 7.3 判断自己是否给脱壳了 7.3.1 判断
文件
尺寸 7.3.2 检查标记 7.3.3 外部检测(
使用
dll) 7.3.4 hook 相关的api(防止loader和调试api) 7.4
使用
sdk把程序和壳溶为一体 7.4.1 sdk的意义 7.4.2 做一个带sdk的壳 7.5 后记:关于壳和程序的思考 第8章 Visual Basic 6 逆向工程 8.1 简介 8.2 P-code传奇 8.3 VB编译奥秘 8.4 VB与COM 8.5 VB可
执行
程序结构研究 8.6 VB程序事件解读 8.7 VB程序图形界面(GUI)解读 8.8 VB程序
执行
代码研究 8.9 我们的工具 8.10 VB程序保护篇 附录A 在Visual C++中
使用
内联汇编 附录B 在Visual Basic中
使用
汇编
【软件加密技术内幕】
第1章
PE
文件
格式深入研究
1.1
PE
文件
格式格式纵览
1.1.1 区块(Section)
1.1.2 相对虚拟地址(Relative Virtual Addresses)
1.1.3 数据目录
1.1.4 输入函数(Importing Functions)
1.2
PE
文件
结构
1.2.1 The MS-DOS头部
1.2.2 IMAGE_
NT
_HEADERS头部
1.2.3 区块表(The Section Table)
1.2.4 各种块(Sections)的描述
1.2.5 输出表
1.2.6 输出转向(Export Forwarding)
1.2.7 输入表
1.2.8 绑定输入(Bound import)
1.2.9 延迟装入数据(Delayload Data)
1.2.10 资源
1.2.11 基址重定位(Base Relocations)
1.2.12 调试目录(DebugDirectory)
1.2.13 NET头部
1.2.14 TLS初始化
1.2.15 程序异常数据
第2章
PE
分析工具编写
2.1
文件
格式检查
2.2 FileHeader和OptionalHeader内容的读取
2.3 得到数据目录(Data Dircetory)信息
2.4 得到块表(Sectio
nT
able)信息
2.5 得到输出表(ExportTable)信息
2.6 得到输入表(ImportTable)信息
第3章 Win32 调试API
3.1 Win32调试API原理
3.1.1 调试相关函数简要说明
3.1.2 调试事件
3.1.3 如何在调试时创建并跟踪一个进程
3.1.4 最主要的循环体
3.1.5 如何处理调试事件
3.1.6 线程环境详解
3.1.7 如何在另一个进程中注入代码
3.2 利用调试API编写脱壳机
3.2.1 tElock 0.98脱壳简介
3.2.2 脱壳机的编写
3.3 利用调试API制作内存补丁
3.3.1 跨进程内存存取机制
3.3.2 Debug API机制
第4章 Windows下的异常处理
4.1 基本概念
4.1.1 Windows下的软件异常
4.1.2 未公开的可靠吗
4.2 结构化异常处理(SEH)
4.2.1 异常处理的基本过程
4.2.2 SEH的分类
4.2.3 相关API
4.2.4 SEH相关数据结构
4.3 异常处理程序设计
4.3.1 顶层(top-level)异常处理
4.3.2 线程异常处理
4.3.3 异常处理的堆栈展开(Stack unwind)
4.3.4 异常处理程序设计中的几个注意事项:
4.4 SEH的简单应用
4.4.1 Win9x下利用SEH进ring0
4.4.2 利用SEH实现对自身的单步自跟踪
4.4.3 其它应用
4.5 系统背后的秘密
4.6 VC是如何封装系统提供的SEH机制的
4.6.1 扩展的EXCEPTION_REGISTRATION级相关结构
4.6.2 数据结构组织
4.7 Windows XP下的向量化异常处理(VEH)
第5章 软件加密技术
5.1 反调试技术(A
nt
i-Debug)
5.1.1 句柄检测
5.1.2
Soft
ICE
后门指令
5.1.3 i
nt
68子类型
5.1.4
ICE
Cream子类型
5.1.5 判断
NT
ICE
服务是否运行
5.1.6 I
NT
1 检测
5.1.7 利用UnhandledExceptionFilter检测
5.1.8 I
NT
41子类型
5.2 反跟踪技术(A
nt
i-Trace)
5.2.1
断点
检测
5.2.2 利用SEH反跟踪
5.2.3 SMC技术实现
5.3 反加载技术(A
nt
i-Loader)
5.3.1 利用TEB检测
5.3.2 利用IsDebuggerPrese
nt
函数检测
5.3.3 检查父进程
5.4 反DUMP技术(A
nt
i-Dump)
5.5
文件
完整性检验
5.5.1 CRC校验实现
5.5.2 校验和(Checksum)
5.5.3 内存映像校验
5.6 反监视技术(A
nt
i-Monitor)
5.6.1 窗口方法检测
5.6.2 句柄检测
5.7 反静态分析技术
5.7.1 扰乱汇编代码
5.7.2 花指令
5.7.3 信息隐藏
5.8 代码与数据结合技术
5.9 软件保护的若干忠告
第6章 加壳软件编写
6.1 外壳编写基础
6.1.1 判断
文件
是否是
PE
格式的EXE
文件
6.1.2
文件
基本数据的读入
6.1.3 额外数据保留
6.1.4 重定位数据的去除
6.1.5
文件
的压缩
6.1.6 资源区块的处理
6.1.7 区块的融合
6.1.8 输入表的处理
6.1.9 外壳部分的编写
6.1.10 将外壳部分添加至原程序
6.1.10 小结
6.2 加壳程序综合运用的实例
6.2.1 程序简介
6.2.2 加壳子程序(WJQ_ShellBegin())
6.2.3
PE
外壳程序
6.2.4 加进A
nt
i技术
6.2.5 通过外壳修改被加壳
PE
6.2.6 VC++调用汇编子程序
第7章 如何让壳与程序融为一体
7.1 序
7.1.1 为何需要壳和程序一体化
7.1.2 为阅读此章节需要的知识
7.1.3 基于此章节用的的例子程序说明
7.2 欺骗检查壳的工具
7.2.1 fi是如何检查壳的
7.2.2 欺骗fi
7.3 判断自己是否给脱壳了
7.3.1 判断
文件
尺寸
7.3.2 检查标记
7.3.3 外部检测(
使用
dll)
7.3.4 hook 相关的api(防止loader和调试api)
7.4
使用
sdk把程序和壳溶为一体
7.4.1 sdk的意义
7.4.2 做一个带sdk的壳
7.5 后记:关于壳和程序的思考
第8章 Visual Basic 6 逆向工程
8.1 简介
8.2 P-code传奇
8.3 VB编译奥秘
8.4 VB与COM
8.5 VB可
执行
程序结构研究
8.6 VB程序事件解读
8.7 VB程序图形界面(GUI)解读
8.8 VB程序
执行
代码研究
8.9 我们的工具
8.10 VB程序保护篇
附录A 在Visual C++中
使用
内联汇编
附录B 在Visual Basic中
使用
汇编
破解
PE
文件
★工具用法 1.Olly
ICE
/OllyDB (1)标题栏中"模块-"后的程序名就是程序领空;双击命令字节码设置/取消
断点
,双击汇编语句编辑代码(重新载入后消失),输入‘;’可输入注释。其他不详功能点右键发现。 (2)在反汇编窗口,右键快捷菜单里选择"查找->所有参考文本字串"可以查找字符串.
使用
右键快捷菜单里"超级字串参考->"插件的功能更强大,可以查出许多内置查找功能无法找到的有用信息.
有关
Soft
ICE
的详细操作指导教程
有关
Soft
ICE
的详细操作指导教程 一 命令: . 作用: 在代码窗口中定位当前指令 语法: . 用法: 当代码窗口可见时, .命令(点命令)使得当前的CS:EIP 所指向的指令可见, 并且高亮显示. 另外,此命令也把
Soft
ICE
从其他内存区域中切回原先弹出的内存区域. 详见后面的ADDR命令. 点评: 当你在代码窗口中上下浏览时,有可能走得
汇编语言
21,497
社区成员
41,618
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章