ํ๋ฆฌ์ค ์ปดํผ๋
๋ฌธ์ ๋ ๋ฉ์ผ์ ์๊ฒฉ ๋ฉ์ผ ์๋ฒ๋ก ์ ๋ฌํ๋ ์ฝ๋(์์ ์ฐ๊ฒฐ์ ์ฒ๋ฆฌํ๋ ์ฝ๋๊ฐ ์๋)์ ๋ฒ๊ทธ๋ก ์ธํด ๋ฐ์ํฉ๋๋ค. ๊ณต๊ฒฉ์ ํด๋ผ์ด์ธํธ ์ธก๊ณผ ์๋ฒ ์ธก ๋ชจ๋์์ ๊ฐ๋ฅํฉ๋๋ค. ํด๋ผ์ด์ธํธ ์ธก์์๋ OpenSMTPD๊ฐ ๋ด๋ถ ๋คํธ์ํฌ ์ธํฐํ์ด์ค(localhost)์ ์์ฒญ๋ง ์๋ฝํ๊ณ ๋ฉ์ผ ๋ฉ์์ง๋ฅผ ์ธ๋ถ ์๋ฒ๋ก ๋ณด๋ด๋ OpenSMTPD์ ๊ธฐ๋ณธ ๊ตฌ์ฑ์์ ๊ณต๊ฒฉ์ด ๊ฐ๋ฅํฉ๋๋ค. ์ทจ์ฝ์ ์ ์ ์ฉํ๋ ค๋ฉด ํธ์ง๋ฅผ ์ ๋ฌํ๋ ๋์ OpenSMTPD๊ฐ ๊ณต๊ฒฉ์๊ฐ ์ ์ดํ๋ โโ๋ฉ์ผ ์๋ฒ์์ ์ธ์ ์ ์ค์ ํ๊ฑฐ๋ ๊ณต๊ฒฉ์๊ฐ ํด๋ผ์ด์ธํธ ์ฐ๊ฒฐ(MITM ๋๋ DNS ๋๋ BGP๋ฅผ ํตํ ๊ณต๊ฒฉ ์ค ๋ฆฌ๋๋ ์ )์ ๋ผ์ด๋ค ์ ์๋ ๊ฒ๋ง์ผ๋ก๋ ์ถฉ๋ถํฉ๋๋ค. ).
์๋ฒ ์ธก ๊ณต๊ฒฉ์ ๊ฒฝ์ฐ OpenSMTPD๋ ๋ค๋ฅธ ๋ฉ์ผ ์๋ฒ๋ก๋ถํฐ ์ธ๋ถ ๋คํธ์ํฌ ์์ฒญ์ ์์ ํ๊ฑฐ๋ ์์ ์ด๋ฉ์ผ(์: ์น ์ฌ์ดํธ์ ์ฃผ์ ํ์ธ ์์)๋ก ์์ฒญ์ ๋ณด๋ผ ์ ์๋ ํ์ฌ ์๋น์ค๋ฅผ ์ ๊ณตํ๋๋ก ๊ตฌ์ฑ๋์ด์ผ ํฉ๋๋ค. ์๋ฅผ ๋ค์ด, ๊ณต๊ฒฉ์๊ฐ OpenSMTPD ์๋ฒ์ ์ฐ๊ฒฐํ์ฌ (์กด์ฌํ์ง ์๋ ์ฌ์ฉ์์๊ฒ) ์๋ชป๋ ๋ฌธ์๋ฅผ ๋ณด๋ผ ์ ์์ผ๋ฉฐ, ์ด๋ก ์ธํด ๊ณต๊ฒฉ์์ ์๋ฒ์ ์ค๋ฅ ์ฝ๋(๋ฐ์ด์ค)๊ฐ ํฌํจ๋ ๋ฌธ์๋ฅผ ๋ณด๋ด๋ ์๋ต์ด ๋ฐ์ํ๊ฒ ๋ฉ๋๋ค. ๊ณต๊ฒฉ์๋ OpenSMTPD๊ฐ ๊ณต๊ฒฉ์์ ์๋ฒ์ ์๋ฆผ์ ์ ๋ฌํ๊ธฐ ์ํด ์ฐ๊ฒฐํ ๋ ์ด ์ทจ์ฝ์ ์ ์ ์ฉํ ์ ์์ต๋๋ค. ๊ณต๊ฒฉ ์ค์ ์ฃผ์ ๋ ์ ธ ๋ช ๋ น์ OpenSMTPD๊ฐ ๋ค์ ์์๋ ๋ ๋ฃจํธ ๊ถํ์ผ๋ก ์คํ๋๋ ํ์ผ์ ๋ฐฐ์น๋๋ฏ๋ก ๊ณต๊ฒฉ์๋ OpenSMTPD๊ฐ ๋ค์ ์์๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฌ๊ฑฐ๋ OpenSMTPD์ ์ถฉ๋์ ์์ํ์ฌ ๊ณต๊ฒฉ์ ์๋ฃํด์ผ ํฉ๋๋ค.
์ฐ๊ฒฐ์ด ์ค์ ๋ ํ ์๊ฒฉ ์๋ฒ์์ ๋ฐํ๋ ์ฌ๋ฌ ์ค ์๋ต์ ๊ตฌ๋ฌธ ๋ถ์ํ๊ธฐ ์ํ ์ฝ๋์ mta_io() ํจ์์ ๋ฌธ์ ๊ฐ ์์ต๋๋ค(์: "250-ENHANCEDSTATUSCODES" ๋ฐ "250 HELP"). OpenSMTPD๋ ์ฒซ ๋ฒ์งธ ์ค์ "-" ๋ฌธ์๋ก ๊ตฌ๋ถ๋ ์ธ ์๋ฆฌ ์ซ์์ ํ ์คํธ๊ฐ ํฌํจ๋์ด ์๊ณ ๋ ๋ฒ์งธ ์ค์๋ ์ธ ์๋ฆฌ ์ซ์์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋ ํ ์คํธ๊ฐ ํฌํจ๋์ด ์๋ค๊ณ ๊ณ์ฐํฉ๋๋ค. ์ธ ์๋ฆฌ ์ซ์ ๋ค์ ๊ณต๋ฐฑ๊ณผ ๋ ๋ฒ์งธ ์ค์ ํ ์คํธ๊ฐ ์์ผ๋ฉด ํ ์คํธ๋ฅผ ์ ์ํ๋ ๋ฐ ์ฌ์ฉ๋ ํฌ์ธํฐ๊ฐ '\0' ๋ฌธ์ ๋ค์์ ๋ฐ์ดํธ๋ก ์ค์ ๋๊ณ ๋ ๋ถ๋ถ ์ดํ์ ๋ฐ์ดํฐ ๋ณต์ฌ๊ฐ ์๋๋ฉ๋๋ค. ๋ผ์ธ์ ๋ฒํผ์ ๋ฃ์ต๋๋ค.
OpenBSD ํ๋ก์ ํธ์ ์์ฒญ์ ๋ฐ๋ผ ์ฌ์ฉ์๊ฐ ์์คํ ์ ์ ๋ฐ์ดํธํ ์ ์๋๋ก ์ทจ์ฝ์ ์ ์ฉ์ ๋ํ ์ธ๋ถ ์ ๋ณด ๊ฒ์๊ฐ 26์ 2015์ผ๊น์ง ์ฐ๊ธฐ๋์์ต๋๋ค. ํด๋น ๋ฌธ์ ๋ 2018๋ 6.6์๋ถํฐ ์ฝ๋๋ฒ ์ด์ค์ ์กด์ฌํ์ผ๋, 5.9๋ 10์๋ถํฐ ๋ฃจํธ ๊ถํ์ผ๋ก ์ฝ๋ ์คํ ์ ์ ์ฉ์ด ๊ฐ๋ฅํด์ก๋ค. ์ฐ๊ตฌ์๋ค์ OpenBSD 11, OpenBSD 31, Debian XNUMX, Debian XNUMX(ํ ์คํธ) ๋ฐ Fedora XNUMX์ฉ OpenSMTPD ๋น๋์์ ์ฑ๊ณต์ ์ผ๋ก ํ ์คํธ๋ ์ต์คํ๋ก์์ ์์ ํ๋กํ ํ์ ์ ์ค๋นํ์ต๋๋ค.
OpenSMTPD์์๋
๋ฌธ์ ๋ ๋ถ์์ ํ ์ ๊ฑฐ์ ๊ฒฐ๊ณผ์
๋๋ค.
Fedora 31์์๋ smtpctl ํ๋ก์ธ์ค์ setgid smtpq ํ๋๊ทธ ๋์ setgid ๋ฃจํธ ํ๋๊ทธ๊ฐ ์ฅ์ฐฉ๋์ด ์์ผ๋ฏ๋ก ์ทจ์ฝ์ ์ ํตํด ๋ฃจํธ ๊ทธ๋ฃน์ ๊ถํ์ ์ฆ์ ์ป์ ์ ์๋ค๋ ์ ์ ์ฃผ๋ชฉํ ๋งํฉ๋๋ค. ๋ฃจํธ ๊ทธ๋ฃน์ ๋ํ ์ก์ธ์ค ๊ถํ์ ์ป์ผ๋ฉด /var/lib/sss/mc/passwd์ ๋ด์ฉ์ ๋ฎ์ด์ฐ๊ณ ์์คํ ์ ๋ํ ์ ์ฒด ๋ฃจํธ ์ก์ธ์ค ๊ถํ์ ์ป์ ์ ์์ต๋๋ค.
์ถ์ฒ : opennet.ru