¡Hola, Invitado!


Patrocinantes


Síguenos en Facebook


Síguenos en Twitter

Compartir este tema:
[Código] Saber si se está ejecutando como root
.:WindHack:. Sin conexión
Administrador
*******

Mensajes: 841
Registro en: Jul 2010
Facebook Google+ Twitter YouTube
Gracias dados: 62
Gracias recibidos: 60
Mensaje: #1
Saber si se está ejecutando como root
  • Compartir en Delicious
  • Compartir en Digg
  • Compartir en Linkedin
  • Compartir en MySpace
  • Compartir en Technorati
  • Compartir en Tuenti
En algunos casos necesitamos que nuestra aplicación sea ejecutada como usuario root en GNU/Linux. Por lo cual, debemos de comprobar cuál usuario ejecutó la aplicación.

En este caso lo haré en C++ y usando la función getuid(), la cual retorna el Id. del usuario ( User ID, UID ) que es un número único y hace referencia al usuario en el archivo /etc/passwd.

Si abrimos el archivo anterior podemos encontrar en la primera línea lo siguiente:

Lenguaje GENERICO
root:x:0:0:root:/root:/bin/bash

El cuarto valor sería el identificador.

Bueno, no siendo más voy con el código. En este caso, diseñé la función IsRoot() que retorna 0 si se ejecutó como root y 1 si no.

Lenguaje C++
#include <unistd.h>
#include <iostream>
 
using namespace std;
 
/*
 * IsRoot()
 */
int IsRoot()
{
	int sUser = getuid();
 
	if (sUser != 0)
		return 1;
	else
		return 0;
}
 
int main()
{
	if (IsRoot() == 0)
	{
		cout << "-- Root Calc --" << endl;
		cout << " 2 x 2 = " << 2*2 << endl;
	}
	else
		cout << "Debe ejecutar como root" << endl;
}

[Imagen: WindSig.php]
[Imagen: DaW-User.png]
[Imagen: administradorq.png]
"The only thing they can't take from us are our minds."
22-12-2010 12:17 PM
WWW Buscar Citar
xacks Sin conexión
Miembro
***

Mensajes: 2
Registro en: Mar 2011
Gracias dados: 0
Gracias recibidos: 0
Mensaje: #2
RE: Saber si se está ejecutando como root
  • Compartir en Delicious
  • Compartir en Digg
  • Compartir en Linkedin
  • Compartir en MySpace
  • Compartir en Technorati
  • Compartir en Tuenti
Esta muy bien , pero de todos modos , prefiero hacerlo asi.
En shellcodes de perl se usa mucho.
Código:
system(whoami);
(Este mensaje fue modificado por última vez en: 16-03-2011 10:00 AM por xacks.)
16-03-2011 09:59 AM
Buscar Citar




Usuario(s) navegando en este tema: 1 invitado(s)