Getting rr0d to work
Whats rr0d ?
RR0D is a ring 0 debugger. It offers the possibility to debug any kind of code (kernel/user/rasta land). Its philosophy is to be OS independent. That’s why RR0D can today be installed on Linux, *BSD, Wind0ws.
How the hell does it work ?
It works fine. Thanks. Actually, the goal is to keep the code low level enough to *not* use any kernel host code. RR0D is a sort of stand-alone module that installs hooks at each important point to realize such a dream. The only part that is OS dependent is the kernel module interface.
(in Debian)
(http://rr0d.droids-corp.org/ for more information)Lets start the work!!* Downloading it & Unpacking it!!
root::qnix[0]@~ $ wget http://rr0d.droids-corp.org/rr0d_snapshot.tar.gz root::qnix[0]@~ $ tar xzf rr0d_snapshot.tar.gz root::qnix[0]@~ $ cd rr0d_08-02-24/0.3/ |
We downloaded the daily CVS shoot, unpacked it and went to rr0d_08-02-24/0.3/ folder
which most of the work will be done here.
* Configuring it
Make sure you have the kernel sourcecode at /usr/src or at least
the kernel headers Now you must configure rr0d in a file called config.h
open it and read it, its not that hard … if you need help or info
you’ll find a file called README .. read it please , and if you still having problems
contact me.
* Building it
if your using kernel 2.6* copy Makefile-26 to Makefile , then do make
root::qnix[0]@~/rr0d_08-02-24/0.3 $ cp Makefile-26 Makefile ; make |
if your using other kernel’s version copy Makefile-linux to makefile, then do make
root::qnix[0]@~/rr0d_08-02-24/0.3 $ cp Makefile-linux Makefile ; make |
* Installing it & Testing it
Now you’ll have a file called rr0d.ko , type
root::qnix[0]@~/rr0d_08-02-24/0.3 $ insmod rr0d.ko |
Done its installed …
now we are going to test it … open a new file called hellorasta.c and write
#include <stdio.h> int main() { // to active rr0d __asm("int $0x3;"); write(0, "Hello\n", 6); return 0; } |
now compile the code run it.. thats it rr0d will get active and you’ll see something like this ^_^

as you can see this simple code
__asm(“int $0×3;”);
which wakes up rr0d :>
thats enough!!
about 1 year ago
hey,i installed everything as you said,am not good at assembly but am learning.i can program in C tho.when i compile,i get segmentation fault as output,what can be wrong?
about 1 year ago
am using opensuse 11.0 by the way…
about 1 year ago
Can i see a log of the compiling process, and if you have a core file it’ll help me to figure out the problem , to get a core file just type “ulimit -c unlimited” in your terminal or do it in any other ways then get the segfault again , a “core” will be dumped it has lots of useful information that might help us figure out the problem .
about 1 year ago
I have segmentation fault too. I’m using Ubuntu 8.10,
is there any way to solve the problem?
about 1 year ago
And now i’m having Trace/breakpoint trap error!?
about 1 year ago
How long have you been blogging…your good at it.
about 1 year ago
Thank Halley ,,, not for a long time just blogging when i’m bored or have a free time ,, and now i don’t have time at all,, i’m always busy moving around things doing stuff.. but i’ll blogging soon.
about 11 months ago
What theme are you using? Can’t wait to start my own blog.
about 9 months ago
When i do gcc hellorasta.c and then ./a.out i get this message:
killed
about 9 months ago
@Vivian
I’m using a mixture of themes made by me and others.
@Dragan
Could you give me more information about the error message, so I can help you. Just make sure that you have configured everything correctly, and make sure that you have installed the module correctly,
then try to activate the model.