๋ชฉ์ ์คํ ๋ฒํผ ์ค๋ฒํ๋ก์ฐ ๊ณต๊ฒฉ์ผ๋ก๋ถํฐ return address๋ฅผ ๋ณดํธํ๊ธฐ ์๋ ์๋ฆฌ ํจ์์ ํ๋กค๋ก๊ทธ์์: ์คํ ๋ฒํผ์ ๋ฐํ ์ฃผ์ ์ฌ์ด์ ์์์ ๊ฐ (= ์ฆ Canary)์ ์ฝ์ ๊ทธ ํ, ํจ์์ ์ํ๋ก๊ทธ์์: ํด๋น ๊ฐ์ ๋ณ์กฐ๋ฅผ ํ์ธ ๋ง์ฝ Canary ๊ฐ์ ๋ณ์กฐ๊ฐ ํ์ธ๋๋ฉด: ํ๋ก์ธ์ค๊ฐ ๊ฐ์ ์ข ๋ฃ๋จ ๊ณต๊ฒฉ์๊ฐ ์คํ ๋ฒํผ ์ค๋ฒํ๋ก์ฐ๋ฅผ ํตํด return address๋ฅผ overwriteํ๋ ๊ฒฝ์ฐ, ๋ง์ฝ return address ์ด์ ์ canary๊ฐ ๋ง๋ จ๋ผ ์๋ค๋ฉด, return address overwrite ์ด์ ์ ํ์ฐ์ ์ผ๋ก canary๊ฐ ๋จผ์ overwrite ๋๊ฒ ์ง์. ์ด๋, ๊ณต๊ฒฉ์๋ ์ผ๋ฐ์ ์ผ๋ก Canary ๊ฐ์ ๋ชจ๋ฅด๋ฏ๋ก (๊ณต๊ฒฉ์๊ฐ ์ด ๊ฐ์ ์์๋ด๋ ํน๋ณํ ๊ฒฝ์ฐ๋ ์๋๋ฐ ๋ค๋ฅธ ๊ธ์์ ๋ค๋ฃจ๊ฒ ์ต๋๋ค), ๊ณต๊ฒฉ ..