Comandos capados en servidor *nix

Iniciado por Percontex, 27 Octubre 2011, 01:26 AM

0 Miembros y 1 Visitante están viendo este tema.

Percontex

Saludos a todos, aquí voy con esta duda.

Me interesa el acceso a una web "A" en un servidor, al no encontrar métodos para acceder por esta, logre colar una phpshell en una web "B" del mismo servidor.

Hasta ahí todo bien, planeaba simplemente escalar privilegios o intentar moverme a ciegas al directorio de la web que me interesaba esperando encontrarme con algún directorio con permisos de escritura.

Pero aquí viene el problema, el servidor tiene capada la ejecución de comandos del sistema, ni siquiera puedo correr el "uname", o "id", no sirve ni el "ls", ni digamos ejecutar scripts.

Sin embargo tengo estos recursos:

*Algunos permisos de escritura y ejecución en varios directorios de la web B.

*Como derivado de lo anterior puedo crear tantos ficheros .php como desee y del mismo modo puedo accesarlos vía web browser.

* También logre colarme a una base de datos de la web "B", por lo cual puedo ejecutar consultas sql.

* Puedo listar archivos y directorios gracia a la phpshell (pero como dije no puedo listarlos por comandos como dir o ls)

* Safe-mode = OFF

Hasta donde sé no hay forma de correr comandos del sistema por sql (verdad?).

Y ya que no puedo ejecutar ni un solo comando nix me he quedado atorado.

Es posible codear algo en php que salte este limitante? ("system($cmd" no es una opción.), tal vez cifrando o algo parecido?.

O cualquier cosa de utilidad para esta problemática?, de conocer algo me podrían dar un pequeño rayo de orientación sobre como proseguir?  :rolleyes:

PD: Ya probé todas las funciones de php, exec, popen, system, passthru, sin resultados...

Percontex

Bump*

Investigando más a fondo, la causa de el problema son las decenas de funciones bloqueadas en el php :-(

ini_restore, proc_open, link, symlink, linkinfo, mysql_change_user, highlight_file, show_source, php_uname, getrusage, set_time_limit, getmypid, dl, leak, listen, system, exec, passthru, popen, chown, chgrp, putenv, diskfreespace, shell_exec, proc_nice, stream_socket_server, stream_socket_recvfrom, stream_socket_accept, apache_child_terminate, apache_get_env, apache_set_env, apache_note, stream_set_timeout, disk_total_space, disk_free_space, virtual

No veo que me hayan dejado algo bueno, es posible hacer algo sin esto?, o algún método de ocuparlas a pesar de que estén bloqueadas?