
Sistema de cola y recursos para descifrar contraseñas
CrackLord es un sistema diseñado para proporcionar un sistema escalable, conectable y distribuido tanto para el descifrado de contraseñas como para cualquier otro trabajo que necesite muchos recursos informáticos. Dicho de otra manera, CrackLord es una forma de balancear la carga de los recursos, como CPU, GPU, Red, etc., de múltiples sistemas de hardware en un único servicio de colas a través de dos servicios principales: el Recurso y la Cola. No hará estas tareas más rápidas, pero facilitará su gestión.
Hay tres componentes principales en CrackLord como se muestra en la imagen anterior:
Tenemos un conjunto de paquetes construidos para cada lanzamiento que hacemos, si desea simplemente usarlos puede hacerlo siguiendo las instrucciones aquí.
Si desea compilar desde el código fuente, primero necesitará un entorno de compilación Go funcional con GOPATH configurado. Además, probablemente querrá tener Git y Mercurial configurados para recopilar las diversas bibliotecas y complementos que hemos utilizado en el código.
Primero, necesitará obtener cracklord en sí.
go get github.com/jmmcatee/cracklord
A continuación, necesitamos descargar todas las dependencias tanto para el demonio de recurso como para el demonio de cola.
go get github.com/jmmcatee/cracklord/cmd/queued
go get github.com/jmmcatee/cracklord/cmd/resourced
Ahora podemos compilar el demonio de cola y el demonio de recurso
go build github.com/jmmcatee/cracklord/cmd/queued
go build github.com/jmmcatee/cracklord/cmd/resourced
Finalmente, podemos ejecutar tanto el demonio de recurso como el de cola, que estarán en los directorios cmd/queued y cmd/resourced respectivamente. También necesitará configurar los diversos archivos de configuración, cuya información se puede encontrar en nuestra wiki.
Probablemente la forma más fácil de involucrarse es escribir un nuevo complemento de herramienta. Si tiene herramientas que utiliza como parte de pruebas, investigación o trabajo y desea integrarlas, puede escribir fácilmente una nueva herramienta y enviarnos una solicitud de extracción (pull request). Nos aseguraremos de integrarla lo antes posible. En el directorio plugins hemos creado una herramienta vacía para proporcionar orientación y ayuda. Si también tiene una forma interesante de interactuar con los recursos, también podría escribir un complemento de administrador de recursos, quizás para un servicio en la nube que aún no soportamos o alguna nueva forma de realizar el trabajo.
Debido a la forma en que funciona el lenguaje Go, tenemos que compilar todas las herramientas incluidas, así que si haces algo que te gustaría compartir, envíanos una solicitud de extracción y lo probaremos y lo publicaremos para que todos lo usen.
Tenemos una API estándar que el demonio de cola publica para acceso. Nos adelantamos y escribimos una interfaz web estándar que también usa la misma API. ¡Eso no significa que no puedas hacer una mejor! También estamos considerando escribir algunos scripts para automatizar trabajos comunes en nuestro flujo de trabajo, si terminas haciéndolos, envíanos enlaces o una solicitud de extracción y nos aseguraremos de encontrar un lugar / ¡te mencionaremos!
Estamos trabajando duro para mantener la documentación actualizada con todo lo que hacemos, pero siempre hay espacio para un cómo hacer, tutorial o ejemplo, y nos encantaría cualquier ayuda que puedas proporcionar en esos aspectos. Dirígete a nuestra wiki y mira qué necesita corrección o adición.
Por supuesto, no hay nada que diga que no puedas trabajar en los demonios de cola y recurso de CrackLord. Tenemos nuestra lista de problemas y cualquier ayuda para solucionarlos será muy apreciada.