Advertisement
Guest User

Untitled

a guest
Mar 20th, 2017
99
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 1.04 KB | None | 0 0
  1. #!/usr/bin/perl
  2.  
  3. my $JOHN_PATH = "./john/run";
  4. my $JOHN_WORDLIST = "./rockyou.txt";
  5.  
  6. my $zipFile = $ARGV[0];
  7.  
  8. unless ( -e $zipFile) {die "Zip file not found\n";}
  9. unless ( -e $JOHN_PATH . "/john") {die "john executable not found, please change \$JOHN_PATH\n";}
  10. unless ( -e $JOHN_PATH . "/zip2john") {die "zip2john executable not found, please change \$JOHN_PATH\n";}
  11.  
  12. while (42) {
  13.  
  14.   my ($number) = ($zipFile =~ /(\d+)/);
  15.   my $password = "";
  16.  
  17.   my $cmd = "$JOHN_PATH/zip2john level" . $number . ".zip 2>/dev/null > ./zip.hash";
  18.   `$cmd`;
  19.  
  20.   $cmd = "$JOHN_PATH/john --wordlist=$JOHN_WORDLIST ./zip.hash";
  21.   `$cmd`;
  22.  
  23.   $cmd = "$JOHN_PATH/john --show zip.hash";
  24.  
  25.   my $result = `$cmd`;
  26.  
  27.   if ( $result =~ /^level\d+\.zip\:(.*?)\n/gis ) {
  28.     $password = $1;
  29.   }
  30.  
  31.   $cmd = "unzip -o -P" . $password . " level" . $number . ".zip";
  32.   $result = `$cmd`;
  33. #  print $result . "\n";
  34.  
  35.   if ( $result =~ /\s+extracting:\s+(.*?)\s*\R/gi ) {
  36.     $zipFile = $1;
  37.   }
  38.   else {
  39.     last;
  40.   }
  41.  
  42.   print $number . ":" . $password . "\n";
  43. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement