์ด๋ฒ ํฌ์คํ
์ 'User-Agent' ์
๋๋ค.
์ค์ตํ๋ ๋ชจ๋ ๊ณต๊ฒฉ์ ์ค์ ๋ก ์ฌ์ฉํ์๋ฉด ์๋ฉ๋๋ค.
ํ์ฉ๋ฐ์ง ์์ ์๋น์ค ๋์์ ํดํน์ ์๋ํ๋ ํ๋์ ๊ธ์งํ๋ฉฐ,
๋ชจ๋ ๋ฒ์ ์ฑ
์์ ์ฌ์ฉ์์๊ฒ ์๋ ๊ฒ์ ๋ช
์ฌํด์ฃผ์ธ์.
๋์ด๋ ํ
ํ์ด์ง ์ ์
์ด ํ์ด์ง๋ ์ ์ํ ์น ๋ธ๋ผ์ฐ์ ์ ์ ๋ณด๊ฐ ์ ์ฅ๋ 'User-Agent' ํค๋ ๊ฐ์ ํ
์ด๋ธ ํํ๋ก ์ถ๋ ฅํ๋ค.
์ฒซ ํ๋ฉด ํ
์ด๋ธ์๋ ์ต๊ทผ ์ ์ํ ์์๋๋ก 3๊ฐ๊น์ง๋ง ์ถ๋ ฅํ๋๋ฐ,
์ ํ๋ฉด์ download๋ผ๋ ์งํ ๊ธ์จ๋ฅผ ํด๋ฆญํ๋ฉด ์ ์ํ ๋ชจ๋ ์ ๋ณด๋ฅผ ๋ค ์ถ๋ ฅ์ํจ๋ค.
์ฌ๋ฌ๋ฒ ์ ์์ ๊ธฐ๋ก์ด ๋จ์.
๋ฒํ ์ค์ํธ๋ฅผ ์ด์ฉํ์ฌ user-agentํค๋์ ์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ ์
๋ ฅํ์ฌ ํ
์ด๋ธ์ ์คํฌ๋ฆฝํธ๋ฅผ ์ ์ฅํ๋ xss๊ณต๊ฒฉ์ ์ํํด ๋ณด๊ฒ ๋ค.
์์ฒญ ํจํท์ ์ก์๋ง์ ํ์ธํ ๊ฒ
์ ์ฌ์ง์ฒ๋ผ ์๋ ์๋ ๋ชจ์ง๋ผ ํ์ด์ด ํญ์ค์ ๋ํ ๋ด์ฉ์ ์ง์ฐ๊ณ ์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ ์
๋ ฅํด๋ณธ๋ค.
forward๋ฒํผ์ ํด๋ฆญํ๋ฉด ์คํฌ๋ฆฝํธ ์ฝ๋๊ฐ ์คํ๋๋ค. ํ์ธ ๋ฒํผ์ ๋๋ฅด๋ฉด ์๋ ํ์ด์ง๋ฅผ ๋ณด์ฌ์ฃผ๋๋ฐ,
์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ ์
๋ ฅํ์๊ธฐ ๋๋ฌธ์ ํ
์ด๋ธ์ด ๋น์ด์๋ค.
๋ค์์ ์ฟ ํค๊ฐ์ ๊ฐ์ ธ์ค๋ ์คํฌ๋ฆฝํธ๋ฅผ ์
๋ ฅํด๋ณด์.
๋ง์ฐฌ๊ฐ์ง๋ก ๊ฐ์ด ์ถ๋ ฅ๋๊ณ , ํ
์ด๋ธ ๋ด์ฉ์ ๋ณด์ด์ง ์๋๋ค.
์คํฌ๋ฆฝํธ ์ฝ๋๋ 3๋ฒ๊น์ง๋ง ์คํ๋๋ค.
ํ
์ด๋ธ์ด ๋์ 3๊ฐ๊น์ง ๋ณด์ด๋๋ก ์ถ๋ ฅ ๋๊ธฐ ๋๋ฌธ์, ์ ์ ํ์๊ฐ ์ธ๋ฒ์ด ์ง๋๋ฉด ์คํ๋์ง ์๋๋ค.
๋์๋ฐฉ์
๋์ด๋ ์์์๋ user agentํค๋์ ์คํฌ๋ฆฝํธ ์ฝ๋๋ฅผ ์
๋ ฅํ์ฌ๋ ๋ฌธ์์ด๋ก ์ถ๋ ฅํ๋ค.
์์ค์ฝ๋๋ฅผ ํ์ธํ๋ฉด xss_check_3 ํจ์๋ก ์ด๋ํ๋๋ฐ
์ดํจ์์์๋ htmlspecialchars() ํจ์๋ฅผ ํธ์ถํ์ฌ ์
๋ ฅ๋ฐ์ดํฐ๋ฅผ utf-8๋ก ์ธ์ฝ๋ฉํ๋ค.
๋ด์ฉ์ ์ดํด๋ณด๋ utf-8๋ก ์ธ์ฝ๋ฉ์ ํด์ค๋ค.
๋ฐ์ดํฐ๋ฅผ htmlspecialchars๋ฅผ ํตํด ๋ฐ์ data(์
๋ ฅ๋ฐ์ดํ)๋ฅผ ์ธ์ฝ๋ฉ ํด์ฃผ๋ ํจ์์ธ๋ฐ
http://b.redinfo.co.kr/56
์์ ๊ฐ์ด ํน์๋ฌธ์๋ฅผ html์ํฐํฐ๋ก ๋ณํ์ํจ๋ค.
http://b.redinfo.co.kr/56
๋๋ฒ์งธ ์ธ์๋ ์๋ฅผ ๋ณด๋ฉด ๋ ๊ฒ ๊ฐ๋ค.
ํ์ฌํผ ๋ฌธ์๋ก ์ธ์ํ๊ฒ ๋ฐฉ์ด ํ๋ฉด ๋๋ค!
์ฆ ์คํ๋๋ ์น ๊ณต๊ฐ์ ๋ง๊ธฐ์ํด htmlspecialcharsํจ์๋ฅผ ์ฌ์ฉ
--> downloadํด์ ๋ณด๋ ๋ด์ฉ ์ฆ ๋ชจ๋ user-agent์ ๋ณด์ ๋ํ ๊ฐ์ db์ ์ ์ฅ๋จ (์ฌ๊ธฐ์ sql injection์ ๋ง์์ผํจ) --> mysqli_real_escape__stringํจ์ ์ฌ์ฉ
๋ค์ด๋ก๋ ํ ๊ธฐ๋ก์ ๋ํ ๊ฒฐ๊ณผ๋ MYSQL ์ ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ์ ์ฅ๋๋ฏ๋ก
mysqli_real_escape_string()ํจ์๋ฅผ ์ด์ฉํ์ฌ, ๊ธฐํธ์ \(๋ฐฑ์ฌ๋์)๋ฅผ ๋ถ์ฌ SQL์ธ์ ์
๊ณต๊ฒฉ์ ๋ฐฉ์ดํ๋ค.
sqli_check_3ํจ์๋ ๋งํฌ์ ๋ฐ์ดํฐ๋ฅผ ์ธ์๋ก ๋ฐ๋๋ฐ, ์ฌ๊ธฐ์ mysqli_real_escape_string์ผ๋ก
๋ฐ์ดํฐ ์ธ์์ ์
๋ ฅ ๊ฐ์ ๋ณํํ๋ ๊ฒ์ด๋ค.
์ฆ ์ด์ค ๋ฐฉ์ด