首页
社区
课程
招聘
[分享]vmware配置softice
发表于: 2011-1-3 15:38 12297

[分享]vmware配置softice

2011-1-3 15:38
12297

给还不能正常使用softice的新手看的,高手就可以跳过了
按照网上的教程在vmware里面安装完driverstudio3.2后net start ntice启动不了,
设置sc config ntice start= auto就可以启动了,
可是按下Ctrl+D键盘鼠标都没反应了,跟死机了差不多
后来试了一下,先打开cmd,然后按Alt+Enter全屏,然后Ctrl+D终于可以见到softice了,
可是这样很不方便,
然后在.vmx文件后面加上

svga.maxFullscreenRefreshTick = 5
vmmouse.present = "FALSE"

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 7
支持
分享
最新回复 (10)
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
我都忘了 SE 怎样用了 (本来就没用过几次)  
2011-1-3 18:18
0
雪    币: 1115
活跃值: (122)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
3
谢谢,辛苦了,前几天soficeice界面也老是出不来
2011-1-3 22:01
0
雪    币: 83
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
softice没人用了吗,
我昨天拿几个小程序调试了一下还行
2011-1-4 15:32
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
不是没人用,是不会用,OD 就如 WINDOWS ,SE 就如 Linux 下的命令行,搞怕了很多人
并且 OD 插件丰富,除非是调试驱动,不然没人会跟自己过不去的,你说调试小程序可以,真的
要干活起来,R3  中  OD  自然是首选
2011-1-4 15:56
0
雪    币: 83
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
简单归纳一下softice的使用吧
准备工作:打开symbol Loader,在Exports选项里面添加dll文件,
为什么要这样呢,比如你要在AppendMenuA下断点,AppendMenuA是在user32.dll里面的,那么你要在Exports选项里面添加user32.dll,然后softice会加载user32.dll的所有函数,否则bpx AppendMenuA会提示找不到的。   又如果要在MFC的函数下断点,一般要加载mfcxx.dll(xx是版本,一般是mfc42.dll)。

下面开始了,可以参考这个例子http://www.pediy.com/tutorial/chap3/Chap3-4.htm
1.打开要调试的程序,Ctrl+D调出softice,如果softice太小可以把字体改大一点set font 3。

2.然后当然是下断点了,有IO断点等等一些命令,按F1可以看帮助,
一般还是用bpx,这个跟OD是一样的,大家应该知道,比如bpx GetDlgItemText,
bl可以查看断点列表,就是break list,显示的断点有编号
bd可以禁用断点,就是break disable,后面接编号,比如bd 3(禁用编号为3的断点),bd *(禁用所有断点)
be可以启用断点,就是break enable,用法跟bd一样
bc可以清除断点,就是break clear,用法也跟bd一样
bpe编辑断点,就是break point edit,用法也跟bd一样
这个bpx跟OD最大的区别就是这个是断在系统模块里面的,所以要按 F12或F11返回程序,而且不管被调试的程序做了什么样的变形系统模块总是没变的,调用api的时候总是能断下来的,所以可以带壳调试。

3.然后是常用控制方法,
下好断点后只要程序调用了被断的api这时softice就会自己跳出来,
F8  是单步步入,相当于OD的F7,
F10是单步步过,相当于OD的F8,
F12是从call中返回,
F7是运行到光标处,相当于OD的F4,
那么OD里面还有个F9是运行程序,softice里面是什么呢?
没有!
softice的界面出来的时候除了softice以外所有程序都暂停运行,连系统时钟都不动了,再次按下Ctrl+D或者F5隐藏softice的时候其它程序又可以运行了,所以要运行程序的时候按下Ctrl+D就可以了,遇到断点softice自己会弹出来。
如果只是想看一下被调试程序的界面,不想让它运行,可以按F4隐藏softice的界面,再次按F4又出来了。

4.其它命令
D  显示内存地址内容,就是data的首字母缩写,比如d eax(显示eax的地址的内容),d 12fe23(显示0x0012fe23处的内容)
E  修改内存单元,就是edit的首字母缩写,跟D用法一样
R  修改寄存器的值,就是register的首字母缩写,比如recx(修改ecx的值),r fl(修改标志位)
如果玩过dos汇编的话这几个命令应该很熟,cmd里面的debug就是这样的。
修改寄存器其实用鼠标操作也很方便,直接用鼠标点要编辑的寄存器然后编辑就可以了,
比如我们要修改一个jz的跳转,可以修改0标志位,直接点击标志位Z,亮了zf就是1,再点一下zf就是0。
?  计算表达式的值,相当于OD的calc
有了这些基本上可以使用softice了,其它的命令可以自己去查,softice我也是第一次用。
2011-1-4 22:34
0
雪    币: 83
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
你大概没用过linux吧,其实linux并不复杂的,linux以前只有字符模式,dos也不一样吗,现在windows是图形界面了,linux也是图形界面了,只是很多教程还是老的吧。
linux下杀进程不一定要kill,也可以点左上角打开系统监视器的,
linux下打开网络连接不一定要ifconfig eth0 up,也可以点右上角的连接网络图标,
linux下解压缩不一定要tar -zxvf xxx.gz,也可以双击打开选择解压路径的,
linux下安装程序不一定要rpm -ivh xxx.rpm,也可以双击的,
linux下编辑文本不一定要vim,也可以双击打开的,默认的编辑器比windows记事本好多了,
linux下修改文件属性不一定要chmod,也可以点右键选择属性的,
linux下新建文件不一定要touch,也可以点右键新建的。
反正基本的功能用不用敲命令的,当然有的功能是必须要命令的,比如ping、netstat,但是windows下不也是一样要cmd命令才能ping么,还有再高级点的比如端口扫描那当然要用nc命令,linux自带,windows下还要专门下载个nc.exe。
那就看你用linux做什么了,如果是编程或者弄服务器的话命令自然少不了,windows下也是一样经常用cmd的。
现在linux一般用作服务器比较多,所以也经常用命令。
普通功能话比如看电影什么的,知道安装程序就够了atp install xxx(程序名)或者yum install xxx。
至于linux下的配置文件,基本上是每个程序目录下有一个纯文本的配置文件,windows的配置文件是统一在注册表里面了,windows的注册表是相当复杂的,即使你把自己电脑的注册表每一个键值都弄明白了,可能在某处新建一个键值有会有你想不到的效果。
2011-1-4 23:38
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
8
大侠猜对了,我曾经用过几天,后来不习惯 ( 被 WINDOWS 毒害太深了 )
2011-1-5 08:26
0
雪    币: 83
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
9
额,就说这么多吧,不讨论了,我会的东西也不多,哪敢称大侠,可能口气有点大,我表示抱歉
2011-1-5 10:10
0
雪    币: 585
活跃值: (578)
能力值: ( LV13,RANK:290 )
在线值:
发帖
回帖
粉丝
10
以前学驱动的时候用过一两次,,搞这个东西太费时间了,,郁闷
现在用WINDBG,,,,,,就是要双机调试,速度也有点慢,哎呀,,,习惯了就好
2011-1-5 15:24
0
雪    币: 23
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
谢谢LZ,安装softICE花了我半天时间。终于弄好了,现在又看到你贴的教程,非常有帮助。
2011-7-13 01:40
0
游客
登录 | 注册 方可回帖
返回
//