Bagaimana saya bisa mengekstrak lampiran dari badan email (disandikan sebagai base64)


13

Bagaimana saya bisa mengekstrak lampiran dari email ketika mereka tiba disandikan di badan email seperti ini:

------ =_NEXTPART_FORMSCAPE_MAIL_message101122101615
Content-Type: application/octet-stream; name="MyFile_hasalongish
     filename_22-NOV-2010.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="MyFile_hasalongishfilename_22-NOV-2010.pdf"
Content-Description: MyFile_hasalongishfilename_22-NOV-2010.pdf

JVBEDi0xLjMKJcfsj6IKNSAwIG9iago8PC9MZW5ndGggNiAwIFIvRmlsdGVyIC9GbGF0
ZFRGVSdsfSDF43N0cmVhbQp4nJ0b23IVN/LdXzG1D7vnbOUMo9tISiWpBduAN2CMbZJN
[...]
OUIwOEYxRDcyRjkwRDAxRUU1QzBDMjhEM0Y+XQo+PgpzdGFydHhyZWYKMTMwNDQKJSVF
T0YK
------ =_NEXTPART_FORMSCAPE_MAIL_message101122101615--

Anda harus menemukan alat UUDECODE untuk mengonversi ASCII ke file yang valid.

Pada sistem operasi apa, atau dengan arsitektur email apa (pengiriman unix lokal, fetchmail, Thunderbird, Outlook, ...)?
Gilles 'SO- stop being evil'

Jawaban:


2

Simpan email ke file teks dengan ekstensi .uuedan ekstrak lampiran dengan pengarsipan.


17

Salin hanya teks yang disandikan base64 ke file teks baru foo.txt.

base64 --decode foo.txt > bar.pdf

Saya baru saja mendekodekan aliran base64 yang memiliki bit ekstra pada akhirnya yang harus saya hapus. Itu tampak seperti ini: --=_59494bda030d4629113a60ff13935d81--. Sebelum saya menghapusnya, saya mendapatkan kesalahan: Invalid character in input stream.Setelah saya menghapusnya, tidak ada kesalahan decoding dan dibuka dengan baik.


1

Saya dapat memulihkan file menggunakan decoder base64 dan hanya menyalin teks aktual yang merupakan lampiran yang disandikan, bukan sembarang header / footer yang ada di sekitarnya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.