kwasinski

Parse FileZilla Dump Passwds

Aug 21st, 2015
250
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Perl 1.37 KB | None | 0 0
  1. #!perl
  2. ## Author:: vkwasinski at gmail
  3. ### Parse a FileZila Xml Dump and solve the base64 passwords
  4. ############################################################
  5.  
  6. use Tie::File    qw | tie |;
  7. use MIME::Base64 qw | decode_base64 |;
  8. use Data::Dumper qw | Dumper |;
  9. use utf8;
  10.  
  11. my $filename = defined $ARGV[0]? $ARGV[0]: undef;
  12. die 'Missing [filename] param... aborting!'."\n"  if not defined $filename;
  13.  
  14. my @xmlFile = ();
  15. tie @xmlFile, 'Tie::File', $filename  or die 'Could not open '.$filename.' ... aborting due to '.$!." \n";
  16. local $/;
  17.  
  18. map {
  19.     m{"base64">([\w!"#\$\%\&'()*+,./:;<=>?@\\^_`{|}~-]+)</}i  if defined;
  20.    my $base64decoded = decode_base64($1)  if defined $1;
  21.    s{"base64">[\w!"#\$\%\&'()*+,./:;<=>?@\\^_`{|}~-]+</}{"base64">$base64decoded</}i
  22.  } @xmlFile;
  23.  
  24. print 'Done!'."\n";
  25.  
  26. __DATA__
  27.  
  28. node example:
  29.  
  30.  <Server>
  31.     <Host>someHost</Host>
  32.     <Port>21</Port>
  33.     <Protocol>0</Protocol>
  34.     <Type>0</Type>
  35.     <User>someuser</User>
  36.     <Pass encoding="base64">ckBmQDNs</Pass>
  37.     <Logontype>1</Logontype>
  38.     <TimezoneOffset>0</TimezoneOffset>
  39.     <PasvMode>MODE_DEFAULT</PasvMode>
  40.     <MaximumMultipleConnections>0</MaximumMultipleConnections>
  41.     <EncodingType>Auto</EncodingType>
  42.     <BypassProxy>0</BypassProxy>
  43.     <Name>WhateverName</Name>
  44.     <Comments />
  45.     <LocalDir />
  46.     <RemoteDir />
  47.     <SyncBrowsing>0</SyncBrowsing>
  48. </Server>
Add Comment
Please, Sign In to add comment