<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
   <channel>
      <title>Hex blog</title>
      <link>http://hexblog.com/</link>
      <description>About IDA Pro, decompilation, programming, binary program analysis, information security.</description>
      <language>en</language>
      <copyright>Copyright 2009</copyright>
      <lastBuildDate>Fri, 19 Jun 2009 21:02:48 +0100</lastBuildDate>
      <generator>http://www.sixapart.com/movabletype/?v=3.2</generator>
      <docs>http://blogs.law.harvard.edu/tech/rss</docs> 

            <item>
         <title>Function call graph plugin sample</title>
         <description><![CDATA[<p>IDA Pro already has a function call graph facility, nonetheless it employs WinGraph32.</p>]]></description>
         <link>http://hexblog.com/2009/06/function_call_graph_plugin_sam.html</link>
         <guid>http://hexblog.com/2009/06/function_call_graph_plugin_sam.html</guid>
         <category>IDA Pro</category>
         <pubDate>Fri, 19 Jun 2009 21:02:48 +0100</pubDate>
      </item>
            <item>
         <title>IDA Pro 5.5 and Hex-Rays 1.1 have been released!</title>
         <description><![CDATA[<h3>IDA Pro 5.5</h3>

We are happy to announce a new version of IDA Pro! The major news is the
new docking user interface. There are many other improvements: processor modules,
file formats, analysis tweaks, well, the usual stuff. There is a new MS Windows
Crash Dump Loader and improved Bochs debugger. The complete list of new
features and bug fixes is available here
<p>
<a href="http://www.hex-rays.com/idapro/55/index.htm">http://www.hex-rays.com/idapro/55/index.htm</a>


<h3>Hex-Rays 1.1</h3>


We also release a new version of our decompiler: now with the floating point
support. It was a technically challenging task and required lots of testing, but
we are very happy with the end result. It can really handle floating point
computations and generates reliable output. All subtle nuances, like conversion
rules, fpu stack state, predefined compiler helper functions, are all taken care of.
<p>
The decompiler uses debug information if it is available: in this case, even local
variable names and types will be restored. If there is no debug information, the
decompiler will still generate correct and precise output. In fact, it is designed
to work without debug information, which means that virtually any
compiler-generated executable can be analyzed and turned into C output.


<h3>New pricing and support plans</h3>

With this release, we update the pricing of IDA Pro and Hex-Rays Decompiler.
While the initial purchase prices are increased, upgrade prices go down.
In order to streamline the upgrade process, we will use the same rules for
all our products: now a support plan is renewable any time while it is active
and also three months after its expiration. The new support period is counted from
the expiration date of the previous support period.
<p>
If you upgraded your IDA/Hex-Rays copy the last month with older prices,
do not worry. For you, we will add a month of support for the IDA license,
and three months of support for Hex-Rays Decompiler.
<p>
We will continue to accept old-style upgrade orders until 12 October 2009.


<h3>How to request the new versions</h3>

As usual, the new versions are free for users whose licenses are within active
support plan. Submit your ida.key to
<p>
<a href="https://www.hex-rays.com/updida.shtm">https://www.hex-rays.com/updida.shtm</a>l
<p>
and expect a message from us within 5-10 minutes. Sometimes we do not have your
email in the database, so please specify it (otherwise we will have no means of
communicating with you).
<p>
To request the new version of the decompiler, please use Edit, Plugins, Hex-Rays,
Check for updates in IDA.


<h3>Is your key too old?</h3>

If your key is too old for a free update, you might still be
eligible for a discounted upgrade. Until 12 October 2009 we offer the upgrade
prices for all purchases made two years ago or less. The order forms can be
found here:
<p>
<a href="http://www.hex-rays.com/idapro/idaorder.htm">http://www.hex-rays.com/idapro/idaorder.htm</a>
<p>
We will arrange an electronic delivery to existing customers.
<p>
That's all folks! Enjoy the release.

]]></description>
         <link>http://hexblog.com/2009/06/ida_pro_55_and_hexrays_11_have.html</link>
         <guid>http://hexblog.com/2009/06/ida_pro_55_and_hexrays_11_have.html</guid>
         <category></category>
         <pubDate>Mon, 15 Jun 2009 17:30:59 +0100</pubDate>
      </item>
            <item>
         <title>IDA Pro 5.5 goes alpha </title>
         <description>After many months of work, IDA Pro 5.5 is now in alpha stage and this week the beta will be out for testing.</description>
         <link>http://hexblog.com/2009/06/ida_pro_55_goes_alpha.html</link>
         <guid>http://hexblog.com/2009/06/ida_pro_55_goes_alpha.html</guid>
         <category>IDA Pro</category>
         <pubDate>Tue, 02 Jun 2009 15:12:44 +0100</pubDate>
      </item>
            <item>
         <title>Decompiling floating point</title>
         <description><![CDATA[It is a nice feeling, when, after long debugging nights, your software
finally runs and produces meaningful results. Another hallmark is when other users
start to use it and obtain useful results. Usually this period is very busy: lots
of new bugs are discovered and fixed, unforeseen corner cases are handled.
Then another period starts: when users come back
for more copies,with more ideas, request more functionality, etc. This is what is happening
with the decompiler now and I feel it is time to update you with the latest news.
<p>
]]></description>
         <link>http://hexblog.com/2009/05/decompiling_floating_point.html</link>
         <guid>http://hexblog.com/2009/05/decompiling_floating_point.html</guid>
         <category>Decompilation</category>
         <pubDate>Tue, 05 May 2009 13:13:32 +0100</pubDate>
      </item>
            <item>
         <title>IDA v5.4 demo</title>
         <description><![CDATA[<p>Just a quick note for interested parties: we prepared the new demo version of IDA Pro. The new demo includes the bochs debugger. The debugger is fully functional with just one limitation: it will become inactive after a number of commands. I prefer to tell you this in advance rather than this limitation to be discovered in the middle of a heavy debugging session ;)</p>

<p>Here's the download link:</p>

<p><a href="http://www.hex-rays.com/idapro/idadowndemo.htm">http://www.hex-rays.com/idapro/idadowndemo.htm</a></p>

<p>Enjoy!</p>]]></description>
         <link>http://hexblog.com/2009/04/ida_v54_demo.html</link>
         <guid>http://hexblog.com/2009/04/ida_v54_demo.html</guid>
         <category>IDA Pro</category>
         <pubDate>Fri, 17 Apr 2009 17:01:55 +0100</pubDate>
      </item>
            <item>
         <title>Advanced Windows Kernel Debugging with VMWare and IDA&apos;s GDB debugger</title>
         <description><![CDATA[<P>We have already published <a href="http://www.hex-rays.com/idapro/debugger/gdb_vmware_winkernel.pdf">short tutorial</a> on Windows kernel debugging
with IDA and VMWare on our site, but the debugging experience can
still be improved.</P>
<P>VMWare's GDB stub is very basic, it doesn't know anything about processes or
threads (for Windows guests), so for anything high-level we'll need
to do some extra work. We will show how to get the loaded module list
and load symbols for all them using IDAPython.</P>
]]></description>
         <link>http://hexblog.com/2009/02/advanced_windows_kernel_debugg.html</link>
         <guid>http://hexblog.com/2009/02/advanced_windows_kernel_debugg.html</guid>
         <category>IDA Pro</category>
         <pubDate>Thu, 19 Feb 2009 14:21:04 +0100</pubDate>
      </item>
            <item>
         <title>IDA Pro has 9 debugger modules</title>
         <description><![CDATA[<p><a href="http://www.hex-rays.com/idapro/54/index.htm"><img src="http://www.hex-rays.com/idapro/debugger/debuggers_logo_small.gif" align=left border=0 /></a> Since the number of debugger modules in IDA surpassed <a href="http://en.wikipedia.org/wiki/The_Magical_Number_Seven,_Plus_or_Minus_Two">the magical number seven plus or minus two</a>, we created a small table describing what is available and what is not:</p>

<p><a href="http://www.hex-rays.com/idapro/debugger/index.htm">http://www.hex-rays.com/idapro/debugger/index.htm</a></p>

<p>Direct links to tutorials are available here:</p>

<p><a href="http://www.hex-rays.com/idapro/idasupport.htm">http://www.hex-rays.com/idapro/idasupport.htm</a></p>

<p>I know, I know - we need to add 64-bit support for all platforms, port the Bochs debugger module to Linux, and... any other suggestions? I personally would love to have source level debugging, yet it requires some substantial changes to the kernel. We probably will move in this direction, sooner or later...</p>]]></description>
         <link>http://hexblog.com/2009/02/ida_pro_has_9_debugger_modules.html</link>
         <guid>http://hexblog.com/2009/02/ida_pro_has_9_debugger_modules.html</guid>
         <category>IDA Pro</category>
         <pubDate>Thu, 05 Feb 2009 19:43:41 +0100</pubDate>
      </item>
            <item>
         <title>Kernel debugging with IDA</title>
         <description><![CDATA[<p>When IDA introduced debugging facilities years ago, the task of analyzing hostile code became more enriched: no more looking at static code and figuring out what it does, instead just run the malware in a virtual machine and debug it remotely, even debug just a small code snippet from the database (Bochs based debugger plugin).</p>]]></description>
         <link>http://hexblog.com/2009/01/kernel_debugging_with_ida.html</link>
         <guid>http://hexblog.com/2009/01/kernel_debugging_with_ida.html</guid>
         <category>IDA Pro</category>
         <pubDate>Fri, 30 Jan 2009 14:02:18 +0100</pubDate>
      </item>
            <item>
         <title>IDA v5.4 release is not that far away</title>
         <description><![CDATA[<p>I'm happy to inform you that we are entering the beta stage of IDA v5.4!</p>

<p>In addition to numerous small and not that small improvements, the new version will have three debugger modules: <strong>bochs, gdb, and windbg</strong>, selectable on the fly (the active debugger session will be closed, though ;))<br />
<ul><br />
<li> With the bochs debugger, we offer three different worlds:<strong> run-any-code-snippet</strong> facility, <strong>windows-like-environment</strong> for PE files, and <strong>any-bochs-image</strong> bare-bone machine emulation mode. You can read more about this module in our blog: <a href="http://hexblog.com/2008/11/bochs_plugin_goes_alpha.html">http://hexblog.com/2008/11/bochs_plugin_goes_alpha.html</a><br />
<li> With gdb, <strong>x86 </strong>and <strong>arm </strong>targets are supported. Among other things, it is possible to connect IDA to <strong>QEMU </strong>or debug a virtual machine inside <strong>VMWare</strong>. We tried it <strong>iPhone </strong>as well. However, while it works in some curcimstances, there were some problems on the gdbserver side.<br />
<li> With windbg, <strong>user </strong>and <strong>kernel </strong>mode debugging is available. The debugger engine from Microsoft, which is currently the only choice for driver and kernel mode debugging, can be used from IDA. It can automatically load required <strong>PDB </strong>files and populate the listing with meaningful names, types, etc. Speaking of PDB files, IDA imports more information from them: local function variables and types are retrieved too, c++ base classes are handled, etc.<br />
</ul></p>

<p>The gdb and windbg debugger modules support local and remote debugging. We tried to make the debugger modules as open as possible: target-specific commands can be sent to all backend engines in a very easy and user-friendly way.</p>

<p>As usual, better analysis and many minor changes have been made. If you spend plenty of time analyzing gcc generated binaries, you'll certainly appreciate that IDA handles its weird way of preparing outgoing function arguments. Now it can trace and find arguments copies to the stack with <strong>mov </strong>statements.</p>

<p>The new IDA will support <strong>Python </strong>out of box, thanks to Gergely Erdelyi, who kindly agreed the <a href="http://www.d-dome.net/idapython/">Python plugin</a> to be included in the official distribution. In fact, the main IDA window will have a command line to enter any python (or other language) expressions and immediately get a result in the message window.</p>

<p>We will prepare the detailed list of improvements later this week.</p>]]></description>
         <link>http://hexblog.com/2009/01/ida_v54_release_is_not_that_fa.html</link>
         <guid>http://hexblog.com/2009/01/ida_v54_release_is_not_that_fa.html</guid>
         <category>IDA Pro</category>
         <pubDate>Tue, 20 Jan 2009 01:29:01 +0100</pubDate>
      </item>
            <item>
         <title>IDA and MIPS</title>
         <description><![CDATA[<p>If you analyze MIPS binaries, you may find useful the following addition to IDA:</p>

<p><a href="http://www.binary-art.net/?p=1002">http://www.binary-art.net/?p=1002</a></p>

<p>This is MIPS emulator for Linux. It can generate an IDC script after emulation, which then can be applied to the database and make it more readable.</p>

<p> </p>]]></description>
         <link>http://hexblog.com/2008/11/ida_and_mips.html</link>
         <guid>http://hexblog.com/2008/11/ida_and_mips.html</guid>
         <category>IDA Pro</category>
         <pubDate>Fri, 21 Nov 2008 13:54:43 +0100</pubDate>
      </item>
            <item>
         <title>Bochs plugin goes alpha</title>
         <description><![CDATA[<p><a href="http://bochs.sourceforge.net/"><img valign="top" border="0" src="http://www.hexblog.com/ida_pro/pix/bochs.jpg" alt="Bochs emulator" align="left" style="padding-right:5px"/></a><br />
Bochs debugger plugin is in alpha stage now, all of the 3 loaders mentioned in the <a href="http://hexblog.com/2008/10/bochs_emulator_and_ida.html#more">previous blog entry</a>, are now complete.</p>]]></description>
         <link>http://hexblog.com/2008/11/bochs_plugin_goes_alpha.html</link>
         <guid>http://hexblog.com/2008/11/bochs_plugin_goes_alpha.html</guid>
         <category>IDA Pro</category>
         <pubDate>Fri, 07 Nov 2008 12:51:41 +0100</pubDate>
      </item>
            <item>
         <title>From simple to complex</title>
         <description><![CDATA[The last week Elias ran a sample malware in the <a href="http://hexblog.com/2008/10/bochs_emulator_and_ida.html">Bochs emulator</a> and I was curious to see what it exactly does. 

So I took the unpacked version of the malware and fed it into the decompiler. It turned out to be a pretty short downloadler (different AV vendors give it different names: <em>Lighty</em> 
after the compression method, or <em>FraudLoad</em>, or <em>FakeAlert</em>, etc). Such simple code is very easy to decompile. I renamed some functions and added some 
comments to it. The final text looks like this:
]]></description>
         <link>http://hexblog.com/2008/10/from_simple_to_complex.html</link>
         <guid>http://hexblog.com/2008/10/from_simple_to_complex.html</guid>
         <category>Decompilation</category>
         <pubDate>Fri, 10 Oct 2008 18:22:30 +0100</pubDate>
      </item>
            <item>
         <title>Bochs Emulator and IDA?</title>
         <description><![CDATA[<p><a href="http://bochs.sourceforge.net/"><img valign="top" border="0" src="http://www.hexblog.com/ida_pro/pix/bochs.jpg" alt="Bochs emulator" align="left" style="padding-right:5px"/></a><br />
The next version of IDA will be released with a bochs debugger plugin, and what is nice about is that you will be able to use it easily by just downloading bochs executables and telling IDA where to find it.</p>]]></description>
         <link>http://hexblog.com/2008/10/bochs_emulator_and_ida.html</link>
         <guid>http://hexblog.com/2008/10/bochs_emulator_and_ida.html</guid>
         <category>IDA Pro</category>
         <pubDate>Fri, 03 Oct 2008 00:11:14 +0100</pubDate>
      </item>
            <item>
         <title>BITS used as a covert channel</title>
         <description><![CDATA[<div style=" background-image: url(/decompilation/pix/redcables.jpg);background-repeat: no-repeat">
The idea to use BITS to download files from the internet is not new. If you check the corresponding page from Wikipedia, you will find that

<p><a href="http://en.wikipedia.org/wiki/Background_Intelligent_Transfer_Service">Background Intelligent Transfer Service (BITS) is a component of modern Microsoft Windows operating systems that facilitates prioritized, throttled, and asynchronous transfer of files between machines using idle network bandwidth.</a></p>

<p>The web page ends with a list of third-party applications that use BITS. However, as any technical method, it can be used for evil purposes as well. Eric Landuyt analyzed a malware that exploits it for bad:</p>

<p><a href="http://www.datarescue.com/laboratory/trojan2008/index.html">http://www.datarescue.com/laboratory/trojan2008/index.html</a></p>

<p>I liked the "proof of concept" WinDbg script that runs the malware in a controlled manner. Breakpoints with actions are very powerful, indeed.</p>

<p>Nice work, Eric! <img src="/decompilation/pix/thumbsup.gif" /><br />
</div></p>]]></description>
         <link>http://hexblog.com/2008/09/bits_used_as_a_covert_channel.html</link>
         <guid>http://hexblog.com/2008/09/bits_used_as_a_covert_channel.html</guid>
         <category>Decompilation</category>
         <pubDate>Thu, 25 Sep 2008 23:12:18 +0100</pubDate>
      </item>
            <item>
         <title>The IDA Pro book</title>
         <description><![CDATA[<center>
<a href="http://nostarch.com/idapro.htm">
<img src="http://www.hexblog.com/ida_pro/pix/idabook.jpg">
</a>
</center>
<p>
This is not the first book about IDA Pro. However, this is the first
book I recommend to anyone using IDA Pro because of the following points:
<ul>
<li><b>Comprehensive</b>: it describes all major IDA features
by starting at the beginning and going all the way to the end.
Experienced users may be tempted to skip the first few chapters; resist this
temptation and you will discover something new (I did :)

<li><b>Accurate</b>: it is very difficult to be detailed and precise when describing
such a complex product. Chris does it excellently well.

<li><b>Real</b>: handles real world malware, packers, and obfuscated code

<li><b>No fillers</b>: it is direct and concise

<li><b>Profound</b>: this is not just a collection of recipes or tricks, but will give
you a better understanding of the IDA architecture, thus saving you
from unnecessary frustration. Knowing the limitations of your tool is just as
important as knowing its capabilities.


</ul>
It comes tons of code snippets, scripts, and sample modules. Programming for IDA Pro is covered
too: from simple plugins to processor modules.
<p>
If you want to use IDA efficiently, get your copy from <a href="http://nostarch.com/idapro.htm">No Starch Press</a>!
<p>
<small>
UPD for numerologists: the book has exactly 640 pages, no less, no more!
</small>]]></description>
         <link>http://hexblog.com/2008/08/the_ida_pro_book_1.html</link>
         <guid>http://hexblog.com/2008/08/the_ida_pro_book_1.html</guid>
         <category>IDA Pro</category>
         <pubDate>Tue, 26 Aug 2008 18:53:07 +0100</pubDate>
      </item>
      
   </channel>
</rss>
