Crunch

De Linuxmemo.

(Différences entre les versions)
(les Pattern (-t))
 
(39 versions intermédiaires masquées)
Ligne 1 : Ligne 1 :
[[Catégorie:Securite-outils]]
[[Catégorie:Securite-outils]]
 +
[[Catégorie:Kali]]
https://www.0x0ff.info/2013/crunch-generateur-passwords/
https://www.0x0ff.info/2013/crunch-generateur-passwords/
Ligne 7 : Ligne 8 :
  crunch <min> <max> [[charset | -f /path/to/charset.lst nom_du_charset] |-t patern | [-s startblock] | -d 2@ | -o file.txt] | -p texte ]
  crunch <min> <max> [[charset | -f /path/to/charset.lst nom_du_charset] |-t patern | [-s startblock] | -d 2@ | -o file.txt] | -p texte ]
 +
 +
crunch <min-len> <max-len> [charset OR -f /path/to/charset.lst charset-name] [-o wordlist.txt] [-t [FIXED]@@@@] [-s startblock] [-c number]
 +
 +
 +
crunch <caractère-mini> <caractère-max> [["jeu de caractères" | -f /path/to/charset.lst nom_du_charset] |-t patern | [-s startblock] | -d 2@ | -o file.txt] | -p "jeu de caractères" OR -p word1 word2]
 +
 +
<pre>
 +
Now let's look at the options.
 +
 +
-b : the maximum size of the wordlist (requires -o START)
 +
-c : numbers of lines to write to the wordlist (requires -o START)
 +
-d : limit the number of duplicate characters
 +
-e : stop generating words at a certain string
 +
-f : specify a list of character sets from the charset.lst file
 +
-i : invert the order of characters in the wordlist
 +
-l : allows the literal interpretation of @,%^ when using -t
 +
-o : the output wordlist file
 +
-p : print permutations without repeating characters (cannot be used with -s)
 +
-q : Like the -p option except it reads the strings from a specified file
 +
-r : resume a previous session (cannot be used with -s)
 +
-s : specify a particular string to begin the wordlist with
 +
-t : set a specific pattern of @,%^
 +
-z : compress the output wordlist file, accompanied by -o
 +
 +
Reference:
 +
@ represents lowercase letters
 +
, represents uppercase letters
 +
% represents numbers
 +
^ represents special characters
 +
</pre>
 +
 +
==Options==
 +
*config
 +
-f /path/to/charset.lst charset-name
 +
-f /usr/share/crunch/charset.lst hex-lower
 +
*disagne
 +
-i              # inverse la sortie (baa au lieu de aab)
 +
 +
*modèles (pattern)
 +
-t @,%^          # exemple crunch 9 9 abc -t @@god@@@@
 +
          @ will insert lower case characters
 +
          , will insert upper case characters
 +
          % will insert numbers
 +
          ^ will insert symbols
 +
 +
-l              # LITERALS (littérale) seulement avec -t conserve un symbole comme un caractère littéral
 +
                  # exemple: crunch 7 7 -t p@ss,%^ -l a@aaaaa
 +
 +
* anagram
 +
crunch 0 0 -p charset          # anagram de lettres
 +
ou
 +
-P word1 word2 ...  #anagram de mots
 +
#exemple: crunch 4 5 -p abc
 +
#exemple: crunch 4 5 -p dog cat bird
 +
#Les nombres ne sont pas traités mais sont nécessaires.
 +
 +
*limitation
 +
-d 2@            # exemple limitation a 2 caractères identique consécutif (aab pas aaa)
 +
-s startblock    # commence a génération qu'à "startblock string"
 +
-e string        # "END" string déclenche l’arrêt de crunch
 +
 +
*input
 +
-q filename.txt
 +
 +
*output
 +
-o wordlist.txt    # fichier de sortie
 +
-b number[type]    # taille en  kb, mb, gb, kib, mib, and gib
 +
-c number          # nombre de ligne
 +
-o wordlist.txt -r  # RESUME seulement avec -o, reprends une session où elle a été interrompue
 +
-z gzip, bzip2, lzma, and 7z # compression du ou des fichiers de sortie
 +
                              # crunch 1 4 -o START -c 6000 -z bzip2
 +
*affichage
 +
-u                  # -u doit être la dernière options et désactive l'impression du pourcentage
==Charset prédéfinies dans "charset.lst"==
==Charset prédéfinies dans "charset.lst"==
 +
*pour les "espace", il faut les échapper avec un \ ou utiliser les ""
 +
crunch 1 6 abcdefg\
 +
crunch 1 6 "abcdefg  "
 +
 +
*charset "+" (avec avec positionnement)
 +
crunch 3 3 abc + 123 !@# -t @%^
 +
# générera un mot long de 3 caractères avec un caractère comme premier caractère,
 +
#le numéro comme deuxième caractère et un symbole pour le troisième caractère.
 +
#le l'ordre dans lequel vous spécifiez les caractères souhaités avec -t est important.
 +
*les charset prédéfinis dans le fichier "charset.lst"
     hex-lower [0123456789abcdef]
     hex-lower [0123456789abcdef]
     hex-upper [0123456789ABCDEF]
     hex-upper [0123456789ABCDEF]
Ligne 47 : Ligne 131 :
==les Pattern (-t)==
==les Pattern (-t)==
-
Longueur minimum et maximum sont identiques … en effet quand vous spécifier un pattern, les longueurs spécifié doivent correspondre à la longueur de ce pattern.
+
*Longueur minimum et maximum sont identiques … en effet quand vous spécifier un pattern, les longueurs spécifié doivent correspondre à la longueur de ce pattern.
     @ : pour représenter les caractères minuscules
     @ : pour représenter les caractères minuscules
Ligne 59 : Ligne 143 :
  pass02
  pass02
  ...
  ...
 +
 +
*Positionnement de groupe de mot:
 +
    @ groupe de mot 1
 +
    , groupe de mot 2
 +
    % groupe de mot 3
 +
    ^ groupe de mot 4
 +
Exemple:
 +
crunch 4 4 test gros un dur -t ^%@,
 +
Le signe plus (+) permet de ne pas préciser le contenu du groupe:
 +
crunch 4 4 test + un dur -t ^%@
 +
 +
*Intercalés des mots de notre choix:
 +
Les caractères de la chaine suivant l’argument -t qui ne sont pas @,%^, seront considérés comme une place pour les mots que l’on aura listé après l’argument -p (^ : pour représenter les symboles).
 +
crunch 5 5 -t a^a^a -p admin life size
 +
==Echappement de caractère==
==Echappement de caractère==
-
Mode passe avec un espace, échappement avec in \ ou encadrement " ".
+
Mode passe avec un espace, échappement avec un \ ou encadrement avec " ".
  crunch 1 5 abcdefg\  
  crunch 1 5 abcdefg\  
  crunch 1 5 "abcdefg "
  crunch 1 5 "abcdefg "
-
==Anagrammes (-p)==
+
==Caractère "literal" (-l)==
 +
si vous voulez générer des mots de passe contenant l’un de ces symboles @,%^ l’argument –l pour literal vous permet d’ancrer un de ces symboles(les a ne sont que des indicateur de place).
 +
crunch 5 5 -t p@ss% -l a@aaa
 +
 
 +
==Anagrammes (-p) ou mots qui ne disposent pas de caractères répétitifs==
On liste les anagrammes de l’occurrence suivant -p. Les longueurs min/max doivent être renseignées mais ne sont pas utilisées…
On liste les anagrammes de l’occurrence suivant -p. Les longueurs min/max doivent être renseignées mais ne sont pas utilisées…
  crunch 0 0 -p test
  crunch 0 0 -p test
 +
Même chose avec un mélange de mots
 +
crunch 0 0 -p un jour beau
Il est également possible de prédéfinir un pattern où des mots de notre choix seraient intercalés.
Il est également possible de prédéfinir un pattern où des mots de notre choix seraient intercalés.
  crunch 5 5 -t A^£^1 -p www truc info
  crunch 5 5 -t A^£^1 -p www truc info
Ligne 88 : Ligne 193 :
  aaj
  aaj
  ...
  ...
 +
==Par ou commencer (-s)==
==Découper les fichiers (-c)==
==Découper les fichiers (-c)==
Ligne 93 : Ligne 199 :
Les unités utilisables avec cette option sont les suivantes :  kb, mb, gb, kib, mib, and gib  (kb, mb et gb sont basé sur 1000 tandis que kib, mib et gib sont basé sur 1024).
Les unités utilisables avec cette option sont les suivantes :  kb, mb, gb, kib, mib, and gib  (kb, mb et gb sont basé sur 1000 tandis que kib, mib et gib sont basé sur 1024).
 +
 +
==Astuces==
 +
 +
*Code a 4 chiffres:
 +
 +
Toutes les possibilités
 +
crunch 4 4 -f /usr/share/crunch/charset.lst numeric | wc
 +
10000  10000  50000
 +
 +
Si on connaît les 4 chiffres par example 0259...
 +
crunch 4 4 0259
 +
256    256    1280
 +
 +
*Anagram (permutation)
 +
crunch 4 4 -p rouge
 +
 +
*free
 +
crunch 8 8 -f /usr/share/crunch/charset.lst lalpha-numeric

Version actuelle en date du 10 juin 2024 à 09:48

https://www.0x0ff.info/2013/crunch-generateur-passwords/

Générateur de dictionnaire (avec "modèles")

L’ensemble des caractères qui seront utilisés pour générer tous les mots possibles s’appelle le "charset".

crunch <min> <max> [[charset | -f /path/to/charset.lst nom_du_charset] |-t patern | [-s startblock] | -d 2@ | -o file.txt] | -p texte ]
crunch <min-len> <max-len> [charset OR -f /path/to/charset.lst charset-name] [-o wordlist.txt] [-t [FIXED]@@@@] [-s startblock] [-c number]


crunch <caractère-mini> <caractère-max> [["jeu de caractères" | -f /path/to/charset.lst nom_du_charset] |-t patern | [-s startblock] | -d 2@ | -o file.txt] | -p "jeu de caractères" OR -p word1 word2]
Now let's look at the options.

-b : the maximum size of the wordlist (requires -o START)
-c : numbers of lines to write to the wordlist (requires -o START)
-d : limit the number of duplicate characters
-e : stop generating words at a certain string
-f : specify a list of character sets from the charset.lst file
-i : invert the order of characters in the wordlist
-l : allows the literal interpretation of @,%^ when using -t
-o : the output wordlist file
-p : print permutations without repeating characters (cannot be used with -s)
-q : Like the -p option except it reads the strings from a specified file
-r : resume a previous session (cannot be used with -s)
-s : specify a particular string to begin the wordlist with
-t : set a specific pattern of @,%^
-z : compress the output wordlist file, accompanied by -o

Reference:
@ represents lowercase letters
, represents uppercase letters
% represents numbers
^ represents special characters

Sommaire

[modifier] Options

  • config
-f /path/to/charset.lst charset-name
-f /usr/share/crunch/charset.lst hex-lower
  • disagne
-i               # inverse la sortie (baa au lieu de aab)
  • modèles (pattern)
-t @,%^          # exemple crunch 9 9 abc -t @@god@@@@
         @ will insert lower case characters
         , will insert upper case characters
         % will insert numbers
         ^ will insert symbols
-l               # LITERALS (littérale) seulement avec -t conserve un symbole comme un caractère littéral
                 # exemple: crunch 7 7 -t p@ss,%^ -l a@aaaaa
  • anagram
crunch 0 0 -p charset          # anagram de lettres
ou
-P word1 word2 ...  #anagram de mots
#exemple: crunch 4 5 -p abc
#exemple: crunch 4 5 -p dog cat bird
#Les nombres ne sont pas traités mais sont nécessaires.
  • limitation
-d 2@            # exemple limitation a 2 caractères identique consécutif (aab pas aaa)
-s startblock    # commence a génération qu'à "startblock string"
-e string        # "END" string déclenche l’arrêt de crunch 
  • input
-q filename.txt
  • output
-o wordlist.txt     # fichier de sortie
-b number[type]     # taille en  kb, mb, gb, kib, mib, and gib
-c number           # nombre de ligne
-o wordlist.txt -r  # RESUME seulement avec -o, reprends une session où elle a été interrompue
-z gzip, bzip2, lzma, and 7z # compression du ou des fichiers de sortie
                             # crunch 1 4 -o START -c 6000 -z bzip2
  • affichage
-u                  # -u doit être la dernière options et désactive l'impression du pourcentage

[modifier] Charset prédéfinies dans "charset.lst"

  • pour les "espace", il faut les échapper avec un \ ou utiliser les ""
crunch 1 6 abcdefg\ 
crunch 1 6 "abcdefg  "
  • charset "+" (avec avec positionnement)
crunch 3 3 abc + 123 !@# -t @%^
# générera un mot long de 3 caractères avec un caractère comme premier caractère,
#le numéro comme deuxième caractère et un symbole pour le troisième caractère.
#le l'ordre dans lequel vous spécifiez les caractères souhaités avec -t est important.
  • les charset prédéfinis dans le fichier "charset.lst"
   hex-lower [0123456789abcdef]
   hex-upper [0123456789ABCDEF]
   numeric [0123456789]
   numeric-space [0123456789 ]
   symbols14 [!@#$%^&*()-_+=]
   symbols14-space [!@#$%^&*()-_+= ]
   symbols-all [!@#$%^&*()-_+=~`[]{}|\:; »‘<>,.?/]
   symbols-all-space [!@#$%^&*()-_+=~`[]{}|\:; »‘<>,.?/ ]
   ualpha [ABCDEFGHIJKLMNOPQRSTUVWXYZ]
   ualpha-space [ABCDEFGHIJKLMNOPQRSTUVWXYZ ]
   ualpha-numeric [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]
   ualpha-numeric-space [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ]
   ualpha-numeric-symbol14 [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+=]
   ualpha-numeric-symbol14-space [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+= ]
   ualpha-numeric-all [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+=~`[]{}|\:; »‘<>,.?/]
   ualpha-numeric-all-space [ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+=~`[]{}|\:; »‘<>,.?/ ]
   lalpha [abcdefghijklmnopqrstuvwxyz]
   lalpha-space [abcdefghijklmnopqrstuvwxyz ]
   lalpha-numeric [abcdefghijklmnopqrstuvwxyz0123456789]
   lalpha-numeric-space [abcdefghijklmnopqrstuvwxyz0123456789 ]
   lalpha-numeric-symbol14 [abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_+=]
   lalpha-numeric-symbol14-space [abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_+= ]
   lalpha-numeric-all [abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_+=~`[]{}|\:; »‘<>,.?/]
   lalpha-numeric-all-space [abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()-_+=~`[]{}|\:; »‘<>,.?/ ]
   mixalpha [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ]
   mixalpha-space [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ ]
   mixalpha-numeric [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789]
   mixalpha-numeric-space [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 ]
   mixalpha-numeric-symbol14 [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+=]
   mixalpha-numeric-symbol14-space [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+= ]
   mixalpha-numeric-all [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+=~`[]{}|\:; »‘<>,.?/]
   mixalpha-numeric-all-space [abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_+=~`[]{}|\:; »‘<>,.?/ ]

[modifier] les Pattern (-t)

  • Longueur minimum et maximum sont identiques … en effet quand vous spécifier un pattern, les longueurs spécifié doivent correspondre à la longueur de ce pattern.
   @ : pour représenter les caractères minuscules
   , : pour représenter les caractères majuscules
   % : pour représenter les nombres
   ^ : pour représenter les symboles
crunch 6 6 -t pass%%
pass00
pass01
pass02
...
  • Positionnement de groupe de mot:
   @ groupe de mot 1
   , groupe de mot 2
   % groupe de mot 3
   ^ groupe de mot 4

Exemple:

crunch 4 4 test gros un dur -t ^%@,

Le signe plus (+) permet de ne pas préciser le contenu du groupe:

crunch 4 4 test + un dur -t ^%@
  • Intercalés des mots de notre choix:

Les caractères de la chaine suivant l’argument -t qui ne sont pas @,%^, seront considérés comme une place pour les mots que l’on aura listé après l’argument -p (^ : pour représenter les symboles).

crunch 5 5 -t a^a^a -p admin life size

[modifier] Echappement de caractère

Mode passe avec un espace, échappement avec un \ ou encadrement avec " ".

crunch 1 5 abcdefg\ 
crunch 1 5 "abcdefg "

[modifier] Caractère "literal" (-l)

si vous voulez générer des mots de passe contenant l’un de ces symboles @,%^ l’argument –l pour literal vous permet d’ancrer un de ces symboles(les a ne sont que des indicateur de place).

crunch 5 5 -t p@ss% -l a@aaa

[modifier] Anagrammes (-p) ou mots qui ne disposent pas de caractères répétitifs

On liste les anagrammes de l’occurrence suivant -p. Les longueurs min/max doivent être renseignées mais ne sont pas utilisées…

crunch 0 0 -p test

Même chose avec un mélange de mots

crunch 0 0 -p un jour beau

Il est également possible de prédéfinir un pattern où des mots de notre choix seraient intercalés.

crunch 5 5 -t A^£^1 -p www truc info

[modifier] Répétition de caractère (-d)

le nombre de fois maximum qu’un caractère identique peut se suivre.

   @ : pour représenter les caractères minuscules
   , : pour représenter les caractères majuscules
   % : pour représenter les nombres
   ^ : pour représenter les symboles
crunch 3 3 -d 2@
aab
aac
aad
aae
aaf
aag
aah
aai
aaj
...

[modifier] Par ou commencer (-s)

[modifier] Découper les fichiers (-c)

-c nombre_de_lignes (vous devez impérativement employer -o START)

Les unités utilisables avec cette option sont les suivantes : kb, mb, gb, kib, mib, and gib (kb, mb et gb sont basé sur 1000 tandis que kib, mib et gib sont basé sur 1024).

[modifier] Astuces

  • Code a 4 chiffres:

Toutes les possibilités

crunch 4 4 -f /usr/share/crunch/charset.lst numeric | wc
10000   10000   50000

Si on connaît les 4 chiffres par example 0259...

crunch 4 4 0259
256     256    1280
  • Anagram (permutation)
crunch 4 4 -p rouge
  • free
crunch 8 8 -f /usr/share/crunch/charset.lst lalpha-numeric
Outils personnels