nginx 1.31.5 ๋ฐ njs 1.0.1 ์ถœ์‹œ

nginx 1.31.5 ๋ฉ”์ธ ๋ธŒ๋žœ์น˜๊ฐ€ ์ถœ์‹œ๋˜์—ˆ์œผ๋ฉฐ, ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ๊ฐœ๋ฐœ์ด ๊ณ„์† ์ง„ํ–‰๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋™์‹œ์— ์•ˆ์ •์ ์ธ 1.30.x ๋ธŒ๋žœ์น˜๋„ ์ง€์›๋˜๋ฉฐ, ์‹ฌ๊ฐํ•œ ์˜ค๋ฅ˜ ๋ฐ ์ทจ์•ฝ์  ์ œ๊ฑฐ์™€ ๊ด€๋ จ๋œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ๋งŒ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ํ–ฅํ›„ ์•ˆ์ •์ ์ธ 1.31 ๋ธŒ๋žœ์น˜๋Š” 1.32.x ๋ฉ”์ธ ๋ธŒ๋žœ์น˜๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์„ฑ๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ๋Š” C ์–ธ์–ด๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ BSD ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

์ƒˆ ๋ฆด๋ฆฌ์Šค์—์„œ:

  • ์™ธ๋ถ€ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ REST API๊ฐ€ ์ถ”๊ฐ€๋˜์–ด ์›๊ฒฉ์œผ๋กœ ์„ค์ •์„ ์ƒˆ๋กœ ๊ณ ์น˜๊ฑฐ๋‚˜, ์„ค์ • ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜, ์›Œ์ปค ํ”„๋กœ์„ธ์Šค ์ƒํƒœ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. API ์ง€์›์€ ๋นŒ๋“œ ์˜ต์…˜ "--with-control-api"์™€ ๋ช…๋ น์ค„ ์ธ์ˆ˜ "-l"์„ ์‚ฌ์šฉํ•˜์—ฌ ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. API๋ฅผ Unix ์†Œ์ผ“์— ๋ฐ”์ธ๋”ฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค(nginx -l unix:/path/to/sock). Curl ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ API์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • Location ์ง€์‹œ๋ฌธ์˜ ๊ฐ’์œผ๋กœ "$" ๊ธฐํ˜ธ๋กœ ์‹œ์ž‘ํ•˜๋Š” ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๋Ÿฐํƒ€์ž„์— ๊ณ„์‚ฐ๋˜๋Š” ๋ณ€์ˆ˜ ๊ฐ’์€ Location ๋ธ”๋ก ์ง„์ž… ์กฐ๊ฑด์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ Location ๋ธ”๋ก์€ ๋‹ค๋ฅธ Location ๋ธ”๋ก ๋‚ด์—์„œ ์‚ฌ์šฉ๋  ์ˆ˜๋„ ์žˆ๊ณ , ๊ทธ ์ž์ฒด๋กœ ์ค‘์ฒฉ๋œ Location ๋ธ”๋ก์„ ํฌํ•จํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ: map $arg_foo $pred { bar 1; qux 1; } location $pred { root html; }
  • ngx_http_json_module ๋ชจ๋“ˆ์ด ๊ตฌํ˜„๋˜์–ด JSON ํ˜•์‹์˜ ๋ฐ์ดํ„ฐ๋ฅผ ํŒŒ์‹ฑํ•˜๊ณ , JSON์—์„œ ๊ฐœ๋ณ„ ํ•„๋“œ๋ฅผ ์ถ”์ถœํ•˜๊ณ , ์ด๋Ÿฌํ•œ ํ•„๋“œ๋ฅผ Nginx ์„ค์ •์˜ ๋ณ€์ˆ˜๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • "client_body_early_read" ์ง€์‹œ๋ฌธ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์ง€์‹œ๋ฌธ์„ ํ™œ์„ฑํ™”ํ•˜๋ฉด ํ—ค๋”๋ฅผ ์ˆ˜์‹ ํ•œ ์งํ›„ ์š”์ฒญ ๋ณธ๋ฌธ์„ ์ฝ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

Nginx HTTP ์„œ๋ฒ„์— JavaScript ์ธํ„ฐํ”„๋ฆฌํ„ฐ๋ฅผ ํ†ตํ•ฉํ•˜๋Š” ๋ชจ๋“ˆ์ธ Njs 1.0.1์ด ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Njs๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์„ค์ • ํŒŒ์ผ์—์„œ JavaScript ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ™œ์šฉํ•˜์—ฌ Nginx์˜ ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ†ตํ•ด ๊ณ ๊ธ‰ ์š”์ฒญ ์ฒ˜๋ฆฌ ๋กœ์ง์„ ์ •์˜ํ•˜๊ฑฐ๋‚˜, ์„ค์ •์„ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜, ์‘๋‹ต์„ ๋™์ ์œผ๋กœ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜, ์š”์ฒญ/์‘๋‹ต์„ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜, ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ์Šคํ…์„ ์‹ ์†ํ•˜๊ฒŒ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ๋Š” C ์–ธ์–ด๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ BSD ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

njs 1.0.1 ๋ฆด๋ฆฌ์Šค์—์„œ๋Š” ์„ธ ๊ฐ€์ง€ ์ทจ์•ฝ์ ์ด ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. xml.exclusiveC14n ํ•จ์ˆ˜์˜ ๋ฒ„ํผ ์˜ค๋ฒ„ํ”Œ๋กœ(CVE-2026-78689), js_access๋ฅผ ํ†ตํ•œ ์ ‘๊ทผ ์ œํ•œ ์šฐํšŒ(CVE-2026-18329), ๊ทธ๋ฆฌ๊ณ  ngx.fetch ์กฐ์ž‘์œผ๋กœ ์ธํ•œ ์›Œ์ปค ํ”„๋กœ์„ธ์Šค ์ถฉ๋Œ(CVE-2026-78222)์ž…๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

DDoS ๋ณดํ˜ธ, VPS VDS ์„œ๋ฒ„๊ฐ€ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ์œ„ํ•œ ์•ˆ์ •์ ์ธ ํ˜ธ์ŠคํŒ… ๊ตฌ์ž… ๐Ÿ”ฅ DDoS ๊ณต๊ฒฉ ๋ฐฉ์ง€ ๊ธฐ๋Šฅ์ด ํƒ‘์žฌ๋œ ์•ˆ์ •์ ์ธ ์›น์‚ฌ์ดํŠธ ํ˜ธ์ŠคํŒ…, VPS ๋ฐ VDS ์„œ๋ฒ„๋ฅผ ๊ตฌ๋งคํ•˜์„ธ์š” | ProHoster