Provided by: yazc_0.4.1-1_amd64 bug

NAME

       yazc - yet another zip cracker

SYNOPSIS

       yazc [-h] [-V]
       yazc COMMAND OPTIONS... FILE

DESCRIPTION

       yazc  cracks password protected zip files. Three attack methods are supported: bruteforce, dictionary and
       plaintext.

       Note: Only files encrypted using the legacy Pkware encryption method are supported.

BRUTEFORCE

       The bruteforce command tries every possible character combination. A general rule of thumb is to use this
       command when you suspect the password to be 8 characters or less.

       -c, --charset=CHARSET
              Set the character set to CHARSET.

       -i, --initial=STRING
              Set the initial password to STRING.

       -l, --length=NUM
              Set the maximum password length to LENGTH characters.

       -a, --alpha
              Use characters [a-z].

       -A, --alpha-caps
              Use characters [A-Z].

       -n, --numeric
              Use characters [0-9].

       -s, --special
              Use special characters "!:$%&/()=?{[]}+-*~#@|;".

       -t, --threads=NUM
              Distribute  load  to  NUM  threads.  For  maximum performance, this should be set to the number of
              logical processors available.

       -h, --help
              Display help and exit.

DICTIONARY

       The dictionary command reads passwords from a text file (or stdin if no file argument is provided). It is
       assumed that each password is separated by a newline.

       -d, --dictionary=FILE
              Read passwords from FILE.

       -h, --help
              Display help and exit.

PLAINTEXT

       The  plaintext  command  uses  a  known  vulnerability  in  the  pkzip stream cipher to find the internal
       representation of the encryption key. To use this attack type, you need at least 13 known plaintext bytes
       from  any  file  in  the  archive. Generally, this means that you need to obtain at least 13 bytes of the
       compressed stream before it was encrypted.

       The plaintext command expects two file arguments  along  with  the  corresponding  offsets  separated  by
       colons. The first file argument is the plaintext filename and offsets:

              PLAINTEXT:BEGIN:END

       The second file argument is the encrypted archive filename and offsets (this time including the offset of
       the first byte of the cipher):

              CIPHERTEXT:BEGIN:END:CIPHER_BEGIN

INFO

       The info command lists the filenames, offsets and the encryption header for each  file  in  the  archive.
       This is useful to determine what configuration to pass to the plaintext command.

EXAMPLES

       Use  a  bruteforce  attack on file archive.zip using only lower case letters and distribute the load to 8
       threads:

              yazc bruteforce -a -t8 archive.zip

       Use a dictionary attack on file archive.zip and use passwords from rockyou.txt:

              cat rockyou.txt | yazc dictionary archive.zip

       Use a plaintext attack on archive.zip. Take plaintext bytes 100 to 650 and map them to  ciphertext  bytes
       112  to  662.  Use these bytes to reduce the number of keys and perform the attack. Once the intermediate
       key is found, decrypt the rest of the cipher (begins at offset 64) to  get  the  internal  representation
       (the encryption key derived from the password). If possible the actual (or equivalent) password will also
       be recovered and printed.

              yazc plaintext plain.bin:100:650 archive.zip:112:662:64

AUTHOR

       Marc Ferland <marc.ferland at gmail dot com>

       Part of this software was inspired by fcrackzip by Marc Lehmann and pkcrack by Peter Conrad. The original
       plaintext algorithm was developed by Eli Biham and Paul C. Kocher.

                                                                                                         YAZC(1)