[ Home | Liste | F.A.Q. | Risorse | Cerca... ]


[ Data: precedente | successivo | indice ] [ Argomento: precedente | successivo | indice ]


Archivio: Luglio 2003 ml@sikurezza.org
Soggetto: Re: Angel Bypass
Mittente: twiz
Data: 26 Jul 2003 17:11:38 -0000
On Thur, 24 Jul 2003 03:28:02 Dark-Angel wrote :

> Ciao a tutti,
> guardando il codice di angel ho trovato un problemino:
> if (strcmp(pathname, "/dev/kmem") == 0)
> Basta creare un link simbolico a /dev/kmem per far fallire questo check
> e cosi darci pieno accesso. Stesso discorso per /dev/mem.

Una possibile soluzione potrebbe essere quella di confrontare, invece del
nome, l' inode del file. Questo si trova nel campo i_ino della struct
inode. Ecco un esempio di come accedere all'inode :


  struct nameidata *nd;
  mm_segment_t oldfs = get_fs();

 nd = (struct nameidata *)kmalloc(sizeof(struct nameidata), GFP_KERNEL);
 set_fs(KERNEL_DS);
 user_path_walk("/dev/kmem", nd);
 set_fs(oldfs);

 printk("<1> Inode : %d\n", nd->dentry->d_inode->i_ino);

 set_fs(KERNEL_DS);
 user_path_walk("/root/bla", nd);
 set_fs(oldfs);

 printk("<1> Inode : %d\n", nd->dentry->d_inode->i_ino);

 kfree(nd);

Dove "bla" e' un link simbolico a /dev/kmem.
La struct inode e' altrettanto raggiungibile da una struct file,
attraverso file->f_dentry->d_inode->i_ino, quindi ogni possibile
"approccio" di apertura/check del file che si scelga di usare e'
"supportato" :)

> Qui http://darkangel.antifork.org/codes/userspace/Daemon.tgz
> potete trovare un codice dimostrativo che sfrutta questo problema per
> disattivare angel tramite kmem.

Complimenti Dark-Angel :)
Ciaps

           twiz

--------------------------------------------------------------
Perla Enrico  -  twiz
emails : twiz@xxxxxxxx - twiz@xxxxxxxxxxxx - twi@xxxxxxxxx
- We must believe in something to find if we've grown -
--------------------------------------------------------------




________________________________________________________
http://www.sikurezza.org - Italian Security Mailing List




[ Home | Liste | F.A.Q. | Risorse | Cerca... ]

www.sikurezza.org - Italian Security Mailing List
(c) 1999-2005