jueves, 11 de diciembre de 2014

--------- TIPOS DE HACKER´S -----------

--------- TIPOS DE HACKER´S -----------

 

Existen los hacker´s - Cracker´s - Phreaker´s - Carder´s muchísimas variantes de ellos en la informática y todos quisiéramos algún día saber todas esas artes que se manejan en estas áreas, pero realmente se han preguntado:

Existen otro tipo de Hacker´s?

y les COMENTO QUE SI.............Ya que en todas las áreas de las ciencias técnicas y sociales cada una tiene sus hackers SI AMIGOS cada una tiene sus hacker´s que son las personas que tienen una habilidad especial en alguna area.

-----------------------------------------------------------

Estos Hacker´s que aparecen en este video tienen una diferencia muy marcada con los HACKER´S informáticos, saben cual es?
----------------------------------------------------------------------------------

Simplemente que estos hacker´s unen sus talentos para demostrar la calidad de su técnica de ejecución, los informaticos (muchos de ellos, no todos, pero la mayoría) se unen para estar socabando, denigrando, trolleando, ching**** a los demas.


OJALA y la escena mexicana recobre lo que fue años atras (Y)

Solo vean este video y sabran a lo que me refiero , ellos tambien son hacker´s...... buenisimo video.......................MIS RESPETOS PARA ESTOS HACKER´S



martes, 9 de diciembre de 2014

Forensia Informática - Certified White Hat Forensic Professional - CWHFP+120 -

-----------------------
Forensia Informática 
--------------------------------
Certified White Hat Forensic Professional 
- CWHFP+120 -
------------------------------------------------- 

Aqui les dejamos un WEBCAST previo al inicio de la Certificación que daremos en la Certified White Hat Professional 


Certified White Hat Forensic Professional 
- CWHFP+120 -

Inicio: 2 de Febrero del 2015
Modalidad: online
Horario: 8 pm a 10 Pm.
Duración: 3 meses

--------INSCRIPCIONES ABIERTAS ---------

informes@ccat.edu.mx  -- www.ccat.edu.mx
 

lunes, 8 de diciembre de 2014

Por que Crackean nuestros passwords?



*************
Siempre me he preguntado: por que Crackean nuestros passwords?
*************



vean este ejemplo de hashes tomadas al azar........



---------------------------------
ab2473d7ee1c56a5bfc3978b27c4a9af:mangesh123456
50b206ec0c3a1dda418def3e51ab6b21:webcertain
3096ca0224146b658466caf3af3d5b5c:maxspeed2
98fee06092cd129a22ee258d133966f4:EmeralD3
5c53101a0da6eda1e6d3f43e136d6615:kalu0976
681835216cbabdf52e79a4bde630acf1:Benloyal
d1bf039215bf561407a19ede8b06f94a:fetx7500
bc13bc66cde1ce5dc59e6bffecc00cd7:wyddfa73
84b252871443341c86c0d280a3940f8c:67us43t4
--------------------------------------

Si amigos como lo pueden ver:

-- 8 espacios en el password
-- Combinación solo de letras mayusculas, minusculas y números


 

y luego dicen por que crackean nuestros passwords.......


en si amigos por favor usemos passwords mas complicados, usando números letras mayusculas y minusculas, caracteres especiales, y un espacio de 10 o mas en el largo del password..

por ejemplo un password fuerte podría ser:

Ch1l1t@M3x-CcC4t-41@2

md5 hash: 2a0186442cc1ecb5032b11f578c78f51

este es un ejemplo de algo que nos podria servir.......... solo un ejemplo


tal vez paresca un poco dificil de recordar pero debemos de usar este tipo de datos para cuando obtengan tu hash sea mas complicado poder obtener tu passwords desencriptado.

Cabe mencionar que hoy en dia se usan sistemas GPu`s para poder hacer ataques de fuerza bruta distribuidos y así obtener el password rapido y sencillo y en poco tiempo.




--= TECNOLOGÍA DE CLUSTER DE HACKEO CON EL CUAL CUENTA CCAT =--


En si en ccat acabamos de crear un CLUSTER DE CRACKEO que ya los alumnos de la CWHP conocen y vieron su potencial.


------------CARACTERISTICAS------------

*** 4 COMPUTADORAS con Intel® Core™ i7-4790 Processor (8M Cache, up to 4.00 GHz)

*** 7 tarjetas Nvidia gtx 760 con Núcleos CUDA 1152 - Base Clock - 980
Boost Clock 1033 - Tasa de llenado de textura 94.1

teniendo en total: 8064 nucleos de procesamiento GPU CUDA..

*** pudiendo romper los siguientes passwords: 






 

*** usando fuentes de poder Coolermaster Power Supply 1500w Silent Pro M2 Rs-f00-spm2

para poder llevar el servicio de recuperacion de passwords.........que en breve sacaremos al aire.



.*******
SI NECESITAS EL SERVICIO DE RECUPERACION DE PASSWORDS........ CONTACTANOS .......
**********

es como el dicho dice:

“Trata a tu contraseña como a tu cepillo de dientes. No dejes que nadie más lo use y hazte con una nueva cada seis meses".




--= TAZA DE TIEMPO "aproximado" PARA ROMPER UN PASSWORD =--




Bueno como sabemos normalmente las personas solo usan passwords de 8 espacios como máximo, pero para dar un acercamiento más real a la desencripción de un password de 17 caractéres podría ser:

Nos basaremos en un ataque de fuerza bruta normal y cabe mencionar que con un ataque de fuerza bruta distribuido con GPU´s más o menos se reduciría al 50% el tiempo de recuperación del password, basados también en el tipo de encriptación que sea y la optimización de la utilería usada para tal fin.

---------------------------
Vamos a decir que si el password fuera de:
------------------------------------------

--> 1 a 4 usando solo Letras Minúsculas = 5 Min.

--> 1 a 7 usando lo que es solo letras pero Mayúsculas y Minúsculas 9 Hrs.

--> 1 a 7 usando lo que es solo letras pero Mayúsculas, minúsculas, caracteres especiales y números 15 hrs.

Y así más o menos subiría el tiempo de espera para la descripción, ahora sobre de 1 al 17 usando letras Mayúsculas, minúsculas, caracteres especiales y números usando los GPU´S.

Hace ya un tiempo que di el servicio de recuperación de PASSWORD de una WPA que no se sabía el largo del password y se configuró la utilería para hacer todas las combinaciones posibles en un ataque de fuerza bruta distribuido con GPu´s y lo dejamos trabajando el cluster empezando con las combinaciones de 1 a 4, 1 a 6 y 1 a 10 con letras mayúsculas, minúsculas, números y caracteres especiales y tardó en recuperarlo 26 Hrs. y el password fue de 8 de longitud.

Cabe mencionar que esto es un aproximado, ok.

PD. también una cosa con la cual se debe de lidiar con estos clusters de GPU´s es la energía que consumen..... uffff muchísima.......... pero bueno.... todo sea por hackear passwords.... (Y)
 


saludos.

martes, 2 de diciembre de 2014

Análisis Técnico de un Sistema de Protección basado en KEYFILE - PARTE 3

Análisis Técnico de un Sistema de Protección basado en KEYFILE - PARTE 3






Una vez desensamblado el ejecutable vamos y damos click en el botón: 




para que nos muestre los String references que contiene y vemos la siguiente ventana:







Donde Donde podemos ver los textos que muestra al llevar a cabo una acción y si ustedes son
muy avivados podemos darnos cuenta de algo súper importante, recuerdan que
habíamos dicho en líneas anteriores que el crackme buscaba un archivo? Y no lo
encontraba? Bueno pues ahí nos podemos dar cuenta que archivo busca:



Abex.l2c


Ya vieron que fácil fue encontrar el nombre del archivo que busca para saber si esta registrado? Ok ahora creemos un archivo con ese nombre en el folder donde tenemos el crackme:




 

Lógicamente este lo creamos en primera instancia con el Block de notas, una vez hecho esto, ejecutamos el crackme y vemos que mensajes nos manda ahora:




Ok perfecto como vemos ya no dice que no encuentra ninguna keyfile, ahora dice que el archivo encontrado cumple con el nombre mas no con el contenido, ya dimos el primer paso, lo siguiente es ahora abrirlo el ejecutable con el debugger llamado OllyDBG el cual nos mostrara en código desensamblado la información:
 
 
 
Ya lo tenemos abierto en el debugger, el siguiente paso es dar clic con botón derecho y seleccionar la opción Serarch for  All reference strings y aparece esto:
 
 
 
 
Donde sin más palabras podemos ver lo mismo que en el W32dasm los strings
references que contiene el ejecutable, ahora demos doble click sobre abex.l2c y
veamos a donde nos lleva:

 
Aquí claramente podemos ver todo el código que se encarga de decidir si es válido o no el KEYFILE en la dirección de memoria: veamos el código desensamblado para entenderle mejor 2 cabe señalar que resaltare las líneas más importantes en color rojo con mis comentarios:

00401025 |. 68 B9204000 PUSH PoC-21.004020B ; |FileName = "abex.l2c" \\ aquí pone en memoria el nombre del archivo\
0040102A |. E8 5E000000 CALL <JMP.&KERNEL32.CreateFileA> ; \CreateFileA \\ en este apartado usa una api de Windows
específicamente la de la librearía KERNEL32 llamada CreateFIleA \\

0040102F |. A3 CA204000 MOV DWORD PTR DS:[4020CA],EAX
00401034 |. 83F8 FF CMP EAX,-1 \\ compara el registro EXA con -1 \\
00401037 |. 74 3C JE SHORT PoC-21.00401075 \\ si es igual salta a la dirección de memoria 401075 \\
00401039 |. 6A 00 PUSH 0 ; /pFileSizeHigh = NULL
0040103B |. FF35 CA204000 PUSH DWORD PTR DS:[4020CA] ; |hFile = NULL
00401041 |. E8 4D000000 CALL <JMP.&KERNEL32.GetFileSize> ; \GetFileSize \\ toma el tamaño del archivo\\
00401046 |. 83F8 12 CMP EAX,12 \\ compara el registro EAX con 12 \\
00401049 |. 75 15 JNZ SHORT PoC-21.00401060 \\ hace un salto condicional JNZ (salta si no es cero) a la dirección de memoria 401060 \\
0040104B |. 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL
0040104D |. 68 35204000 PUSH PoC-21.00402035 ; |Title = "Well done!" \\ empuja el string a memoria \\
00401052 |. 68 40204000 PUSH PoC-21.00402040 ; |Text = "Yep, keyfile found!" \\ empuja el string a memoria \\
00401057 |. 6A 00 PUSH 0 ; |hOwner = NULL
00401059 |. E8 41000000 CALL <JMP.&USER32.MessageBoxA> ; \MessageBoxA \\ aquí hace uso de la librería USER32.DLL para mostrar pun mensaje por medio de la API MessageBoxA \\
0040105E |. EB 28 JMP SHORT PoC-21.00401088 \\ y termina la ejecución \\
00401060 |> 6A 00 PUSH 0 ; /Style = MB_OK|MB_APPLMODAL
00401062 |. 68 79204000 PUSH PoC-21.00402079 ; |Title = "Error"
\\ empuja el string a memoria \\
00401067 |. 68 7F204000 PUSH PoC-21.0040207F ; |Text = "The found file is not a valid keyfile!" \\ empuja el string a memoria \\
0040106C |. 6A 00 PUSH 0 ; |hOwner = NULL
0040106E |. E8 2C000000 CALL <JMP.&USER32.MessageBoxA> ; \MessageBoxA
\\ aquí hace uso de la librería USER32.DLL para mostrar pun mensaje por medio de la API MessageBoxA \\
00401073 |. EB 13 JMP SHORT PoC-21.00401088 \\ y termina la ejecución \\
00401075 |> 6A 00 PUSH 0 ; |/Style = MB_OK|MB_APPLMODAL
00401077 |. 68 54204000 PUSH PoC-21.00402054 ; ||Title = "Error" \\ empuja el string a memoria que será el titulo de la ventana que contendrá la siguiente línea de string\\
0040107C |. 68 5A204000 PUSH PoC-21.0040205ª ; ||Text = "Hmmmmm, I can't find the file!" \\ empuja el string a memoria \\
00401081 |. 6A 00 PUSH 0 ; ||hOwner = NULL
00401083 |. E8 17000000 CALL <JMP.&USER32.MessageBoxA> ; |\MessageBoxA \\ aquí hace uso de la librería USER32.DLL para mostrar un mensaje por medio de la API MessageBoxA \\
00401088 \> E8 0C000000 CALL <JMP.&KERNEL32.ExitProcess> ; \ExitProcess \\ termina la ejecución \\
0040108D $- FF25 54304000 JMP DWORD PTR DS:[<&KERNEL32.CreateFileA>] ; kernel32.CreateFileA
00401093 $- FF25 58304000 JMP DWORD PTR DS:[<&KERNEL32.GetFileSize>] ; kernel32.GetFileSize
00401099 .- FF25 5C304000 JMP DWORD PTR DS:[<&KERNEL32.ExitProcess>] ; kernel32.ExitProcess
0040109F $- FF25 64304000 JMP DWORD PTR DS:[<&USER32.MessageBoxA>] ; USER32.MessageBoxA

**********************************************************

Ok con esto creo que tenemos todo claro para finalizar este análisis hagamos una unión de lo que hace el CRackme:

1. busca si existe el archivo: abex.l2c
2. si lo encuentra verifica el contenido.
3. Compara el contenido del KEYFILE con 12h de error usand
4. Si el contenido no es lo que necesita manda un mensaje o las Apis del sistema operativo.
5. si es lo que necesita te registra y te manda el mensaje de chico bueno.

Ese es el proceso que necesita para validarlo, pero nos encontramos con un problema cuando lo compara con 12h que canijos es esto? Bueno pues muy fácil lo resolveremos con la calculadora de WINDOWS, si están leyendo bien amigos, CON LA CALCULADORA DE WINDOWS resolveremos este dilema del contenido que necesita el KEYFILE Para ser válido.

Vamos y abrimos la calculadora, la pasamos a formato científico y seleccionamos el formato Hexadecimal de la misma y ponemos lo siguiente:


 
 
Una vez hecho esto simplemente seleccionamos el formato DEC para pasar ese mismo valor hexadecimal a valores decimales y veamos que nos dice:




NoS podemos dar cuenta que el valor 12h tiene un valor 18 en decimal, mmmm
entonces lo que tenemos que hacer según el código que vemos del crackme es crear un archivo con el nombre de abex.l2c e incluirle dieciocho valores entonces se me ocurre poner:

Chilitom3x ccat201

Guardamos el archivo y …..

Crowdstrike -> Solución de errores de actualización de CrowdStrike con BitLocker habilitado

En este pequeño articulo ver como componer el problema de CROWDSTRIKE cuando esta habilitado el BITLOCKER, cabe resaltar que puede ser una e...