Welcome to SOFTICE. The SOFTICE project (Scalable, Open source, Fully Transparent and Inexpensive Clustering for Education) aims at leveraging Linux virtualization (e.g. User Mode Linux) and clustering technologies to support innovative pedagogies for undergraduate laboratories in courses such as Operating Systems and Networking. 4.7 out of 5 stars 14,784 $69.95 $ 69. 95 $90.00 $90.00 In our tests, the ICE-21 made standout ice cream that was barely distinguishable from ice cream made in more expensive machines.
NuMega SoftICE 4.05 Release Notes
-----------------------------------------------------------------
Table Of Contents
- What’s New in SoftICE 4.05 (versus 4.0)
Event viewing for BoundsChecker memory events (EVMEM command)
Using SoftICE on a System without a Keyboard or Monitor
Numerous bug fixes - Known Anomalies in version 4.05
- Setting Up Remote Debugging
- System Requirements
- Installation
- SoftICE Video Troubleshooting Tips
- Quick Start to Debugging
- Using SoftICE with Windows 2000
- Using Multiple Monitors with Windows 98 and Windows 2000
- Debugging Display Drivers with Windows 98
- Using SoftICE with Visual C++ 5.0 and Visual C++ 6.0
- Using SoftICE with Borland C++ Builder
- Known Anomalies
- Troubleshooting Tips
- Reporting Problems And Suggestions
What’s New in SoftICE 4.05 (versus 4.0)
- You can display detailed information about BoundsChecker memory events in the Command window using the EVMEM command.
Minor Features/Enhancements/Bug fixes in version 4.05
- You can now use SoftICE in headless mode. Headless mode implies absence of keyboard and video support on the local machine. A user must remotely connect to the debugger over the serial port or network when running in Headless mode. Configuring SoftICE to run in Headless mode ensures that SoftICE does not interact with keyboard, mouse, or video hardware in anyway.
This is advantageous in situations when SoftICE does not support the video card, keyboard, or mouse on the local machine, or when you are debugging drivers for those hardware components. You must remotely connect to the debugger over the serial port or network when running in headless mode. Configuring SoftICE to run in headless mode ensures that SoftICE does not interact with keyboard, mouse, or video hardware in any way. This would be advantageous in situations when SoftICE does not support the video card, keyboard, or mouse on the local machine, or when you are debugging drivers for those hardware components.
Enabling support for SoftICE on a system without a keyboard or monitor involves setting one of two registry values. To disable SoftICE video support, under HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNtice, create a DWORD registry value 'NullVGA' and set it equal to '1'. To disable the keyboard, create a DWORD value 'NullKeyboard' in the same location and set it to '1'.
Known Anomalies in Version 4.05
- The minimum memory requirement for BoundsChecker Driver Edition is 32 MB. If you run BoundsChecker or FieldAgent and SoftICE on a Windows NT or Windows 2000 system with 32 MB memory, you must reduce the SoftICE video buffer to 1024 KB and use the small size history buffer. If you try to set video memory to less than 1024 KB, SoftICE might behave incorrectly. This is not an issue when SoftICE is not running.
- This release of SoftICE does not support Power Management. Disable StandbyHibernate modes when you run SoftICE. If the machine goes into StandbyHibernate mode while SoftICE is running, it will be unable to come back.
- When SoftICE is loaded, BoundsChecker Driver Edition no longer collects READ_PORT_UCHAR calls from the keyboard driver (i8042prt.sys, ms8042.sys, L8042prt.sys, etc.). This occurs because SoftICE hooks READ_PORT_UCHAR to support keyboard functionality.
- SoftICE does not support special features of Synaptics touch pads. These touch pads are components in many laptop machines. There are two workarounds for this problem.
- Configure the mouse to use the Standard PS2 drivers which are supported.
- Run SoftICE in headless mode remotely over the serial port or network.
- Currently, the specifiers TID, PID, THREAD and PROC do not work in the expression evaluator (?) on Windows 98.
Setting Up Remote Debugging
Original author(s) | NuMega |
---|---|
Developer(s) | Compuware |
Initial release | 1987; 34 years ago (DOS) |
Final release | |
Operating system | Microsoft Windows |
Type | Debugger |
License | Proprietary |
SoftICE is a kernel modedebugger for DOS and Windows up to Windows XP. Crucially, it is designed to run underneath Windows such that the operating system is unaware of its presence. Unlike an application debugger, SoftICE is capable of suspending all operations in Windows when instructed. For driver debugging this is critical due to how hardware is accessed and the kernel of the operating system functions. Because of its low-level capabilities, SoftICE is also popular as a software cracking tool.
Softice 4 5 Serials Free
Microsoft offers two kernel-mode debuggers, WinDbg and KD, for no charge. However, the full capabilities of WinDbg and KD are available only when two interlinked computers are used. SoftICE therefore is an exceptionally useful tool for difficult driver related development. The last released version was for Windows XP.
Older versions exist for DOS and compatible operating systems. SoftICE was originally produced by a company called NuMega, and was subsequently acquired by Compuware in 1997, which in turn sold the property to Micro Focus in 2009. Currently, Micro Focus owns the source code and patents, but is not actively maintaining SoftICE.
Naming[edit]
'Soft' refers to software, and the 'ICE' part of the name is an allusion to in-circuit emulator.
History[edit]
The original SoftICE for DOS was written in 1987 by NuMega founders Frank Grossman and Jim Moskun. The program, written in 80386assembly language, played the role of an operating system and ran software in virtual 8086 mode. It sold for $386.
SoftICE/W (for Windows) was developed in the 1990s, and was instrumental in the Writing of 'Undocumented Windows', by Andrew Schulman, David Maxey and Matt Pietrek. SoftICE/W was derived from an earlier, lesser known product, SoftICE for NetWare (32-bit protected mode). One of the key advantages it had over Microsoft's debuggers is that it enabled single machine debugging, rather than requiring a second machine to be connected over a serial port.
The principal developers of SoftICE were Dom Basile ('Mr. SoftICE'), Tom Guinther (Kitchen Sink, Symbol Engine), Gerald Ryckman (Video drivers and Kitchen Sink), Ray Hsu (Video drivers for Windows 95), and Dan Babcock (SoftICE/NT 3.1/3.5: Universal video driver, symbol engine), with contributions by a variety of NuMega developers including Frank Grossman, Jim Moskun and Matt Pietrek.
In 1998 the codebase for SoftICE/95 was ported to run on the Windows NT platform.
Newer versions of SoftICE patch deep into Microsoft Windows. As such, old versions of SoftICE are rarely compatible with new versions of Windows. Compuware therefore offered SoftICE as a subscription so that it could be kept up to date and in sync with the latest Microsoft Windows version.
It used to be offered as part of Compuware's DriverStudio package but was discontinued in April 2006.
Termination[edit]
As of April 3, 2006 the DriverStudio product family has been discontinued because of 'a variety of technical and business issues as well as general market conditions'. Maintenance support was offered until March 31, 2007.
Anti-SoftICE measures[edit]
Software vendors have put in place a wide range of countermeasures to protect themselves from people employing SoftICE as a tool to analyse software.
For example, here is code some vendors used to detect the presence of SoftICE running in the same machine as an early countermeasure:
More and better such measures have evolved since. While most of them can only deter the less experienced and determined hackers, SoftICE is no longer a tool of choice for someone new to analysing software.
Today vendor's defenses are based on more sophisticated packers/protectors, e.g. Themida, Armadillo or ASProtect which pack the program code and tamper with entry point addresses so it is hard to find the program's original entry point (OEP). That is also true for the program's import address table (IAT). However tools for hiding SoftICE are also available, such as IceStealth and IceExt for Windows NT, or Icedump and IcePatch for Windows 9x.[2]
Reception[edit]
BYTE in 1989 listed Soft-ICE as among the 'Distinction' winners of the BYTE Awards, stating that 'If you're developing 8086-based applications on an 80386 machine, this is an essential and affordable tool'.[3]
Alternatives[edit]
A commercial kernel-level debugger called Syser claims to continue where SoftICE left off.
A shareware debugger, but free to use, OllyDbg is a 32-bit assembler-level debugger from Oleh Yuschuk. However, it can only be used for user-mode debugging.
An open source kernel debugger similar to SoftICE named Rasta Ring 0 Debugger (RR0D) is available.[4][5] It provides low-level debugging for Microsoft Windows, Linux, OpenBSD, NetBSD, and FreeBSD. This project does not seem to be actively maintained. As of June 2016, the last change in its GitHub source code repository occurred in December 2008.[6]
LinICE is another kernel-level debugger with a SoftICE look and feel. As of 2015, it also has not been updated for several years.[7]
Softice 4 5 Serials Download
HyperDBG is a kernel-level debugger leveraging hardware-assisted virtualization. As of 2011, it was last updated in May 2010.[8]
A debugger called BugChecker is a 32-bit single-host kernel debugger for Windows 2000 and XP, developed and made available as open source for educational purposes. BugChecker allows users to trace into both user and kernel code, both on uniprocessor and multiprocessor versions of Windows 2000 and XP.[9]
Softice 4 5 Serials Online
Many hypervisors allow debugging the kernel running in the virtual machine through exposing some kind of debugger interface that can control the virtualized processor directly. This allows debugging even if a kernel does not have native debugging facilities.
References[edit]
- ^NuMega SoftICE 4.05 Release Notes
- ^'Category:SoftICE Extensions - Collaborative RCE Tool Library'. Woodmann.com. Retrieved 2014-04-24.
- ^'The BYTE Awards'. BYTE. January 1989. p. 327.
- ^'RR0D/Presentation'. Wiki.droids-corp.org. Retrieved 2014-04-24.
- ^'Rasta Ring 0 Debugger (RR0D) - Collaborative RCE Tool Library'. Woodmann.com. 2007-10-18. Retrieved 2014-04-24.
- ^joe. 'ice799/rr0d'. Github.com. Retrieved 2016-06-05.
- ^'LinICE Debugger'. sites.google.com. Retrieved 2015-07-31.
- ^'hyperdbg - A kernel debugger that leverages hardware-assisted virtualization'. Code.google.com. Retrieved 2014-04-24.
- ^'BugChecker'. BugChecker. Retrieved 2014-04-24.
External links[edit]
4/5 As A Percentage
- Pietrek, Matt (2006-04-11). 'More on SoftIce, from one of its parents'. Archived from the original on 2017-10-10. Retrieved 2017-10-10.
- Using Visual SoftICE Release 1.3.0 for Windows NT / Windows 2000 / Windows XP(PDF). Compuware Corporation. 2003-05-19. Doc. 11581. Archived(PDF) from the original on 2017-10-09. Retrieved 2017-10-09.