SoftICE for WIN95中文命令解说(八)
所属分类:
网络安全 / 工具使用
阅读数:
211
收藏 0赞 0分享
SoftICE for WIN95中文命令解说(八) Copyright (c) 1999 http://coobe.cs.hn.cninfo.net/~tianwei 命令: I1HERE 作用: 遇到内嵌的INT 1指令时激活SoftICE 语法: I1HERE [on | off] 用法: I1HERE 命令使SoftICE在遇到程序中内嵌的INT 1指令时弹出.I1HERE在调试程序时需在某处暂停时特别有用.在SoftICE弹出之前, SoftICE会检查当前是否有一条INT 1指令在程序中.如果没有的话,SoftICE将不弹出.在程序要暂停的指令之前加一句INT 1 就能做到这一点.SoftICE弹出时,EIP 会停在INT 1的下一条指令后.I1HERE 不带参数将显示当前I1HERE的状态.缺省为OFFI1HERE 在与如BoundsChecker 之类的调试工具分工协作时很有用,因为BoundsChecker用到 INT 3,为了防止冲突应使用INT 1. 另外,VMM,Windows内存管理的VxD,在Windows出现某些严重错误时会在严重错误返回前执行一个INT 1指令.如果此时I1HERE 为ON时, 你就能跟踪这类错误. 如由VMM因换页错误而产生INT 1 时寄存器的值如下:.EAX = 错误地址..ESI 指向一个ASCII字符串(信息)..EBP 指向一个CRS(在DDK的VMM.INC中定义的客户寄 存器结构) 点评: 基础信息: INT 1 实际上是单步中断的处理例程. CPU在检测到 TP 标志为1时(TP是由DEBUGGER设的), 就自动进行这一例程. DEBUGGER 们挂接这个中断例程进行一些诸如显示当前寄存器值等操作,并等待用户进一步的指令. 在程序中直接用 INT 1指令也能达到效果.SoftICE不象DOS下的DEBUG.EXE,一碰到 INT 1 就中断,缺省是不中断的,只有当I1HERE 为 ON 时才中断. 命令: I3HERE 作用: 在遇到INT 3 指令时激活SoftICE 语法: I3HERE [on | off] 用法: I3HERE ON 将使SoftICE每碰到一个 INT 3 时都弹出,这在调试程序时需要在某处暂停特别有用.在你需要暂停的指令之前加一个INT 3 就行.如果你是编 WINDOWS程序,加个函数 DebugBreak(). 这个函数也执行一个INT 3.I3HERE 不带参数将显示当前状态.请参见I1HERE. 点评: 基础信息: INT 3 是断点中断处理例程.也被DEBUGGER们挂接,显示寄存器值,给出一些信息,并等待用户下一步操作. DEBUGGER在下断点时,将断点处的指令替换成INT 3,把替换下的指令保存,在执行完例程后再恢复原先保存的指令,修改堆栈中的断点地址, 使程序得以继续. DOS下的老DEBUG.EXE当遇到程序中的INT 3 指令时会进行同样的操作,也修改堆栈中的断点地址,所以IP又停在那条INT 3 上, 如果你打入 G ,程序将一直停在此处,这时改一下IP就可以了. 命令: IDT 作用: 显示中断描述符表 语法: IDT [interrupt-number] 用法: interrupt-number: 所要显示的中断号IDT 命令读取中断描述符表寄存器的值, 获得表基址,然后显示中断描述符表的内容.IDT 命令不带参数将显示所有中断的情况,如果带中断号, 则只显示相应的入口. 输出参数如下:interrupt number: 0-05fh的中断号.interrupt type : 中断类型如下: --------------------- CallG32: 32位调用门. CallG16: 16位调用门. TaskG: 任务门. TrapG16: 16位陷肼门. TrapG32: 32位陷肼门. IntG32: 32位中断门. IntG16: 16位中断门. ---------------------address : (选择符:偏移量)形式的地址.selector's DPL : 选择符的描述符特权级,0,1,2,3present bit : P 或 NP, 表示该描述符是否在内 存中.Owner Offset : 符号名或拥有者名,和在它们中的 偏移. 点评: 参见GDT,LDT. 命令: LDT 作用: 显示局部描述符表 语法: LDT [selector] 用法: selector: 指定LDT 选择符LDT 命令将显示局部描述符表的内容. SoftICE先读取局部描述符表寄存器的值,再定位描述符表. 如果局部描述符表不存在,会显示一个错误信息. 如果指定选择符,则只显示该选择符所指向的描述符. 如果指定的选择符是一个全局选择符, 则SoftICE将自动显示该全局选择符所指的描述符.输出:LDT 的线性基址和长度将显示在输出数据的顶行输出数据的每一行内容的说明:value: 最低两位即描述符特权级type : 描述符类型,如下: --------------------------- Code16 : 16位代码描述符 Data16 : 16位数据描述符 Code32 : 32位代码描述符 Data32 : 32位数据描述符 CallG32: 32位调用门描述符 CallG16: 16位调用门描述符 TaskG32: 32位任务门描述符 TaskG16: 16位任务门描述符 TrapG32: 32位陷肼门描述符 TrapG16: 16位陷肼门描述符 IntG32 : 32位中断门描述符 IntG16 : 16位中断门描述符 Reserved: 保留的描述符 --------------------------- base : 描述符中的段基址limit : 描述符中的段界限DPL : 描述符特权级,0,1,2,3present bit: P 或 NP 表示该段是否在内存中segment attributes: 段特性: --------------------------- RW: 数据段可读写 RO: 数据段只读 RE: 代码段可读可执行 EO: 代码段只可执行 B : TSS(任务状态段)忙置位 --------------------------- 点评: 这段翻译并不完全用PDF手册上的.如"selector" 原指选择符(器),用来指向描述符表中的描述符,而PDF手册中type 的说明全用到 selector. 说的意思虽是一样,但和别的文献矛盾,故认为不妥,将其翻译成descriptor即描述符. 实际上可以看出,一个选择符指向一个描述符,两者是一致的. 描述符类型实际上也就是指向它的选择符类型. 命令: LHEAP 作用: 显示Windows 局部堆 语法: LHEAP [selector | module-name] 用法: selector : 局部描述符表数据选择符.module-name: 16位 模块名.LHEAP 显示Windows程序在全局堆中申请的数据信息.如果不跟选择符参数,当前的DS 寄存器的内容(数据选择符)被做为缺省值. 用前次说过的 HEAP 命令找标有LH 的选择符来做为LHEAP的参数.如果用module-name 做参数,则SoftICE用此模块的缺省数据段进行堆遍历.输出:offset: 16位的偏移量(相对于相应的选择符基址)size : 堆入口(每个组成部分)的字节大小.type : 类型如下: --------------------- FIX : 固定的. MOV : 可移动的. FREE: 空闲的. ---------------------handle: 相应的句柄.对固定的堆组成部分来说, 此值 和offset 相等,且是由 LocalAlloc()返回的. 对于可移动的组成部分来说,此值将会被做为 LocalLock()的参数. 点评: 无.(天气好热!翻译得好累!) 命令: LINES 作用: 改变SoftICE窗口的显示行数 语法: LINES [25 | 43 | 50 | 60] 用法: LINES 命令用来改变SoftICE窗口的显示行数. 默认为25行.可以有:25 行;43 行;50 行;60 行;43,50,60行只适用于VGA卡.LINES 不带参数将显示当前行数.如果用 ALTSCR 命令切换显示器输出到单显,SoftICE自动转为25行,再转回VGA卡时要手工用 LINES 命令来恢复原值. 点评: 实际上, 我的3.20用的是SoftICE自带的通用视频驱动程序,行范围可以从25一直到128 !!(除非为SoftICE开的显存不够) 命令: LOCALS 作用: 从当前栈中列出局部变量 语法: LOCALS 用法: 输出:Stack Offset : 栈偏移.Type definition: 类型定义.Value,Data,or structure symbol({...}) : 值,数据,或结构符号.SoftICE根据局部变量的类型来用不同的形式显示它们,如果是指针,则显示所指向的数据.如果是结构,则显示结构符号.如果既不是指针,又不是结构,则显示本身值. 点评: 无.
如何给你的木马换一个图标 (原创)
我也不费话了因为没有工夫所以只是简单的写了一下 希望学会! 准备工具: 1. 黑洞2001(也可以用别的) 2. 文件捆绑机exe2to1(黑洞作者的新作品) 3. 窃图精灵1.0 4. noskynet 或黑毒克星 注意这些软件到我的网站都可以下载到! 好了!下载完了这些工具我
收藏 0赞 0分享
木马病毒的通用解法
由于很多新手对安全问题了解不多,所以并不知道自己的计算机中了“木马”该怎么样清除。虽然现在市面上有很多新版杀毒软件都可以自动清除“木马”,但它们并不能防范新出现的“木马”程序,因此最关键的还是要知道“木马”的工作原理,这样就会很容易发现“木马”。相
收藏 0赞 0分享
SoftICE for WIN95中文命令解说(十五)
SoftICE for WIN95中文命令解说(十五) Copyright (c) 1999 http://coobe.cs.hn.cninfo.net/~tianwei 命令: WL 作用: 打开或关闭本地窗口;设置本地窗口的大小 语法: WL [window-size] 用法
收藏 0赞 0分享
黑洞2001正式版使用教程
黑洞2001正式版使用教程 黑洞2001是陈经韬2001年的作品,用于远程控制,是一匹不错的木马,功能比较强大但是有一部分功能因为涉及安全问题所以被去掉了,不过这没有关系,读完了这篇教程你就会完全掌握用黑洞2001掌握远程主机的控制权。这篇教程的攻击性极大,所以只供
收藏 0赞 0分享
SoftICE for WIN95中文命令解说(十四)
SoftICE for WIN95中文命令解说(十四) Copyright (c) 1999 http://coobe.cs.hn.cninfo.net/~tianwei 命令: VER 作用: 显示SoftICE版本号 语法: VER 用法: 用Loader32的
收藏 0赞 0分享
Docker构建Web渗透测试工具容器
使用Docker容器,我们可以根据需要创建渗透测试环境或者审计环境。我们也可以将容器作为证据的一部分向客户展示,或者将容器交给客户让他们进行审计
收藏 0赞 0分享
隐藏在Windows XP中的28个秘密武器
Windows XP现在大家都在用了,不过,隐藏在它其中的秘密武器可不是人人都找得到,下面就让我带大家来寻找Win XP中的28个秘密武器。 1、免费的系统教程(system32文件夹下) 安装完windows xp后很想马上学习并体验一下它的魅力吗?我们无需再东奔西走去 找
收藏 0赞 0分享
初级黑客教学
各位老大//// 本文纯属个人见解 //// 如有不满竟请见谅 qq :249395079 emil:lovewxll@eyou.com1. 扫端口(port) port是一个很重要的东西,如果你知道他所有有开的port的话,那你就可以从某个port开始hackin
收藏 0赞 0分享
Telnet的命令模式
除了在Telnet是如何工作的例子介绍的以外,Telnet还有很多的特点。Telnet可发送除了"escape"的任何字符到远程主机上。因为"escape"字符在Telnet中是客户机的一个特殊的命令模式,它的默认值是"Ctrl-
收藏 0赞 0分享
查看更多