25.02.2013 Views

TCP/IP Tutorial and Technical Overview - IBM Redbooks

TCP/IP Tutorial and Technical Overview - IBM Redbooks

TCP/IP Tutorial and Technical Overview - IBM Redbooks

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

► Application<br />

This type is intended for types that do not fit into other categories, <strong>and</strong><br />

particularly for data to be processed by an application program before being<br />

presented to the user, such as spreadsheet data. It is also intended for<br />

application programs that are intended to be processed as part of the mail<br />

reading process (for example, see the PostScript type). This type of usage<br />

poses serious security risks unless an implementation ensures that<br />

executable mail messages are run in a safe or padded cell environment.<br />

Two subtypes are defined initially:<br />

– PostScript: Adobe Systems PostScript (Level 1 or Level 2)<br />

PostScript security issues: Although PostScript is often thought of as a<br />

format for printer data, it is a programming language <strong>and</strong> the use of a<br />

PostScript interpreter to process application/PostScript types poses<br />

serious security problems. Any mail reader that automatically interprets<br />

PostScript programs is equivalent, in principle, to one that automatically<br />

runs executable programs it receives. RFC 2046 outlines the issues<br />

involved.<br />

– octet-stream<br />

This subtype indicates general binary data consisting of 8-bit bytes. It is<br />

also the subtype that a mail reader assumes on encountering an unknown<br />

type or subtype. Any parameters are permitted, <strong>and</strong> RFC mentions two: a<br />

type= parameter to inform the recipient of the general type of the data,<br />

<strong>and</strong> padding= to indicate a bit stream encoded in a byte stream. (The<br />

padding value is the number of trailing zero bits added to pad the stream<br />

to a byte boundary.)<br />

Implementations are recommended to offer the user the option of using<br />

the data as input to a user program or storing it in a file. An optional<br />

Content-Disposition: field, described in RFC 2183, allows the<br />

specification of the preferred name of such a file.<br />

Security issues: The RFCs strongly recommend against an<br />

implementation automatically executing an application/octet-stream part<br />

or using it as input to a program specified in the mail header. To do so<br />

exposes the receiving system to serious security risks <strong>and</strong> might impact<br />

the integrity of any networks to which the system is connected.<br />

Obviously, there are many types of data that do not fit into any of the previous<br />

subtypes. Cooperating mail programs can, in keeping with the rules of RFC<br />

2822, use types or subtypes beginning with X- as private values. No other values<br />

are permitted unless they have first been registered with the Internet Assigned<br />

Numbers Authority (IANA). See RFC 2048 for more details. The intention is that<br />

few, if any, additional types will be needed, but that many subtypes will be added<br />

to the set.<br />

Chapter 15. Mail applications 581

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!