LibreSSL: fix build for 3.5.0+ Bug 3074
[exim.git] / doc / doc-txt / cve-2023-51766
1 CVE ID:     CVE-2023-51766
2 Date:       2016-12-15
3 Credits:    https://sec-consult.com/blog/detail/smtp-smuggling-spoofing-e-mails-worldwide/
4 Version(s): all up to 4.97 inclusive
5 Issue:      Given a buggy relay, Exim can be induced to accept a second message embedded
6             as part of the body of a first message
7
8 Conditions
9 ==========
10
11 If *all* the following conditions are met
12
13     Runtime options
14     ---------------
15
16     * Exim offers PIPELINING on incoming connections
17
18     * Exim offers CHUNKING on incoming connections
19
20     Operation
21     ---------
22
23     * DATA (as opposed to BDAT) is used for a message reception
24
25     * The relay host sends to the Exim MTA message data including
26       one of "LF . LF" or "CR LF . LF" or "LF . CR LF".
27
28     * Exim interprets the sequence as signalling the end of data for
29       the SMTP DATA command, and hence a first message.
30
31     * Exim interprets further input which the relay had as message body
32       data, as SMTP commands and data. This could include a MAIL, RCPT,
33       BDAT (etc) sequence, resulting in a further message acceptance.
34
35 Impact
36 ======
37
38 One or more messages can be accepted by Exim that have not been
39 properly validated by the buggy relay.
40
41 Fix
42 ===
43
44 Install a fixed Exim version:
45
46     4.98 (once available)
47     4.97.1
48
49 If you can't install one of the above versions, ask your package
50 maintainer for a version containing the backported fix. On request and
51 depending on our resources we will support you in backporting the fix.
52 (Please note, that Exim project officially doesn't support versions
53 prior the current stable version.)
54
55
56 Workaround
57 ==========
58
59   Disable CHUNKING advertisement for incoming connections.
60
61   An attempt to "smuggle" a DATA command will trip a syncronisation
62   check.
63
64 *or*
65
66   Disable PIPELINING advertisement for incoming connections.
67
68   The "smuggled" MAIL FROM command will then trip a syncronisation
69   check.