10์ 3์ฃผ์ฐจ ํดํน์งน์งน ๋ด์ค๋ ํฐ ๐ ์๋
ํ์ธ์! ๐ ์ฃผ๋ง๋ถํฐ ๋ ์จ๊ฐ ๊ฐ์๊ธฐ ์์ฒญ ์ถ์์ก์ด์.. ์ท ๋ฐ๋ปํ๊ฒ ์ฑ๊ฒจ์
๊ณ ๋๊ฐ์ธ์! ์๋ํฐ. ๋ฏผ๋์ ์ฌํ๊ณตํ ๋ฐฉ๋ฒ์ผ๋ก ํดํน์ ๋นํ์
จ๊ตฐ์.๐ ๋ค์ ์ฃผ์๋ ์ฌํ๊ณตํ์ ๋ํ ์๊ธฐ๋ ํด๋ด์ผ๊ฒ ์ด์! ์ ๋ฒ ์ฃผ์๋ ์ฟ ํค๋ฅผ ๋ฐฐ์ ์ผ๋ ์ด๋ฒ ์ฃผ์๋ XSS๋ฅผ ๊ณต๋ถํ ์ฐจ๋ก์
๋๋ค! ๊ทธ๋ฆฌ๊ณ ๊ธ์์ผ์๋ ์ทจ์ฝ์ ์ ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ๋ผ๊ณ ๋ถ๋ฆฌ๋ CVE์ ๋ํด ์์๋ณด๋ ์๊ฐ์ ๊ฐ์ ธ๋ณด๋๋ก ํ ๊ฒ์. ๊ทธ๋ผ ๊ธฐ๋ํด์ฃผ์ธ์! ๐ ์ฃผ๊ฐ๋ด์ค ์ง๋ ์ฃผ์๋ ์ด๋ค ์ผ๋ค์ด ์์์๊น? ๐ ์ง๋ํด 9์์ ๋ํ์ ์ญ์์ฌ์์ ์ธ๋ถ ๋ฏผ๊ฐ ๊ธฐ๊ด์ธ KAIST์ ๋ฌด๋จ์ผ๋ก ํํ์๋ค์ ์ฑ๋ณ, ํ์กํ, ์ง์
๊ตฐ ๋ฑ 9๊ฐ์ง์ ๊ฐ์ธ์ ๋ณด๋ฅผ ์ ๊ณตํ ๊ฒ์ผ๋ก ๋๋ฌ๋ฌ์ต๋๋ค.
ํด๋น ์ฌ๊ฑด์ ์ด๋ฒ ๋ฌ 12์ผ์ ๋ํ์ ์ญ์์ฌ์์ ๋ณด๊ฑด๋ณต์ง์ ์์ ์์์๊ฒ ์ ์ถํ ์๋ฃ์์ ํ์ธ๋์๋๋ฐ, ๋ฏผ๊ฐ ๊ธฐ๊ด๊ณผ์ ์
๋ฌด ํ์ฝ์ ์ถ์งํ๋ ๊ณผ์ ์์ ํ์ฝ ์ฒด๊ฒฐ ๋น์์ฑ ์ค๋ช
์ ์ํ ์์ฐํ์์ ์ฌ์ฉํ ๋ชฉ์ ์ผ๋ก ์ ๊ณต๋์๋ค๊ณ ํด์!
๊ฐ๋ช
์ ๋ณด๋ฅผ ์ ๊ณตํ์์ง๋ง ์๋ฐ ์ฌ๋ถ ๊ฒํ ๊ฒฐ๊ณผ์ ๋ฐ๋ฅด๋ฉด ๊ฐ๋ช
์ ๋ณด ๋ํ ๊ฐ์ธ์ ๋ณด์ ํด๋นํ๋ค๋ ๋ต๋ณ์ ๋ฐ์๊ณ , ๊ฐ์ธ์ ๋ณด๊ฐ ๋ฌด๋จ์ผ๋ก ์ฌ์ฉ๋ ์์ฐํ๋ฅผ ํตํด ์ค์ง์ ์ธ ๊ณ์ฝ๋ ์ฒด๊ฒฐ๋์ง ์์๋ค๊ณ ํฉ๋๋ค! ๐
ํด๋น ์ฌ๊ฑด์ ๊ฐ๋ดํ ์ง์ 2๋ช
์ ๊ฐ๋ด 3๊ฐ์๊ณผ ๊ฒฌ์ฑ
๋ฑ์ ์ฒ๋ถ์ ๋ฐ์๋ค๊ณ ํฉ๋๋ค. ๋ง์ ์ฌ๋์ ๊ฐ์ธ์ ๋ณด๋ฅผ ์๋ชป ๋ค๋ฃจ์๋๋ฐ ๊ฒฌ์ฑ
๊ณผ ๊ฐ๋ด์ด๋ผ๋ ๋ค์ ๊ฐ๋ฒผ์ ๋ณด์ด๋ ์ฒ๋ฒ ๊ฐ๋ค์. ๐ค ๋ณด์ ํ์ฌ Imperva ์ฐ๊ตฌ์์ ๋ฐ๋ฅด๋ฉด, 2021๋
8์์ Chrome์ด๋ Opera ์น ๋ธ๋ผ์ฐ์ ์์ ๊ด๊ณ ๋ฅผ ์ฐจ๋จํ๊ธฐ ์ํด ์ฌ์ฉํ๋ ํ์ฅ ํ๋ก๊ทธ๋จ์ธ 'All Block'์์ ๋ค๋ฅธ ๊ด๊ณ ๋ฅผ ์ฝ์
ํ๊ฑฐ๋ ์ ํด ์น์ฌ์ดํธ๋ก ์ฐ๊ฒฐํด์ฃผ๋ ์ฌ๋ก๊ฐ ํฌ์ฐฉ๋์๋ค๊ณ ํฉ๋๋ค.
๊ด๊ณ ๋ ์ฐจ๋จํ์ง๋ง, ํด๋น ํ๋ก๊ทธ๋จ์ ํตํด ๋ ๋ค๋ฅธ ๊ด๊ณ ๊ฐ ์ฝ์
๋๊ฑฐ๋ ์ ํด ์ฌ์ดํธ๋ก ์ฐ๊ฒฐ๋๊ฒ ํ๋ ์์ผ๋ก ๋์์ ํ๋ค๊ณ ํด์! ๋ํ, ์ด๋ฌํ ํ์๋ฅผ ๋คํค์ง ์๊ธฐ ์ํด ์ผ์ ์๊ฐ๋ง๋ค ๋๋ฒ๊ทธ ์ฝ์์ ์ง์ฐ๋ ๋ฑ ๋ค์ํ ๊ธฐ๋ฅ์ด ๋ค์ด์์ต๋๋ค. ๐ฎ
๋คํํ ๋ฐ๊ฒฌ๋ ์ดํ๋ก Chrome ์น ์คํ ์ด์ Opera ์ ๋์จ ๋ง์ผ ํ๋ ์ด์ค ๋ฑ์์ ๋ชจ๋ ๋ค์ด๋ฐ์ ์ ์๋๋ก ์ ๊ฑฐ๋์๋ค๊ณ ํฉ๋๋ค! ๐คฃ ์ธ๊ณ ์ต๋ ๊ท๋ชจ์ NFT ์ํธ ํํ ๋ง์ผ ํ๋ ์ด์ค OpenSea์์ ์ํธ ํํ๋ฅผ ํ์น ์ ์๋ ์ทจ์ฝ์ ์ด ๋ฐ๊ฒฌ๋์์ต๋๋ค. NFT๋ ๋์งํธ ํ์ผ๊ณผ ๊ตฌ๋งค์์ ์ ๋ณด๋ฅผ ๋ธ๋ก์ฒด์ธ ๊ธฐ์ ๋ก ๊ธฐ๋กํด ํ์ผ์ ์ฝ์ธ๊ณผ ๊ฐ์ ๋์งํธ ์์ฐ์ผ๋ก ๋ฐ๊พธ๋ ๊ธฐ์ ์ ๋งํด์!
ํด๋น ๋ฐฉ์์ ํด์ปค๊ฐ ์ ์ํ ์
์ฑ NFT ์ฝ์ธ์ ๋ณด๋ด๋ ๊ฒ์ผ๋ก ๊ณต๊ฒฉํ ์ ์์ด์! ์ ์ํ ์
์ฑ NFT ์ฝ์ธ์ ๋ณด๋ด, ๊ฑฐ๋ ๊ณผ์ ์์ ๋ฌธ์ ๋ฅผ ์ผ์ผ์ผ ์ํธ ํํ๋ฅผ ๋นผ ์ค๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๊ณ ์์ต๋๋ค.
๋ณด์ํ์ฌ Check Point Research์ ๋ณด๊ณ ์์ ๋ฐ๋ฅด๋ฉด, ๋คํํ ํด๋น ์ทจ์ฝ์ ์ด ์
์ฉ๋ ์ฌ๋ก๋ ์์๊ณ 9์ 26์ผ ํด๋น ๋ฌธ์ ๊ฐ ๋ฐํ๋ ํ๋ก๋ถํฐ 1์๊ฐ ๋ง์ ํจ์น๋์๋ค๊ณ ํ๋ ์ ๋ง ๋น ๋ฅด๊ฒ ๋์ฒ๋ฅผ ์ํ ๊ฒ ๊ฐ์ฃ ? ๐ ํดํค๋ณด์ด์ฆํ์ด ์ฐ๊ตฌํ๊ณ ๋ถ์ํ๋ ์ต์ ํดํน ๊ธฐ์ ๐ [๋์] Broadcom SDK [์ค๋ช
] ๋คํธ์ํฌ ๊ธฐ๊ธฐ์ UPnP ์๋น์ค๋ฅผ ๊ตฌํํ๋ Broadcom SDK์์ ๋ฐ๊ฒฌ๋ ์คํ ๋ฐ ํ ๋ฒํผ ์ค๋ฒํ๋ก์ฐ ์ทจ์ฝ์ ์ ์ธ๋ถ ์ ๋ณด๊ฐ ๊ณต๊ฐ๋์์ต๋๋ค. ํด๋น ์ทจ์ฝ์ ์ ์ฝ 10๋
์ Broadcom SDK๋ฅผ ์ฌ์ฉํ ๋ช๋ช ๊ธฐ๊ธฐ์์ ์ด๋ฏธ ๊ณต๊ฐ๋์ด ํจ์น๋์ง๋ง, ๊ทผ๋ณธ์ ์ธ ์์ธ์ธ Broadcom SDK์ ๋ํ ์กฐ์น๊ฐ ์ด๋ฃจ์ด์ง์ง ์์ ์ฌ์ ํ ๋ค๋ฅธ ์ ํ์์๋ ์กด์ฌํ๋ ๊ฒ์ผ๋ก ์๋ ค์ก์ต๋๋ค. ์ด๋ฌํ ๋ฌธ์ ๋ ์ทจ์ฝ์ ์ ์ฐพ๋ ๊ฒ๋ฟ๋ง ์๋๋ผ ์ทจ์ฝ์ ์ ์ฌํ ๊ด๋ฆฌ์ ์ปค๋ฎค๋์ผ์ด์
, ๊ณต๊ฐ ๊ถ๊ณ ๋ก ์ด๋ฃจ์ด์ง๋ ์ทจ์ฝ์ ์ ์ธ์ ๋ํ ์ค์ํ๋ค๋ ๊ฒ์ ์์ฌํฉ๋๋ค. โ Stack Buffer Overflow ์คํ BOF ์ทจ์ฝ์ ์ UPnP ๊ฒ์ ํ๋กํ ์ฝ์ด ์ฌ์ฉํ๋ HTTP ํ์์ UDP ํ๋กํ ์ฝ์ธ SSDP(Simple Service Discovery Protocol) ๋ฉ์์ง๋ฅผ ์ฒ๋ฆฌํ ๋ ๋ฐ์ํฉ๋๋ค. SSDP๋ฅผ ํตํด ๋ค์ ๋ ๊ฐ์ง ์ข
๋ฅ์ ๋ฉ์์ง๋ฅผ ๋ณด๋ผ ์ ์์ต๋๋ค.
์ด์ค M-SEARCH ๋ฉ์์ง๋ ssdp_msearch ํจ์์์ ์ฒ๋ฆฌ๋ฉ๋๋ค.์ฌ๊ธฐ์ ๋ด์ฉ์
HTTP ์์ฒญ์ ST ํ๋๊ฐ โuuid:โ๋ก ์์ํ๋ ๊ฒฝ์ฐ strcpy() ๋ก name[128] ์ ST ํ๋์ ๋ฌธ์์ด์ ๋ณต์ฌํ๋๋ฐ, ๊ธธ์ด ๊ฒ์ฌ๊ฐ ์กด์ฌํ์ง ์์ ์๋์ ๊ฐ์ ์์ฒญ์ ๋ณด๋ด๋ฉด Stack Buffer Overflow๊ฐ ๋ฐ์ํฉ๋๋ค.โ Heap Buffer Overflow UPnP๋ SOAP(Simple Object Access Protocol) ์์ฒญ์ UPnP ์ ์ด ์๋น์ค์ ์ ์กํด port forwarding ๊ท์น์ ์ค์ ํ ์ ์์ต๋๋ค. SOAP ์์ฒญ์๋ ๋ด๋ถ ํด๋ผ์ด์ธํธ, ๋ด๋ถ ํฌํธ, ์๊ฒฉ IP, ์๊ฒฉ ํฌํธ, ํ๋กํ ์ฝ, ๊ท์น ์ง์์๊ฐ์ด ํฌํจ๋ฉ๋๋ค. ์ทจ์ฝ์ ์ SOAP ์์ฒญ์ ๋ฐ๋ผ ์๋ก์ด ํฌํธ๋ฅผ ๋งคํํ๋ upnp_portmap_add ํจ์์์ ๋ฐ์ํฉ๋๋ค.
upnp_portmap_add ๋ ์์ ํ ์์ฒญ์ ๋ํ ์ ํจ์ฑ์ ๊ฒ์ฆํ๊ณ ๊ธฐ์กด์ ์ค์ ๋ port map์ด ์์ผ๋ฉด ์ port map ๊ตฌ์กฐ์ฒด๋ฅผ ํ ๋นํฉ๋๋ค. ์๋ก์ด port map ๊ตฌ์กฐ์ฒด๋ฅผ ์ค์ ํ๋ ๊ณผ์ ์์ strcpy() ํจ์๋ฅผ ์ฌ์ฉํ๊ณ ๊ธธ์ด ๊ฒ์ฆ์ ํ์ง ์์ Heap Buffer Overflow๊ฐ ๋ฐ์ํฉ๋๋ค.์ค๋ ์ ํด๋๋ฆฐ ๋ด์ฉ์ด ๋ง์์ ๋์
จ๋์? ์ฃผ์ ์น๊ตฌ๋ค์๊ฒ ๋ด์ค๋ ํฐ๋ฅผ ์ถ์ฒํด์ฃผ์ธ์! ๋ค์์ฃผ์๋ ์์ฐฌ ๋ด์ฉ์ผ๋ก ๋์์ค๊ฒ ์ต๋๋ค. ๐ ํน์ ๋ง์์ ์๋๋ ๋ถ๋ถ์ด ์์๋์? ์ฌ๊ธฐ์์ ํผ๋๋ฐฑ์ ์ ๋ฌํด์ฃผ์ธ์! ์ฌ๋ฌ๋ถ์ ์๊ฒฌ๋ค์ ์ ๊ทน ๋ฐ์ํด์ ๋์ฑ ์ ์ตํ ๋ด์ค๋ ํฐ๋ฅผ ๋ง๋ค์ด๊ฐ๋๋ก ํ๊ฒ ์ต๋๋ค. ๐ ํดํค๋ณด์ด์ฆ |