Zell@bug
zell@bug is a tool for searching bugs in other programs. zell@bug will set itself as
debugger of the program being analyzed. In the commandline of zell@bug you specifies
some modules for monitorizing. Zell@bug will set breakpoints on all exports of that
modules. When one of that breakpoints causes a debug event zell@bug will read 20
params in the stack and it will see where that params are pointing. When you call
zell@bug you specifies too the string to match, so zell@bug will try to find a param
pointing that string. If the param is found zell@bug is able to print the stack in
the point where the string was matched. You can specifies how many DWORDs in the
stack you would like to printf. In that manner you are able to backtrace the stack
trying to see in what points the string was used (for searching possible bugs there).
You can say zell@bug it stopped at ret of that apis too.
A example:
You have a program opening port 80. You could want to see where is the code managing
data received in that port. So you send a wellknown string to that port. The server
should be being debugged with zell@bug, and zell@bug should be being searching the
same string that you sent to the port. Then you will see where the string is being
used, and you could try to search bugs there.
I must to code a better search of the string in params, accepting regular expression
and that things. For now it will only check the string in the start of the memory
where the parameter is pointing.
Download project