เดฑเต‚เดŸเตเดŸเต เดชเตเดฐเดคเตเดฏเต‡เด•เดพเดตเด•เดพเดถเด™เตเด™เดณเต‹เดŸเต† เดธเต†เตผเดตเดฑเดฟเตฝ เด•เต‹เดกเต เดŽเด•เตโ€Œเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเดพเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจ เดŽเด•เตโ€Œเดธเดฟเดฎเดฟเดฒเต† เด—เตเดฐเตเดคเดฐเดฎเดพเดฏ เด•เต‡เดŸเตเดชเดพเดŸเตเด•เตพ

เดŽเด•เตเดธเดฟเด‚ เดฎเต†เดฏเดฟเตฝ เดธเต†เตผเดตเดฑเดฟเตฝ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดžเตเดžเต เด•เตเดฐเดฟเดŸเตเดŸเดฟเดšเต†เดธเตเด•เดฏ เดฆเตเตผเดฌเดฒเดค (CVE-2019-10149), เด‡เดคเต เดชเตเดฐเดคเตเดฏเต‡เด•เดฎเดพเดฏเดฟ เดคเดฏเตเดฏเดพเดฑเดพเด•เตเด•เดฟเดฏ เด…เดญเตเดฏเตผเดคเตเดฅเดจ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เตพ เดฑเต‚เดŸเตเดŸเต เด…เดตเด•เดพเดถเด™เตเด™เดณเตเดณเตเดณ เดธเต†เตผเดตเดฑเดฟเตฝ เดตเดฟเดฆเต‚เดฐ เด•เต‹เดกเต เดจเดฟเตผเดตเตเดตเดนเดฃเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดจเดฏเดฟเดšเตเดšเต‡เด•เตเด•เดพเด‚. 4.87 เดฎเตเดคเตฝ 4.91 เดตเดฐเต†เดฏเตเดณเตเดณ เดชเดคเดฟเดชเตเดชเตเด•เดณเดฟเตฝ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ EXPERIMENTAL_EVENT เด“เดชเตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดชเตเดฐเดถเตเดจเด‚ เดšเต‚เดทเดฃเด‚ เดšเต†เดฏเตเดฏเดพเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค เดฐเต‡เด–เดชเตเดชเต†เดŸเตเดคเตเดคเดฟ.

เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ เด•เต‹เตบเดซเดฟเด—เดฑเต‡เดทเดจเดฟเตฝ, เด’เดฐเต เดชเตเดฐเดพเดฆเต‡เดถเดฟเด• เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต เด…เดจเดพเดตเดถเตเดฏเดฎเดพเดฏ เดธเด™เตเด•เต€เตผเดฃเดคเด•เดณเดฟเดฒเตเดฒเดพเดคเต† เด†เด•เตเดฐเดฎเดฃเด‚ เดจเดŸเดคเตเดคเดพเตป เด•เดดเดฟเดฏเตเด‚, เด•เดพเดฐเดฃเด‚ "เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด• = เดธเตเดตเต€เด•เตผเดคเตเดคเดพเดตเต" ACL เดชเตเดฐเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต, เด‡เดคเต เดฌเดพเดนเตเดฏ เดตเดฟเดฒเดพเดธเด™เตเด™เตพเด•เตเด•เดพเดฏเดฟ เด…เดงเดฟเด• เดชเดฐเดฟเดถเต‹เดงเดจเด•เตพ เดจเดŸเดคเตเดคเตเดจเตเดจเต. เดฎเดฑเตเดฑเตŠเดฐเต เดกเตŠเดฎเต†เดฏเตโ€Œเดจเดฟเดจเดพเดฏเดฟ เดฆเตเดตเดฟเดคเต€เดฏ MX เด†เดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเด•, "verify=recipient" ACL เดจเต€เด•เตเด•เด‚ เดšเต†เดฏเตเดฏเตเด•, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ local_part_suffix-เดฒเต‡เด•เตเด•เตเดณเตเดณ เดšเดฟเดฒ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดŽเดจเตเดจเดฟเดต เดชเต‹เดฒเตเดณเตเดณ เด•เตเดฐเดฎเต€เด•เดฐเดฃเด™เตเด™เตพ เดฎเดพเดฑเตเดฑเตเดฎเตเดชเต‹เตพ เดตเดฟเดฆเต‚เดฐ เด†เด•เตเดฐเดฎเดฃเด‚ เดธเด‚เดญเดตเดฟเด•เตเด•เดพเด‚. เดธเต†เตผเดตเดฑเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด•เดฃเด•เตเดทเตป 7 เดฆเดฟเดตเดธเดคเตเดคเต‡เด•เตเด•เต เดคเตเดฑเดจเตเดจเดฟเดŸเดพเตป เด†เด•เตเดฐเดฎเดฃเด•เดพเดฐเดฟเด•เตเด•เต เด•เดดเดฟเดฏเตเดฎเต†เด™เตเด•เดฟเตฝ เด’เดฐเต เดตเดฟเดฆเต‚เดฐ เด†เด•เตเดฐเดฎเดฃเดตเตเด‚ เดธเดพเดงเตเดฏเดฎเดพเดฃเต (เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดธเดฎเดฏเดชเดฐเดฟเดงเดฟ เดฎเดฑเดฟเด•เดŸเด•เตเด•เดพเตป เดฎเดฟเดจเดฟเดฑเตเดฑเดฟเตฝ เด’เดฐเต เดฌเตˆเดฑเตเดฑเต เด…เดฏเดฏเตเด•เตเด•เตเดจเตเดจเดคเต). เด…เดคเต‡ เดธเดฎเดฏเด‚, เดชเตเดฐเดถเตเดจเดคเตเดคเดฟเดจเตเดฑเต† เดตเดฟเดฆเต‚เดฐ เดšเต‚เดทเดฃเดคเตเดคเดฟเดจเต เดฒเดณเดฟเดคเดฎเดพเดฏ เด†เด•เตเดฐเดฎเดฃ เดตเต†เด•เตเดฑเตเดฑเดฑเตเด•เตพ เด‰เดฃเตเดŸเดพเด•เดพเตป เดธเดพเดงเตเดฏเดคเดฏเตเดฃเตเดŸเต.

/src/deliver.c เดซเดฏเดฒเดฟเตฝ เดจเดฟเตผเดตเดšเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ deliver_message() เดซเด‚เด—เตโ€Œเดทเดจเดฟเดฒเต† เดธเตเดตเต€เด•เตผเดคเตเดคเดพเดตเดฟเดจเตเดฑเต† เดตเดฟเดฒเดพเดธเด‚ เดคเต†เดฑเตเดฑเดพเดฏเดฟ เดชเดฐเดฟเดถเต‹เดงเดฟเดšเตเดšเดคเดพเดฃเต เด…เดชเด•เดŸเดคเตเดคเดฟเดจเต เด•เดพเดฐเดฃเด‚. เดตเดฟเดฒเดพเดธ เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเด‚เด—เต เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต†, เด’เดฐเต เด†เด•เตเดฐเดฎเดฃเด•เดพเดฐเดฟเด•เตเด•เต เดคเดจเตเดฑเต† เดกเดพเดฑเตเดฑเดฏเต† เดฑเต‚เดŸเตเดŸเต เด…เดตเด•เดพเดถเด™เตเด™เดณเตเดณเตเดณ execv() เดซเด‚เด—เตเดทเดจเดฟเดฒเต‚เดŸเต† เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เด•เดฎเดพเตปเดกเดฟเดจเตเดฑเต† เด†เตผเด—เตเดฏเตเดฎเต†เดจเตเดฑเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เดฎเดพเดฑเตเดฑเดฟเดธเตเดฅเดพเดชเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚. เดฌเดซเตผ เด“เดตเตผเดซเตเดฒเต‹เดฏเตโ€Œเด•เตเด•เต‹ เดฎเต†เดฎเตเดฎเดฑเดฟ เด•เดฑเดชเตเดทเดจเต‹ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เดธเดพเด™เตเด•เต‡เดคเดฟเด• เดตเดฟเดฆเตเดฏเด•เดณเตเดŸเต† เด‰เดชเดฏเต‹เด—เด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเต เด†เดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ; เดฒเดณเดฟเดคเดฎเดพเดฏ เดชเตเดฐเดคเต€เด• เดชเด•เดฐเด‚ เดตเดฏเตเด•เตเด•เตฝ เดฎเดคเดฟเดฏเดพเด•เตเด‚.

เดตเดฟเดฒเดพเดธเด‚ เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดจเดฟเตผเดฎเตเดฎเดพเดฃเดคเตเดคเดฟเดจเตเดฑเต† เด‰เดชเดฏเต‹เด—เดตเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดชเตเดชเต†เดŸเตเดŸเดคเดพเดฃเต เดชเตเดฐเดถเตเดจเด‚:

deliver_localpart = Expand_string(
string_sprintf("${local_part:%s}", new->เดตเดฟเดฒเดพเดธเด‚));
deliver_domain = Expand_string(
string_sprintf("${domain:%s}", new->เดตเดฟเดฒเดพเดธเด‚));

เดŽเด•เตโ€Œเดธเตโ€Œเดฑเตเดฑเต‡เดฃเตฝ เดนเดพเตปเดกเตโ€Œเดฒเดฑเดฟเดจเตเดฑเต† เดธเดฎเดพเดฐเด‚เดญเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดจเดฏเดฟเด•เตเด•เตเดจเตเดจ โ€œ${run{เด•เดฎเดพเตปเดกเต เด†เตผเด—เตเดฏเตเดฎเต†เดจเตเดฑเตเด•เตพ}โ€ เด•เดฎเดพเตปเดกเต เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเดคเต เด‰เตพเดชเตเดชเต†เดŸเต†, เด’เดฐเต เด…เดคเดฟเดธเด™เตเด•เต€เตผเดฃเดฎเดพเดฏ เดธเด‚เดฏเต‹เดœเดจเดฎเดพเดฃเต Expand_string() เดซเด‚เด—เตโ€Œเดทเตป. เด…เดคเดฟเดจเดพเตฝ, เด’เดฐเต SMTP เดธเต†เดทเดจเดฟเตฝ เด†เด•เตเดฐเดฎเดฟเด•เตเด•เดพเตป, เด’เดฐเต เดชเตเดฐเดพเดฆเต‡เดถเดฟเด• เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเต 'RCPT เดฒเต‡เด•เตเด•เต "เด‰เดชเดฏเต‹เด•เตเดคเตƒเดจเดพเดฎเด‚+${run{...}}@localhost"' เดชเต‹เดฒเต†เดฏเตเดณเตเดณ เด’เดฐเต เด•เดฎเดพเตปเดกเต เด…เดฏเดšเตเดšเดพเตฝ เดฎเดคเดฟ, เด‡เดตเดฟเดŸเต† เดฒเต‹เด•เตเด•เตฝ_เดกเตŠเดฎเต†เดฏเตโ€Œเดจเตเด•เดณเตเดŸเต† เดฒเดฟเดธเตเดฑเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดนเต‹เดธเตเดฑเตเดฑเตเด•เดณเดฟเดฒเตŠเดจเตเดจเดพเดฃเต เดฒเต‹เด•เตเด•เตฝ เดนเต‹เดธเตเดฑเตเดฑเต, เด‰เดชเดฏเต‹เด•เตเดคเตƒเดจเดพเดฎเด‚ เดŽเดจเตเดจเดคเต เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เด’เดฐเต เดชเตเดฐเดพเดฆเต‡เดถเดฟเด• เด‰เดชเดฏเต‹เด•เตเดคเดพเดตเดฟเดจเตเดฑเต† เดชเต‡เดฐเดพเดฃเต.

เดธเต†เตผเดตเตผ เด’เดฐเต เดฎเต†เดฏเดฟเตฝ เดฑเดฟเดฒเต‡ เด†เดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, 'RCPT เดฒเต‡เด•เตเด•เต "${run{...}}@relaydomain.com"' เดŽเดจเตเดจ เด•เดฎเดพเตปเดกเต เดตเดฟเดฆเต‚เดฐเดฎเดพเดฏเดฟ เด…เดฏเดšเตเดšเดพเตฝ เดฎเดคเดฟเดฏเดพเด•เตเด‚, เด‡เดตเดฟเดŸเต† relaydomain.com เดŽเดจเตเดจเดคเต relay_to_domains-เตฝ เดฒเดฟเดธเตเดฑเตเดฑเตเดšเต†เดฏเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดนเต‹เดธเตเดฑเตเดฑเตเด•เดณเดฟเดฒเตŠเดจเตเดจเดพเดฃเต. เด•เตเดฐเดฎเต€เด•เดฐเดฃ เดตเดฟเดญเดพเด—เด‚. เดŽเด•เตเดธเดฟเด‚ เดกเตเดฐเต‹เดชเตเดชเต เดชเตเดฐเดฟเดตเดฟเดฒเต‡เดœเต เดฎเต‹เดกเต เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เดšเต†เดฏเตเดฏเดพเดคเตเดคเดคเดฟเดจเดพเตฝ (deliver_drop_privilege = false), "${run{...}}" เดตเดดเดฟ เด…เดฏเดšเตเดš เด•เดฎเดพเตปเดกเตเด•เตพ เดฑเต‚เดŸเตเดŸเดพเดฏเดฟ เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเด‚.

เด…เดชเด•เดŸเดพเดตเดธเตเดฅเดฏเดฟเดฒเดพเดฏเดคเต เดถเตเดฐเดฆเตเดงเต‡เดฏเดฎเดพเดฃเต เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดฟ เดซเต†เดฌเตเดฐเตเดตเดฐเดฟเดฏเดฟเตฝ เดชเตเดฑเดคเตเดคเดฟเดฑเด•เตเด•เดฟเดฏ 4.92 เดฑเดฟเดฒเต€เดธเดฟเตฝ, เดˆ เดชเดฐเดฟเดนเดพเดฐเด‚ เดธเตเดฐเด•เตเดทเดพ เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เดณเดฟเดฒเต‡เด•เตเด•เต เดจเดฏเดฟเดšเตเดšเต‡เด•เตเด•เดพเดฎเต†เดจเตเดจเต เดŠเดจเตเดจเดฟเดชเตเดชเดฑเดฏเดพเดคเต†. เดŽเด•เตโ€Œเดธเดฟเด‚ เดกเต†เดตเดฒเดชเตเดชเตผเดฎเดพเตผ เดฌเต‹เดงเดชเต‚เตผเดตเด‚ เดˆ เด…เดชเด•เดŸเดธเดพเดงเตเดฏเดค เดฎเดฑเดšเตเดšเตเดตเต†เดšเตเดšเดคเดพเดฏเดฟ เดตเดฟเดถเตเดตเดธเดฟเด•เตเด•เดพเตป เด•เดพเดฐเดฃเดฎเดฟเดฒเตเดฒ, เด•เดพเดฐเดฃเด‚ เดชเตเดฐเดถเตเดจเด‚ เดชเดฐเดฟเดนเดฐเดฟเดšเตเดšเดคเต เดคเดฟเดฐเตเดคเตเดคเดฒเตเด•เตพ เดคเต†เดฑเตเดฑเดพเดฏ เดตเดฟเดฒเดพเดธเด™เตเด™เตพ เด•เตˆเดฎเดพเดฑเตเดฎเตเดชเต‹เตพ เดธเด‚เดญเดตเดฟเด•เตเด•เตเดจเตเดจ เดชเดฐเดพเดœเดฏเด‚, เดŽเด•เตเดธเดฟเดฎเดฟเดฒเต† เดฎเดพเดฑเตเดฑเด™เตเด™เดณเตเดŸเต† เด“เดกเดฟเดฑเตเดฑเดฟเดจเดฟเดŸเต† เด•เตเดตเดพเดณเดฟเดธเต เด…เดชเด•เดŸเดธเดพเดงเตเดฏเดค เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดžเตเดžเต.

เดตเดฟเดคเดฐเดฃเด™เตเด™เดณเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เดคเตเดŸเดฐเตเดจเตเดจ เดฎเตเตป เดชเดคเดฟเดชเตเดชเตเด•เตพเด•เตเด•เตเดณเตเดณ เด’เดฐเต เดชเดฐเดฟเดนเดพเดฐเด‚ เดจเดฟเดฒเดตเดฟเตฝ เด‡เดชเตเดฐเด•เดพเดฐเด‚ เดฎเดพเดคเตเดฐเดฎเต‡ เดฒเดญเตเดฏเดฎเดพเด•เต‚ เดชเดพเดšเตเดšเต. เดชเตเดฐเดถเตเดจเด‚ เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเตเตป เดฌเตเดฐเดพเดžเตเดšเตเด•เดณเตเดŸเต† เดคเดฟเดฐเตเดคเตเดคเตฝ เดฑเดฟเดฒเต€เดธเตเด•เตพ เดœเต‚เตบ 11-เดจเต เดทเต†เดกเตเดฏเต‚เตพ เดšเต†เดฏเตเดคเดฟเดŸเตเดŸเตเดฃเตเดŸเต. เดชเดพเด•เตเด•เต‡เดœเต เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเตเด•เตพ เดคเดฏเตเดฏเดพเดฑเดพเดฃเต เดกเต†เดฌเดฟเดฏเตป, เด‰เดฌเตเดฃเตเดŸเต, เด“เดชเตเดชเตบเดธเตเดธเดฟ. เด†เตผเด•เตเด•เต เดฒเดฟเดจเด•เตเดธเต ะธ เดซเต†เดกเต‹เดฑ เด…เดตเตผ เดชเดคเดฟเดชเตเดชเต 4.92 เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด…เดคเดฟเตฝ เดชเตเดฐเดถเตเดจเด‚ เดฆเตƒเดถเตเดฏเดฎเดพเด•เดฟเดฒเตเดฒ. RHEL, CentOS เดชเตเดฐเดถเตเดจเด‚ เดฌเดพเดงเดฟเดคเดฎเดฒเตเดฒ, เดŽเด•เตเดธเดฟเด‚ เด…เดตเดฐเตเดŸเต† เดฑเต†เด—เตเดฒเตผ เดชเดพเด•เตเด•เต‡เดœเต เดฑเดฟเดชเตเดชเต‹เดธเดฟเดฑเตเดฑเดฑเดฟเดฏเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒเดพเดคเตเดคเดคเดฟเดจเดพเตฝ.

เด…เดตเดฒเด‚เดฌเด‚: opennet.ru

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•