📚 OpenRCE is preserved as a read-only archive. Launched at RECon Montreal in 2005. Registration and posting are disabled.








Flag: Tornado! Hurricane!

 Forums >>  Debuggers  >>  Building a Code Coverage Tool

Topic created on: March 10, 2007 08:43 CST by jeffreytan .

I am reading the book <Exploiting Software : How to Break Code> recently. I am very curious regarding the chapter of building a code coverage tool yourself. However, I still have several questions regarding it:
1. One idea is restarting the application, which we wrote back the original saved memory regions into the target application in a later breakpoint. However, shouldn't we also save all the registers during taking memory snap? Should we reset the registers also? The book did not clear this.

2. At conditional jump instruction, how do we know if this instruction is user-input related? Does this have anything to do with "boron" tag as the book talked about? What does "boron" tag mean? Based on my understanding, the principle is: while breaking at a conditional jump instruction, we may check all the general registers, if any register points to our user-supplied data we will identify this instruction as user-supplied data related. Yes? Then, how to determine if the buffer the register points to is our supplied data? I think there are many buffers in an application.

3. Is there any an existing open-source coverage tool for learning purpose? It seems the book did not provide full code as a sample.

I also have 1 or 2 other questions, however, I will save your time here and leave them at a later time.

Thanks very much for any information!

  sp     March 11, 2007 03:38.02 CDT
I haven't read the book so I don't know what it's talking about but maybe these links can help you:

http://hexblog.com/2006/03/coverage_analyzer.html
http://pedram.redhive.com/PaiMei/docs/PAIMEIpstalker_flash_demo/index.html
http://pedram.redhive.com/PaiMei/docs/

Note: Registration is required to post to the forums.

There are 31,328 total registered users.


Recently Created Topics
[help] Unpacking VMP...
Mar/12
Reverse Engineering ...
Jul/06
let 'IDAPython' impo...
Sep/24
set 'IDAPython' as t...
Sep/24
GuessType return une...
Sep/20
About retrieving the...
Sep/07
How to find specific...
Aug/15
How to get data depe...
Jul/07
Identify RVA data in...
May/06
Question about memor...
Dec/12


Recent Forum Posts
Finding the procedur...
rolEYder
Question about debbu...
rolEYder
Identify RVA data in...
sohlow
let 'IDAPython' impo...
sohlow
How to find specific...
hackgreti
Problem with ollydbg
sh3dow
How can I write olly...
sh3dow
New LoadMAP plugin v...
mefisto...
Intel pin in loaded ...
djnemo
OOP_RE tool available?
Bl4ckm4n


Recent Blog Entries
halsten
Mar/14
Breaking IonCUBE VM

oleavr
Oct/24
Anatomy of a code tracer

hasherezade
Sep/24
IAT Patcher - new tool for ...

oleavr
Aug/27
CryptoShark: code tracer ba...

oleavr
Jun/25
Build a debugger in 5 minutes

More ...


Recent Blog Comments
nieo on:
Mar/22
IAT Patcher - new tool for ...

djnemo on:
Nov/17
Kernel debugger vs user mod...

acel on:
Nov/14
Kernel debugger vs user mod...

pedram on:
Dec/21
frida.github.io: scriptable...

capadleman on:
Jun/19
Using NtCreateThreadEx for ...

More ...


Imagery
SoySauce Blueprint
Jun 6, 2008

[+] expand

View Gallery (11) / Submit