์ ์ฌ์ ์ผ๋ก SQL ์ฝ๋๋ฅผ ๋์ฒดํ ์ ์๋ ์ทจ์ฝ์ (CVE-4.0.6-3.2.14)์ ์์ ํ๋ Django ์น ํ๋ ์์ํฌ 2022 ๋ฐ 34265์ ์์ ๋ฆด๋ฆฌ์ค๊ฐ ๊ฒ์๋์์ต๋๋ค. ์ด ๋ฌธ์ ๋ Trunc(kind) ๋ฐ Extract(lookup_name) ํจ์์ ์ ๋ฌ๋ kind ๋ฐ lookup_name ๋งค๊ฐ๋ณ์์์ ํ์ธ๋์ง ์์ ์ธ๋ถ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. Lookup_name ๋ฐ kind ๊ฐ์ ๊ฒ์ฆ๋ ๋ฐ์ดํฐ๋ง ํ์ฉํ๋ ํ๋ก๊ทธ๋จ์ ์ทจ์ฝ์ ์ ์ํฅ์ ๋ฐ์ง ์์ต๋๋ค.
Extract ๋ฐ Trunc ํจ์์ ์ธ์์ ๋ฌธ์, ์ซ์, "-", "_", "(" ๋ฐ ")" ์ด์ธ์ ๋ฌธ์ ์ฌ์ฉ์ ๊ธ์งํ์ฌ ๋ฌธ์ ๋ฅผ ์ฐจ๋จํ์ต๋๋ค. ์ด์ ์๋ ์ ์ก๋ ๊ฐ์์ ์์๋ฐ์ดํ๊ฐ ์๋ฆฌ์ง ์์์ผ๋ฏ๋ก "day' FROM start_datetime)) OR 1=1;โ" ๋ฐ "year', start_datetime)๊ณผ ๊ฐ์ ๊ฐ์ ์ ๋ฌํ์ฌ SQL ๊ตฌ์ฑ์ ์คํํ ์ ์์์ต๋๋ค. ) ๋๋ 1=1;โโ. ๋ค์ ๋ฆด๋ฆฌ์ค 4.1์์๋ ๋ ์ง ์ถ์ถ ๋ฐ ์๋ฆผ ๋ฐฉ๋ฒ์ ๋ํ ๋ณดํธ๋ฅผ ๋์ฑ ๊ฐํํ ๊ณํ์ด์ง๋ง, API ๋ณ๊ฒฝ์ผ๋ก ์ธํด ํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐฑ์๋์์ ํธํ์ฑ์ด ์ ํ๋ ์ ์์ต๋๋ค.
์ถ์ฒ : opennet.ru