Simplemente con el comando "echo" quería cifrar una contraseña con el cifrado MD5, y intentar hacer un ataque bruto, utilizando alguna función (la qual no sé, por eso estoy aquí) donde haga una comparación de muchas contraseñas (ya que tengo entendido que un cifrado MD5 no se puede descifrar).
Dependiendo del Sistema Operativo y Lenguaje de Programación el comando echo actuará diferente pero lo normal es que sirva para mostrar texto en pantalla.
MD5 es una función HASH, no de cifrado. Un ejemplo rápido es que puedes obtener el Hash MD5 de la biblia completa, por ejemplo: 5df9f63916ebf8528697b629022993e8, del mismo modo puedes sacar el hash MD5 de la letra "a" y obtener: 0cc175b9c0f1b6a831c399e269772661. Como vez no es posible tratar los hashes para obtener la entrada original y menos sacar la biblia completa a partir de esos 32 caracteres. El cifrado por otro lado sí que permite obtener la entrada original si conoces el resultado y la clave porque el tamaño del resultado dependerá de la entrada mientras que en las funciones hash la salida es siempre de tamaño fijo.
El ataque de fuerza bruta para este caso es simplemente tomar un hash MD5 (resultado), luego tomar un texto cualquiera y aplicarle la función MD5, luego comprobar si ese resultado coincide con el hash del principio, y así hasta encontrar uno que coincida. Esto no te asegura que hayas obtenido el texto original porque pueden haber colisiones (otro texto que coindice igual sin ser el original), y más con MD5 que está en desuso precisamente por eso.