2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

์•ฝ 9๋…„ ์ „๋งŒ ํ•ด๋„ Cloudflare๋Š” ์•„์ฃผ ์ž‘์€ ํšŒ์‚ฌ์˜€๊ณ  ์ €๋Š” ๊ฑฐ๊ธฐ์„œ ์ผํ•˜์ง€๋„ ์•Š์•˜๊ณ  ๊ทธ์ € ๊ณ ๊ฐ์ผ ๋ฟ์ด์—ˆ์Šต๋‹ˆ๋‹ค. Cloudflare๊ฐ€ ์ถœ์‹œ๋œ ์ง€ ํ•œ ๋‹ฌ ํ›„, ๋‚ด ์›น์‚ฌ์ดํŠธ๊ฐ€ ์‚ญ์ œ๋˜์—ˆ๋‹ค๋Š” ์•Œ๋ฆผ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. jgc.orgDNS๊ฐ€ ์ž‘๋™ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. Cloudflare๊ฐ€ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค. ํ”„๋กœํ† ์ฝœ ๋ฒ„ํผ, DNS๊ฐ€ ์†์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ฆ‰์‹œ "๋‚ด DNS๋Š” ์–ด๋””์— ์žˆ์Šต๋‹ˆ๊นŒ?"๋ผ๋Š” ์ œ๋ชฉ์œผ๋กœ Matthew Prince์—๊ฒŒ ํŽธ์ง€๋ฅผ ์ผ๊ณ  ๊ทธ๋Š” ๊ธธ๊ณ  ๊ธฐ์ˆ ์ ์ธ ๋‹ต๋ณ€์„ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค.์ „์ฒด ์„œ์‹ ์„ ์—ฌ๊ธฐ์—์„œ ์ฝ์–ด๋ณด์„ธ์š”), ์ด์— ๋‚ด๊ฐ€ ๋‹ตํ–ˆ์Šต๋‹ˆ๋‹ค:

๋ณด๋‚ธ ์‚ฌ๋žŒ: John Graham-Cumming
๋‚ ์งœ: 7๋…„ 2010์›” 9์ผ, 14:XNUMX
์ œ๋ชฉ: Re: ๋‚ด DNS๋Š” ์–ด๋””์— ์žˆ๋‚˜์š”?
๋ฐ›๋Š” ์‚ฌ๋žŒ: ๋งคํŠœ ํ”„๋ฆฐ์Šค

ํ›Œ๋ฅญํ•œ ๋ณด๊ณ ์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ์ƒ๊ธฐ๋ฉด ๊ผญ ์ „ํ™”๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ธฐ์ˆ ์ ์ธ ์ •๋ณด๋ฅผ ์ˆ˜์ง‘ํ•œ ํ›„์— ์ด์— ๋Œ€ํ•œ ๊ธ€์„ ์“ฐ๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์€ ์†”์งํ•˜๊ณ  ๊ณต๊ฐœ์ ์ธ ์ด์•ผ๊ธฐ๋ฅผ ์ข‹์•„ํ•  ๊ฑฐ๋ผ๊ณ  ์ƒ๊ฐํ•ด์š”. ํŠนํžˆ ์ถœ์‹œ ์ดํ›„ ํŠธ๋ž˜ํ”ฝ์ด ์–ด๋–ป๊ฒŒ ์ฆ๊ฐ€ํ–ˆ๋Š”์ง€ ๋ณด์—ฌ์ฃผ๋Š” ๊ทธ๋ž˜ํ”„๋ฅผ ์ฒจ๋ถ€ํ•œ๋‹ค๋ฉด ๋”์šฑ ๊ทธ๋ ‡์Šต๋‹ˆ๋‹ค.

์ €๋Š” ์‚ฌ์ดํŠธ๋ฅผ ์ž˜ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•  ๋•Œ๋งˆ๋‹ค SMS๋ฅผ ๋ฐ›์Šต๋‹ˆ๋‹ค. ๋ชจ๋‹ˆํ„ฐ๋ง ๊ฒฐ๊ณผ, ์žฅ์• ๋Š” 13:03:07๋ถ€ํ„ฐ 14:04:12๊นŒ์ง€ ๋ฐœ์ƒํ•œ ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚ฌ์Šต๋‹ˆ๋‹ค. ๊ฒ€์‚ฌ๋Š” XNUMX๋ถ„๋งˆ๋‹ค ์‹ค์‹œ๋ฉ๋‹ˆ๋‹ค.

๋‹น์‹ ์€ ๋‹ค ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ์„ ๊ฑฐ๋ผ๊ณ  ํ™•์‹ ํ•ด์š”. ์œ ๋Ÿฝ์— ๋‹น์‹ ์˜ ๋‚จ์ž๊ฐ€ ํ•„์š” ์—†๋‹ค๊ณ  ํ™•์‹ ํ•ด์š”? ๐Ÿ™‚

๊ทธ๋ฆฌ๊ณ  ๊ทธ๋Š” ๋Œ€๋‹ตํ–ˆ๋‹ค:

๋ณด๋‚ธ ์‚ฌ๋žŒ: Matthew Prince
๋‚ ์งœ: 7๋…„ 2010์›” 9์ผ, 57:XNUMX
์ œ๋ชฉ: Re: ๋‚ด DNS๋Š” ์–ด๋””์— ์žˆ๋‚˜์š”?
๋ฐ›๋Š” ์‚ฌ๋žŒ: John Graham-Cumming

๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ํŽธ์ง€๋ฅผ ์“ด ๋ชจ๋“  ์‚ฌ๋žŒ์—๊ฒŒ ๋‹ต์žฅํ–ˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” ์ง€๊ธˆ ์‚ฌ๋ฌด์‹ค๋กœ ๊ฐ€๋Š” ๊ธธ์ž…๋‹ˆ๋‹ค. ๋ธ”๋กœ๊ทธ์— ๊ธ€์„ ์“ฐ๊ฑฐ๋‚˜ ๊ฒŒ์‹œํŒ์— ๊ณต์‹ ๊ฒŒ์‹œ๋ฌผ์„ ๊ฒŒ์‹œํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ „์ ์œผ๋กœ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค. ์ •์งํ•จ์ด ๋ฌด์—‡๋ณด๋‹ค ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค.

ํด๋ผ์šฐ๋“œํ”Œ๋ ˆ์–ด๋Š” ์ •๋ง ํฐ ํšŒ์‚ฌ์ด๊ณ , ์ €๋Š” ๊ทธ๊ณณ์—์„œ ์ผํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด์ œ ์ €๋Š” ์šฐ๋ฆฌ์˜ ์‹ค์ˆ˜, ๊ทธ์— ๋”ฐ๋ฅธ ๊ฒฐ๊ณผ, ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ์˜ ํ–‰๋™์— ๋Œ€ํ•ด ๊ณต๊ฐœ์ ์œผ๋กœ ๊ธ€์„ ์จ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

2์›” XNUMX์ผ์˜ ์ด๋ฒคํŠธ

2์›” XNUMX์ผ, ์šฐ๋ฆฌ๋Š” WAF์šฉ ๊ด€๋ฆฌ ๊ทœ์น™์— ์ƒˆ๋กœ์šด ๊ทœ์น™์„ ๋ฐฐํฌํ–ˆ์Šต๋‹ˆ๋‹ค. CPU ๋ฆฌ์†Œ์Šค๊ฐ€ ๋ถ€์กฑํ–ˆ์Šต๋‹ˆ๋‹ค ์ „ ์„ธ๊ณ„ Cloudflare ๋„คํŠธ์›Œํฌ์—์„œ HTTP/HTTPS ํŠธ๋ž˜ํ”ฝ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ชจ๋“  CPU ์ฝ”์–ด์—์„œ. ์šฐ๋ฆฌ๋Š” ์ƒˆ๋กœ์šด ์ทจ์•ฝ์ ๊ณผ ์œ„ํ˜‘์— ๋Œ€์‘ํ•˜์—ฌ WAF์— ๋Œ€ํ•œ ๊ด€๋ฆฌ ๊ทœ์น™์„ ์ง€์†์ ์œผ๋กœ ๊ฐœ์„ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 5์›”์—๋Š” ์šฐ๋ฆฌ๋Š” ์„œ๋‘๋ฅด๋ฉฐ ๊ทœ์น™ ์ถ”๊ฐ€SharePoint์˜ ์‹ฌ๊ฐํ•œ ์ทจ์•ฝ์ ์œผ๋กœ๋ถ€ํ„ฐ ๋ณดํ˜ธํ•ฉ๋‹ˆ๋‹ค. WAF์˜ ํ•ต์‹ฌ์€ ๊ทœ์น™์„ ์‹ ์†ํ•˜๊ณ  ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.

๋ถˆํ–‰ํžˆ๋„, ์ง€๋‚œ ๋ชฉ์š”์ผ ์—…๋ฐ์ดํŠธ์—๋Š” ๋ฐฑํŠธ๋ž˜ํ‚น์— HTTP/HTTPS CPU๋ฅผ ๋„ˆ๋ฌด ๋งŽ์ด ๋‚ญ๋น„ํ•˜๋Š” ์ •๊ทœ ํ‘œํ˜„์‹์ด ํฌํ•จ๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ํ•ต์‹ฌ ํ”„๋ก์‹œ, CDN ๋ฐ WAF ๊ธฐ๋Šฅ์ด ์˜ํ–ฅ์„ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜ํ”„๋Š” ๋„คํŠธ์›Œํฌ์˜ ์„œ๋ฒ„์—์„œ HTTP/HTTPS ํŠธ๋ž˜ํ”ฝ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” CPU ๋ฆฌ์†Œ์Šค๊ฐ€ ๊ฑฐ์˜ 100%์— ๋„๋‹ฌํ–ˆ์Œ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด
์‚ฌ๊ณ  ๋ฐœ์ƒ ์ค‘ ์ ‘์† ์ง€์  ์ค‘ ํ•˜๋‚˜์˜ CPU ์‚ฌ์šฉ๋Ÿ‰

๊ฒฐ๊ณผ์ ์œผ๋กœ, ๋‹น์‚ฌ ๊ณ ๊ฐ(๋ฐ ๋‹น์‚ฌ ๊ณ ๊ฐ์˜ ๊ณ ๊ฐ)์€ Cloudflare ๋„๋ฉ”์ธ์—์„œ 502 ์˜ค๋ฅ˜ ํŽ˜์ด์ง€๋ฅผ ์ ‘ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. 502 ์˜ค๋ฅ˜๋Š” Cloudflare์˜ ํ”„๋ŸฐํŠธ์—”๋“œ ์›น ์„œ๋ฒ„์—์„œ ๋ฐœ์ƒํ–ˆ๋Š”๋ฐ, ์ด ์„œ๋ฒ„์—๋Š” ์—ฌ์ „ํžˆ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ฝ”์–ด๊ฐ€ ์žˆ์—ˆ์ง€๋งŒ HTTP/HTTPS ํŠธ๋ž˜ํ”ฝ์„ ์ฒ˜๋ฆฌํ•˜๋Š” ํ”„๋กœ์„ธ์Šค์— ์ ‘์†ํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

์šฐ๋ฆฌ๋Š” ์ด ์‚ฌ๊ฑด์œผ๋กœ ์ธํ•ด ๊ณ ๊ฐ ์—ฌ๋Ÿฌ๋ถ„๊ป˜ ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ๋ถˆํŽธ์„ ๋ผ์ณ๋“œ๋ ธ๋Š”์ง€ ์•Œ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ •๋ง ๋ถ€๋„๋Ÿฝ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์‹คํŒจ๋กœ ์ธํ•ด ์šฐ๋ฆฌ๋Š” ์‚ฌ๊ณ ๋ฅผ ํšจ๊ณผ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋งŒ์•ฝ ์—ฌ๋Ÿฌ๋ถ„์ด ๊ทธ๋Ÿฐ ๊ณ ๊ฐ ์ค‘ ํ•œ ๋ช…์ด์—ˆ๋‹ค๋ฉด, ์•„๋งˆ๋„ ๋ฌด์„œ์›€, ๋ถ„๋…ธ, ๋ถˆ์พŒ๊ฐ์„ ๋А๊ผˆ์„ ๊ฒ๋‹ˆ๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ์šฐ๋ฆฌ๋Š” 6๋…„ ๋™์•ˆ ํ•˜๋‚˜๋„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š์•˜์–ด์š” ์„ธ๊ณ„์  ์‹คํŒจ. CPU ์‚ฌ์šฉ๋Ÿ‰์ด ๋†’์€ ์ด์œ ๋Š” ์ œ๋Œ€๋กœ ๊ตฌ์„ฑ๋˜์ง€ ์•Š์€ ์ •๊ทœ ํ‘œํ˜„์‹์„ ์‚ฌ์šฉํ•˜๋Š” ๋‹จ์ผ WAF ๊ทœ์น™์œผ๋กœ ์ธํ•ด ๊ณผ๋„ํ•œ ๋ฐฑํŠธ๋ž˜ํ‚น์ด ๋ฐœ์ƒํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ฃ„์ฑ…๊ฐ์„ ๋‚˜ํƒ€๋‚ด๋Š” ํ‘œํ˜„์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. (?:(?:"|'|]|}||d|(?:nan|infinity|true|false|null|undefined|symbol|math)|`|-|+)+[)]*;?((?:s|-|~|!|{}||||+)*.*(?:.*=.*)))

๊ทธ ์ž์ฒด๋กœ ํฅ๋ฏธ๋กœ์šด ์‚ฌ์‹ค์ด์ง€๋งŒ(์•„๋ž˜์—์„œ ๋” ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค) Cloudflare๊ฐ€ 27๋ถ„๊ฐ„ ๋‹ค์šด๋œ ์ด์œ ๋Š” ์ž˜๋ชป๋œ ์ •๊ทœ ํ‘œํ˜„์‹ ๋•Œ๋ฌธ๋งŒ์€ ์•„๋‹ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์‹คํŒจ์— ์ด๋ฅด๊ธฐ๊นŒ์ง€์˜ ์ผ๋ จ์˜ ์‚ฌ๊ฑด์„ ์„ค๋ช…ํ•˜๋Š” ๋ฐ ์‹œ๊ฐ„์ด ๊ฝค ๊ฑธ๋ ธ๊ธฐ ๋•Œ๋ฌธ์— ๋Œ€์‘์ด ๋А๋ ธ์Šต๋‹ˆ๋‹ค. ๊ธ€์˜ ๋งˆ์ง€๋ง‰ ๋ถ€๋ถ„์—์„œ๋Š” ์ •๊ทœ ํ‘œํ˜„์‹์—์„œ์˜ ๋ฐฑํŠธ๋ž˜ํ‚น์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜๊ณ , ์ด๋ฅผ ์–ด๋–ป๊ฒŒ ํ™œ์šฉํ• ์ง€ ๋ง์”€๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฌด์Šจ ์ผ์ด ์žˆ์—ˆ๋Š”์ง€

์ˆœ์„œ๋Œ€๋กœ ์‹œ์ž‘ํ•ด ๋ณด์ฃ . ์—ฌ๊ธฐ์˜ ๋ชจ๋“  ์‹œ๊ฐ„์€ UTC ๊ธฐ์ค€์ž…๋‹ˆ๋‹ค.

์˜คํ›„ 13์‹œ 42๋ถ„, ๋ฐฉํ™”๋ฒฝ ํŒ€์˜ ์—”์ง€๋‹ˆ์–ด๊ฐ€ ํƒ์ง€ ๊ทœ์น™์„ ์•ฝ๊ฐ„ ๋ณ€๊ฒฝํ–ˆ์Šต๋‹ˆ๋‹ค. XSS ์ž๋™ ํ”„๋กœ์„ธ์Šค๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด์— ๋”ฐ๋ผ ๋ณ€๊ฒฝ ์š”์ฒญ ํ‹ฐ์ผ“์ด ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ‹ฐ์ผ“์€ Jira๋ฅผ ํ†ตํ•ด ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค(์•„๋ž˜ ์Šคํฌ๋ฆฐ์ƒท ์ฐธ์กฐ).

3๋ถ„ ์ด๋‚ด์— ์ฒซ ๋ฒˆ์งธ PagerDuty ํŽ˜์ด์ง€๊ฐ€ ๋‚˜ํƒ€๋‚˜ WAF์— ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๋Š” ๋ณด๊ณ ๊ฐ€ ๋‚˜์™”์Šต๋‹ˆ๋‹ค. ์ด๋Š” Cloudflare ์™ธ๋ถ€์˜ WAF(์ˆ˜๋ฐฑ ๊ฐœ๊ฐ€ ์žˆ์Œ) ๊ธฐ๋Šฅ์„ ์ ๊ฒ€ํ•˜์—ฌ ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๋Š” ์ข…ํ•ฉ ํ…Œ์ŠคํŠธ์˜€์Šต๋‹ˆ๋‹ค. ๊ทธ ํ›„ ๋‹ค๋ฅธ ์—”๋“œํˆฌ์—”๋“œ Cloudflare ์„œ๋น„์Šค ํ…Œ์ŠคํŠธ ์‹คํŒจ, ๊ธ€๋กœ๋ฒŒ ํŠธ๋ž˜ํ”ฝ ๋ฌธ์ œ, ๊ด‘๋ฒ”์œ„ํ•œ 502 ์˜ค๋ฅ˜, ์ „ ์„ธ๊ณ„ ๋„์‹œ์— ์žˆ๋Š” PoP(Points of Presence)์—์„œ CPU ๋ณ‘๋ชฉ ํ˜„์ƒ์„ ๋‚˜ํƒ€๋‚ด๋Š” ์ˆ˜๋งŽ์€ ๋ณด๊ณ ์— ๋Œ€ํ•œ ๊ฒฝ๊ณ  ํŽ˜์ด์ง€๊ฐ€ ๋น ๋ฅด๊ฒŒ ์ด์–ด์กŒ์Šต๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

์ €๋Š” ์ด๋Ÿฌํ•œ ์•Œ๋ฆผ์„ ๋ช‡ ๊ฐœ ๋ฐ›๊ณ  ํšŒ์˜์žฅ์„ ๋‚˜์™€์„œ ํšŒ์˜์‹ค๋กœ ๊ฐ€๋˜ ์ค‘ ์†”๋ฃจ์…˜ ์ฑ…์ž„์ž๊ฐ€ ํŠธ๋ž˜ํ”ฝ์˜ 80%๊ฐ€ ์†์‹ค๋˜์—ˆ๋‹ค๊ณ  ๋งํ–ˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” ์ด๋ฏธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ž‘์—… ์ค‘์ด์—ˆ๋˜ SRE ์—”์ง€๋‹ˆ์–ด์—๊ฒŒ ๋‹ฌ๋ ค๊ฐ”์Šต๋‹ˆ๋‹ค. ์ฒ˜์Œ์—๋Š” ์•Œ๋ ค์ง€์ง€ ์•Š์€ ๊ณต๊ฒฉ์ด๋ผ๊ณ  ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

Cloudflare์˜ SRE ์—”์ง€๋‹ˆ์–ด๋Š” ์ „ ์„ธ๊ณ„์— ์œ„์น˜ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ 0์‹œ๊ฐ„ ๋‚ด๋‚ด ์ƒํ™ฉ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ ์ด๋Ÿฌํ•œ ์•Œ๋ฆผ์€ ๋ฒ”์œ„๊ฐ€ ์ œํ•œ๋œ ๊ตฌ์ฒด์ ์ด๊ณ  ์ง€์—ญ์ ์ธ ๋ฌธ์ œ๋ฅผ ์•Œ๋ฆฌ๊ณ , ๋‚ด๋ถ€ ๋Œ€์‹œ๋ณด๋“œ์—์„œ ์ถ”์ ํ•˜๋ฉฐ, ํ•˜๋ฃจ์— ์—ฌ๋Ÿฌ ๋ฒˆ ํ•ด๊ฒฐ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ์ด๋Ÿฌํ•œ ํŽ˜์ด์ง€์™€ ์•Œ๋ฆผ์€ ๋งค์šฐ ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๋ฅผ ๋‚˜ํƒ€๋ƒˆ๊ณ , SRE ์—”์ง€๋‹ˆ์–ด๋Š” ์ฆ‰์‹œ ์‹ฌ๊ฐ๋„ ์ˆ˜์ค€์„ PXNUMX๋กœ ์„ ์–ธํ•˜๊ณ  ๊ฒฝ์˜์ง„๊ณผ ์‹œ์Šคํ…œ ์—”์ง€๋‹ˆ์–ด์—๊ฒŒ ์—ฐ๋ฝํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ ์ˆœ๊ฐ„ ๋Ÿฐ๋˜์˜ ์—”์ง€๋‹ˆ์–ด๋“ค์€ ๋Œ€๊ฐ•๋‹น์—์„œ ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ•์˜๋Š” ์ค‘๋‹จ๋˜์–ด์•ผ ํ–ˆ๊ณ , ๋ชจ๋‘๊ฐ€ ํฐ ํšŒ์˜์‹ค์— ๋ชจ์˜€์œผ๋ฉฐ, ๋” ๋งŽ์€ ์ „๋ฌธ๊ฐ€๋“ค์ด ๋ถˆ๋ ค์™”์Šต๋‹ˆ๋‹ค. ์ด๋Š” SRE๊ฐ€ ์Šค์Šค๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ผ๋ฐ˜์ ์ธ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ ํ•ฉํ•œ ์ „๋ฌธ๊ฐ€๋ฅผ ๊ธด๊ธ‰ํžˆ ์ฐธ์—ฌ์‹œํ‚ค๋Š” ๊ฒƒ์ด ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค.

14:00์— ์šฐ๋ฆฌ๋Š” ๋ฌธ์ œ๊ฐ€ WAF์— ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ํ™•์ธํ–ˆ๊ณ , ๊ณต๊ฒฉ์€ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ์„ฑ๋Šฅ ํŒ€์ด CPU ๋ฐ์ดํ„ฐ๋ฅผ ๋ฝ‘์•„๋ณธ ๊ฒฐ๊ณผ, WAF๊ฐ€ ์›์ธ์ด๋ผ๋Š” ์‚ฌ์‹ค์ด ๋ถ„๋ช…ํ•ด์กŒ์Šต๋‹ˆ๋‹ค. ๋˜ ๋‹ค๋ฅธ ์ง์›์€ strace๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด ์ด๋ก ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ๋ˆ„๊ตฐ๊ฐ€๊ฐ€ ๋กœ๊ทธ์—์„œ WAF์— ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜คํ›„ 14์‹œ 02๋ถ„์— ์ „์ฒด ํŒ€์ด ์ €์—๊ฒŒ ์ฐพ์•„์™€์„œ ๊ธ€๋กœ๋ฒŒ ํ‚ฌ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹๊ฒ ๋‹ค๋Š” ์ œ์•ˆ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ธ€๋กœ๋ฒŒ ํ‚ฌ์€ Cloudflare์— ๋‚ด์žฅ๋œ ๋ฉ”์ปค๋‹ˆ์ฆ˜์œผ๋กœ ์ „ ์„ธ๊ณ„์—์„œ ํ•˜๋‚˜์˜ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.

WAF๋ฅผ ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ์„ฑ๊ณต์ ์œผ๋กœ ์šด์˜ํ•œ ๊ฒƒ์€ ๋ณ„๊ฐœ์˜ ์ด์•ผ๊ธฐ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ฒŒ ๊ฐ„๋‹จํ•œ ์ผ์€ ์•„๋‹™๋‹ˆ๋‹ค. ์ €ํฌ๋Š” ์ €ํฌ๋งŒ์˜ ์ œํ’ˆ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ €ํฌ์˜ ์„œ๋น„์Šค๋Š” Access ์ž‘๋™ํ•˜์ง€ ์•Š์•˜๊ณ , ์ธ์ฆ์„ ๋ฐ›์ง€ ๋ชปํ•˜๊ณ  ๋‚ด๋ถ€ ์ œ์–ดํŒ์— ๋กœ๊ทธ์ธํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค(๋ชจ๋“  ๊ฒƒ์„ ํ•ด๊ฒฐํ•˜๊ณ  ๋‚˜์„œ์•ผ ๋‚ด๋ถ€ ์ œ์–ดํŒ์„ ์žฅ์‹œ๊ฐ„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์œผ๋ฉด ์ž๊ฒฉ ์ฆ๋ช…์„ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ๋ณด์•ˆ ๊ธฐ๋Šฅ์œผ๋กœ ์ธํ•ด ์ผ๋ถ€ ํŒ€์›์ด ์•ก์„ธ์Šค ๊ถŒํ•œ์„ ์žƒ์—ˆ๋‹ค๋Š” ์‚ฌ์‹ค์„ ์•Œ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค).

Jira๋‚˜ ๋นŒ๋“œ ์‹œ์Šคํ…œ ๊ฐ™์€ ๋‚ด๋ถ€ ์„œ๋น„์Šค์— ์ ‘๊ทผํ•  ์ˆ˜๋„ ์—†์—ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์ž์ฃผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ํ•ด๊ฒฐ์ฑ…์ด ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค(์ด๊ฒƒ ์—ญ์‹œ ํ•ด๊ฒฐํ•ด์•ผ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค). ๋งˆ์นจ๋‚ด ํ•œ ์—”์ง€๋‹ˆ์–ด๊ฐ€ 14:07์— WAF๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ๋ฐ ์„ฑ๊ณตํ–ˆ๊ณ , 14:09์—๋Š” ๋ชจ๋“  ๊ณณ์˜ ํŠธ๋ž˜ํ”ฝ๊ณผ CPU ์ˆ˜์ค€์ด ์ •์ƒ์œผ๋กœ ๋Œ์•„์™”์Šต๋‹ˆ๋‹ค. Cloudflare์˜ ๋‚˜๋จธ์ง€ ๋ณด์•ˆ ๋ฉ”์ปค๋‹ˆ์ฆ˜์€ ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™ํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฐ ๋‹ค์Œ WAF๋ฅผ ๋ณต๊ตฌํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒํ™ฉ์ด ํ‰์†Œ์™€ ๋‹ฌ๋ž๊ธฐ ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ๋Š” ๋ณ„๋„์˜ ํŠธ๋ž˜ํ”ฝ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•œ ๋„์‹œ์—์„œ ๋ถ€์ •์  ํ…Œ์ŠคํŠธ(์ด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ •๋ง ๋ฌธ์ œ์ธ์ง€ ์ž๋ฌธํ•˜๋Š” ๊ฒƒ)์™€ ๊ธ์ •์  ํ…Œ์ŠคํŠธ(๋กค๋ฐฑ์ด ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ)๋ฅผ ์‹คํ–‰ํ•˜๊ณ , ๊ทธ๊ณณ์—์„œ ์œ ๋ฃŒ ๊ณ ๊ฐ์„ ์ด๋™์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.

14:52์— ์šฐ๋ฆฌ๋Š” ์›์ธ์„ ํŒŒ์•…ํ•˜๊ณ  ์ˆ˜์ • ์กฐ์น˜๋ฅผ ์ทจํ•œ ํ›„ WAF๋ฅผ ๋‹ค์‹œ ํ™œ์„ฑํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค.

ํด๋ผ์šฐ๋“œํ”Œ๋ ˆ์–ด ์ž‘๋™ ๋ฐฉ์‹

Cloudflare์—๋Š” WAF ๊ด€๋ฆฌ ๊ทœ์น™์„ ์ „๋‹ดํ•˜๋Š” ์—”์ง€๋‹ˆ์–ด ํŒ€์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋“ค์€ ํƒ์ง€์œจ์„ ๋†’์ด๊ณ , ๊ฑฐ์ง“ ์–‘์„ฑ ํŒ์ •์„ ๋‚ฎ์ถ”๊ณ , ์ƒˆ๋กœ์šด ์œ„ํ˜‘์ด ๋‚˜ํƒ€๋‚˜๋ฉด ์‹ ์†ํžˆ ๋Œ€์‘ํ•˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•ฉ๋‹ˆ๋‹ค. ์ง€๋‚œ 60์ผ ๋™์•ˆ WAF ๊ด€๋ฆฌ ๊ทœ์น™์— ๋Œ€ํ•œ ๋ณ€๊ฒฝ ์š”์ฒญ 476๊ฐœ๊ฐ€ ์ฒ˜๋ฆฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค(ํ‰๊ท ์ ์œผ๋กœ 3์‹œ๊ฐ„๋งˆ๋‹ค XNUMX๊ฐœ).

์ด ํŠน์ • ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ชจ๋“œ์—์„œ ๋ฐฐํฌ๋˜์–ด์•ผ ํ•˜๋ฉฐ, ์‹ค์ œ ๊ณ ๊ฐ ํŠธ๋ž˜ํ”ฝ์€ ๊ทœ์น™์„ ํ†ต๊ณผํ•˜์ง€๋งŒ ์•„๋ฌด๊ฒƒ๋„ ์ฐจ๋‹จ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๋ชจ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ทœ์น™์˜ ํšจ๊ณผ๋ฅผ ํ…Œ์ŠคํŠธํ•˜๊ณ  ๊ฑฐ์ง“ ์–‘์„ฑ ๋ฐ ๊ฑฐ์ง“ ์Œ์„ฑ์˜ ๋น„์œจ์„ ์ธก์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๋ชจ๋“œ์—์„œ๋„ ๊ทœ์น™์„ ์‹ค์ œ๋กœ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋ฉฐ, ์ด ๊ฒฝ์šฐ ๊ทœ์น™์— CPU ๋ฆฌ์†Œ์Šค๋ฅผ ๋„ˆ๋ฌด ๋งŽ์ด ์†Œ๋ชจํ•˜๋Š” ์ •๊ทœ ํ‘œํ˜„์‹์ด ํฌํ•จ๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

์œ„์˜ ๋ณ€๊ฒฝ ์š”์ฒญ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ์ด๋Ÿฌํ•œ ์œ ํ˜•์˜ ๋ฐฐํฌ์—๋Š” ๋ฐฐํฌ ๊ณ„ํš, ๋กค๋ฐฑ ๊ณ„ํš ๋ฐ ๋‚ด๋ถ€ ํ‘œ์ค€ ์šด์˜ ์ ˆ์ฐจ(SOP)์— ๋Œ€ํ•œ ์ฐธ์กฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทœ์น™์„ ๋ณ€๊ฒฝํ•˜๊ธฐ ์œ„ํ•œ SOP(ํ‘œ์ค€์šด์˜์ ˆ์ฐจ)๋ฅผ ํ†ตํ•ด ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ๊ณต๊ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์‹ค, Cloudflare์—์„œ๋Š” ์ƒํ™ฉ์ด ๋งค์šฐ ๋‹ค๋ฅด๊ฒŒ ์„ค์ •๋˜์–ด ์žˆ์œผ๋ฉฐ SOP์— ๋”ฐ๋ฅด๋ฉด ๋จผ์ € ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ํ…Œ์ŠคํŠธ ๋ฐ ๋‚ด๋ถ€ ์‚ฌ์šฉ์„ ์œ„ํ•ด ์ง์›์ด ์‚ฌ์šฉํ•˜๋Š” ๋‚ด๋ถ€ ์ ‘์† ์ง€์ (PoP)์œผ๋กœ ๋ณด๋‚ธ ๋‹ค์Œ, ๊ฒฉ๋ฆฌ๋œ ์œ„์น˜์— ์žˆ๋Š” ์†Œ์ˆ˜์˜ ๊ณ ๊ฐ์—๊ฒŒ ๋ณด๋‚ธ ๋‹ค์Œ, ๊ทธ๋Ÿฐ ๋‹ค์Œ ๋‹ค์ˆ˜์˜ ๊ณ ๊ฐ์—๊ฒŒ ๋ณด๋‚ธ ํ›„, ๊ทธ๋Ÿฐ ๋‹ค์Œ์—์•ผ ์ „ ์„ธ๊ณ„๋กœ ๋ณด๋ƒ…๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ๊ทธ ๋ชจ์Šต์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” BitBucket์„ ํ†ตํ•ด ๋‚ด๋ถ€์ ์œผ๋กœ git์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ ์ž‘์—…์„ ์ง„ํ–‰ํ•˜๋Š” ์—”์ง€๋‹ˆ์–ด๋Š” TeamCity์—์„œ ๋นŒ๋“œ๋œ ์ฝ”๋“œ๋ฅผ ์ œ์ถœํ•˜๊ณ , ๋นŒ๋“œ๊ฐ€ ํ†ต๊ณผ๋˜๋ฉด ๊ฒ€ํ† ์ž๊ฐ€ ํ• ๋‹น๋ฉ๋‹ˆ๋‹ค. ํ’€ ๋ฆฌํ€˜์ŠคํŠธ๊ฐ€ ์Šน์ธ๋˜๋ฉด ์ฝ”๋“œ๊ฐ€ ๋นŒ๋“œ๋˜๊ณ  ์ผ๋ จ์˜ ํ…Œ์ŠคํŠธ๊ฐ€ (๋‹ค์‹œ) ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

๋นŒ๋“œ์™€ ํ…Œ์ŠคํŠธ๊ฐ€ ์„ฑ๊ณต์ ์œผ๋กœ ์™„๋ฃŒ๋˜๋ฉด Jira์— ๋ณ€๊ฒฝ ์š”์ฒญ์ด ์ƒ์„ฑ๋˜๊ณ  ํ•ด๋‹น ๊ด€๋ฆฌ์ž ๋˜๋Š” ๋ฆฌ๋“œ๊ฐ€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์Šน์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์Šน์ธ๋˜๋ฉด ๋ฐฐ์น˜๋Š” ์†Œ์œ„ "PoP ๋™๋ฌผ์›"์ธ DOG, PIG๋กœ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค. ์นด๋‚˜๋ฆฌ์•„ (๊ฐœ, ๋ผ์ง€, ์นด๋‚˜๋ฆฌ์•„).

DOG PoP๋Š” Cloudflare ์ง์›๋งŒ ์‚ฌ์šฉํ•˜๋Š” Cloudflare PoP(๋‹ค๋ฅธ ๋„์‹œ์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ)์ž…๋‹ˆ๋‹ค. ๋‚ด๋ถ€์šฉ PoP๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๊ณ ๊ฐ ํŠธ๋ž˜ํ”ฝ์ด ์†”๋ฃจ์…˜์œผ๋กœ ์œ ์ž…๋˜๊ธฐ ์ „์— ๋ฌธ์ œ๋ฅผ ํฌ์ฐฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์œ ์šฉํ•œ ์ •๋ณด.

DOG ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•˜๋ฉด ์ฝ”๋“œ๋Š” PIG(๊ธฐ๋‹ˆํ”ผ๊ทธ) ๋‹จ๊ณ„๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์†Œ๋Ÿ‰์˜ ๋ฌด๋ฃŒ ๊ณ ๊ฐ ํŠธ๋ž˜ํ”ฝ์ด ์ƒˆ๋กœ์šด ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด ์ „๋‹ฌ๋˜๋Š” Cloudflare PoP์ž…๋‹ˆ๋‹ค.
๋ชจ๋“  ๊ฒƒ์ด ์ž˜๋˜๋ฉด ์ฝ”๋“œ๋Š” Canary์— ํ‘ธ์‹œ๋ฉ๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์ „ ์„ธ๊ณ„ ์—ฌ๋Ÿฌ ์ง€์—ญ์— 3๊ฐœ์˜ Canary PoP๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ฝ”๋“œ์—์„œ๋Š” ์œ ๋ฃŒ ๋ฐ ๋ฌด๋ฃŒ ๊ณ ๊ฐ์˜ ํŠธ๋ž˜ํ”ฝ์ด ์ƒˆ๋กœ์šด ์ฝ”๋“œ๋ฅผ ํ†ต๊ณผํ•˜๋ฉฐ, ์—ฌ๊ธฐ์„œ ์˜ค๋ฅ˜๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” ์ตœ์ข… ๊ฒ€์‚ฌ๊ฐ€ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด
Cloudflare์˜ ์†Œํ”„ํŠธ์›จ์–ด ๋ฆด๋ฆฌ์Šค ํ”„๋กœ์„ธ์Šค

Canary์—์„œ ์ฝ”๋“œ๊ฐ€ ๋ฌธ์ œ์—†๋‹ค๋ฉด, ์šฐ๋ฆฌ๋Š” ๊ทธ๊ฒƒ์„ ๋ฆด๋ฆฌ์Šคํ•ฉ๋‹ˆ๋‹ค. DOG, PIG, Canary, ์ „ ์„ธ๊ณ„ ๋“ฑ ๋ชจ๋“  ๋‹จ๊ณ„๋ฅผ ๊ฑฐ์น˜๋Š” ๋ฐ๋Š” ์ฝ”๋“œ ๋ณ€๊ฒฝ์— ๋”ฐ๋ผ ๋ช‡ ์‹œ๊ฐ„์—์„œ ๋ฉฐ์น ์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. Cloudflare๋Š” ๋‹ค์–‘ํ•œ ๋„คํŠธ์›Œํฌ์™€ ๊ณ ๊ฐ์„ ๋ณด์œ ํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ „ ์„ธ๊ณ„ ๋ชจ๋“  ๊ณ ๊ฐ์—๊ฒŒ ์ถœ์‹œํ•˜๊ธฐ ์ „์— ์ฝ”๋“œ๋ฅผ ์ฒ ์ €ํžˆ ํ…Œ์ŠคํŠธํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ WAF๋Š” ์œ„ํ˜‘์— ์‹ ์†ํžˆ ๋Œ€์‘ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๋Ÿฌํ•œ ํ”„๋กœ์„ธ์Šค๋ฅผ ํŠน๋ณ„ํžˆ ๋”ฐ๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

WAF ์œ„ํ˜‘
์ตœ๊ทผ ๋ช‡ ๋…„ ๋™์•ˆ ์ผ๋ฐ˜์ ์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์œ„ํ˜‘์ด ํฌ๊ฒŒ ์ฆ๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ์†Œํ”„ํŠธ์›จ์–ด ํ…Œ์ŠคํŒ… ๋„๊ตฌ์˜ ๊ฐ€์šฉ์„ฑ์ด ๋†’์•„์กŒ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์šฐ๋ฆฌ๋Š” ์ตœ๊ทผ์— ๋‹ค์Œ์— ๋Œ€ํ•ด ์ผ์Šต๋‹ˆ๋‹ค. ํผ์ง•).

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด
์ถœ์ฒ˜ : https://cvedetails.com/

๊ฐœ๋… ์ฆ๋ช…์ด ์ƒ์„ฑ๋˜์–ด ์ฆ‰์‹œ Github์— ๊ฒŒ์‹œ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งค์šฐ ๋งŽ์œผ๋ฏ€๋กœ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ํŒ€์ด ์ด๋ฅผ ๋น ๋ฅด๊ฒŒ ํ…Œ์ŠคํŠธํ•˜๊ณ  ๋ณด์•ˆ์ด ์ ์ ˆํžˆ ์œ ์ง€๋˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ Cloudflare๋Š” ๊ณ ๊ฐ์ด ์†Œํ”„ํŠธ์›จ์–ด์— ํŒจ์น˜๋ฅผ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ์ตœ๋Œ€ํ•œ ๋นจ๋ฆฌ ์ƒˆ๋กœ์šด ๊ณต๊ฒฉ์— ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Cloudflare์˜ ์‹ ์†ํ•œ ๋Œ€์‘์— ๋Œ€ํ•œ ์ข‹์€ ์˜ˆ๋Š” 5์›”์— SharePoint ์ทจ์•ฝ์„ฑ์— ๋Œ€ํ•œ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์„ ์ถœ์‹œํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.์—ฌ๊ธฐ ์ฝ๊ธฐ). ๊ณต์ง€ ์‚ฌํ•ญ์„ ๊ฒŒ์‹œํ•œ ์งํ›„, ์šฐ๋ฆฌ๋Š” ๊ณ ๊ฐ์˜ SharePoint ์„ค์น˜์—์„œ ํ•ด๋‹น ์ทจ์•ฝ์ ์„ ์•…์šฉํ•˜๋ ค๋Š” ์‹œ๋„๊ฐ€ ์—„์ฒญ๋‚˜๊ฒŒ ๋งŽ์•˜๋‹ค๋Š” ๊ฒƒ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ ์ง์›๋“ค์€ ๋Š์ž„์—†์ด ์ƒˆ๋กœ์šด ์œ„ํ˜‘์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ๊ณ ๊ฐ์„ ๋ณดํ˜ธํ•˜๊ธฐ ์œ„ํ•ด ๊ทœ์น™์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค.

๋ชฉ์š”์ผ์— ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚จ ๊ทœ์น™์€ XSS(๊ต์ฐจ ์‚ฌ์ดํŠธ ์Šคํฌ๋ฆฝํŒ…)๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•œ ๊ฒƒ์ด์—ˆ์Šต๋‹ˆ๋‹ค. ์ตœ๊ทผ ๋ช‡ ๋…„ ๋™์•ˆ ์ด๋Ÿฐ ๊ณต๊ฒฉ์ด ํ›จ์”ฌ ๋” ๋นˆ๋ฒˆํ•ด์กŒ์Šต๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด
์ถœ์ฒ˜ : https://cvedetails.com/

WAF์˜ ๊ด€๋ฆฌ ๊ทœ์น™์„ ๋ณ€๊ฒฝํ•˜๊ธฐ ์œ„ํ•œ ํ‘œ์ค€ ์ ˆ์ฐจ๋Š” ๊ธ€๋กœ๋ฒŒ ๋ฐฐํฌ์— ์•ž์„œ CI(์ง€์†์ ์ธ ํ†ตํ•ฉ) ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ง€๋‚œ ๋ชฉ์š”์ผ์— ์šฐ๋ฆฌ๋Š” ์ด๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๊ทœ์น™์„ ๋ฐœํ‘œํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜คํ›„ 13์‹œ 31๋ถ„์— ํ•œ ์—”์ง€๋‹ˆ์–ด๊ฐ€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋‹ด์€ ์Šน์ธ๋œ ํ’€ ๋ฆฌํ€˜์ŠคํŠธ๋ฅผ ์ œ์ถœํ–ˆ์Šต๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

13:37์— TeamCity๋Š” ๊ทœ์น™์„ ์ˆ˜์ง‘ํ•˜๊ณ  ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•œ ํ›„ ์Šน์ธ์„ ๋‚ด๋ ธ์Šต๋‹ˆ๋‹ค. WAF ํ…Œ์ŠคํŠธ ๋ชจ์Œ์€ WAF์˜ ํ•ต์‹ฌ ๊ธฐ๋Šฅ์„ ๊ฒ€์‚ฌํ•˜๋ฉฐ ๊ฐœ๋ณ„ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ๋‹ค์ˆ˜์˜ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ํ›„, ์šฐ๋ฆฌ๋Š” ์—„์ฒญ๋‚œ ์ˆ˜์˜ HTTP ์š”์ฒญ์„ ํ†ตํ•ด WAF ๊ทœ์น™์„ ํ…Œ์ŠคํŠธํ–ˆ์Šต๋‹ˆ๋‹ค. HTTP ์š”์ฒญ์€ WAF์—์„œ ์–ด๋–ค ์š”์ฒญ์„ ์ฐจ๋‹จํ•ด์•ผ ํ•˜๋Š”์ง€(๊ณต๊ฒฉ์„ ๊ฐ€๋กœ์ฑ„๊ธฐ ์œ„ํ•ด)์™€ ์–ด๋–ค ์š”์ฒญ์„ ํ—ˆ์šฉํ•ด์•ผ ํ•˜๋Š”์ง€(๋ชจ๋“  ๊ฒƒ์„ ์ฐจ๋‹จํ•˜๊ณ  ๊ฑฐ์ง“ ๊ธ์ •์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด) ํ™•์ธํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๊ณผ๋„ํ•œ CPU ์‚ฌ์šฉ๋ฅ ์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ๋Š” ํ•˜์ง€ ์•Š์•˜๊ณ , ์ด์ „ WAF ๋นŒ๋“œ์˜ ๋กœ๊ทธ๋ฅผ ์‚ดํŽด๋ณด๋ฉด ๊ทœ์น™์„ ์ ์šฉํ•œ ํ…Œ์ŠคํŠธ ์‹คํ–‰ ์‹œ๊ฐ„์ด ์ฆ๊ฐ€ํ•˜์ง€ ์•Š์•˜์œผ๋ฉฐ, ๋ฆฌ์†Œ์Šค๊ฐ€ ์ถฉ๋ถ„ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ด๋ผ๊ณ  ์˜์‹ฌํ•˜๊ธฐ ์–ด๋ ค์› ์Šต๋‹ˆ๋‹ค.

ํ…Œ์ŠคํŠธ๊ฐ€ ํ†ต๊ณผ๋˜์—ˆ๊ณ  TeamCity๋Š” ์˜คํ›„ 13์‹œ 42๋ถ„์— ์ž๋™์œผ๋กœ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋ฐฐํฌํ•˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

์ˆ˜์€

WAF ๊ทœ์น™์€ ์œ„ํ˜‘์„ ์ฆ‰์‹œ ํ•ด๊ฒฐํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์œผ๋ฏ€๋กœ Quicksilver์˜ ๋ถ„์‚ฐ ํ‚ค-๊ฐ’ ์ €์žฅ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ทœ์น™์„ ๋ฐฐํฌํ•˜๋ฉด ๋ช‡ ์ดˆ ๋งŒ์— ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ „์—ญ์œผ๋กœ ์ „ํŒŒ๋ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ณ ๊ฐ์€ ๋Œ€์‹œ๋ณด๋“œ๋‚˜ API๋ฅผ ํ†ตํ•ด ๊ตฌ์„ฑ์„ ๋ณ€๊ฒฝํ•  ๋•Œ ์ด ๊ธฐ์ˆ ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ด ๊ธฐ์ˆ  ๋•๋ถ„์— ๋‹น์‚ฌ๋Š” ๋ฒˆ๊ฐœ์ฒ˜๋Ÿผ ๋น ๋ฅธ ์†๋„๋กœ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์— ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ํ€ต์‹ค๋ฒ„์— ๋Œ€ํ•ด ๋ณ„๋กœ ์ด์•ผ๊ธฐํ•˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์‚ฌ์šฉํ•˜๊ณค ํ–ˆ์–ด์š” ๊ตํ†  ํƒ€์ด์ฟค ์ „ ์„ธ๊ณ„์— ๋ถ„์‚ฐ๋œ ํ‚ค-๊ฐ’ ์ €์žฅ์†Œ์˜€์ง€๋งŒ ์šด์˜์ƒ์˜ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— 180๊ฐœ ์ด์ƒ์˜ ๋„์‹œ์— ๋ณต์ œ๋œ ์ž์ฒด ์ €์žฅ์†Œ๋ฅผ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ Quicksilver๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํด๋ผ์ด์–ธํŠธ ๊ตฌ์„ฑ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ํ‘ธ์‹œํ•˜๊ณ , WAF ๊ทœ์น™์„ ์—…๋ฐ์ดํŠธํ•˜๊ณ , ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์ž‘์„ฑํ•œ JavaScript๋ฅผ Cloudflare Workers์— ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค.

๋Œ€์‹œ๋ณด๋“œ์—์„œ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๊ฑฐ๋‚˜ API๋ฅผ ํ˜ธ์ถœํ•˜๋Š” ๊ฒƒ๋ถ€ํ„ฐ ์ „ ์„ธ๊ณ„์ ์œผ๋กœ ๊ตฌ์„ฑ์„ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์€ ๋ถˆ๊ณผ ๋ช‡ ์ดˆ์ž…๋‹ˆ๋‹ค. ๊ณ ๊ฐ๋“ค์€ ์ด๋Ÿฌํ•œ ์„ค์ • ์†๋„๋ฅผ ์ข‹์•„ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  Workers๋Š” ๊ทธ๋“ค์—๊ฒŒ ๊ฑฐ์˜ ์ฆ‰๊ฐ์ ์ธ ๊ธ€๋กœ๋ฒŒ ์†Œํ”„ํŠธ์›จ์–ด ๋ฐฐํฌ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ํ‰๊ท ์ ์œผ๋กœ Quicksilver๋Š” ์ดˆ๋‹น ์•ฝ 350๊ฐœ์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ „ํŒŒํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ํ€ต์‹ค๋ฒ„๋Š” ๋งค์šฐ ๋น ๋ฅด๊ฒŒ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ํ‰๊ท ์ ์œผ๋กœ ์ „ ์„ธ๊ณ„ ๋ชจ๋“  ์ปดํ“จํ„ฐ์— ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์ „ํŒŒ๋˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” 99% ์‹œ๊ฐ„์€ 2,29์ดˆ์˜€์Šต๋‹ˆ๋‹ค. ์†๋„๋Š” ๋Œ€๊ฐœ ์ข‹์€ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฒฐ๊ตญ, ์–ด๋–ค ๊ธฐ๋Šฅ์„ ์ผœ๊ฑฐ๋‚˜ ์บ์‹œ๋ฅผ ์ง€์šฐ๋ฉด ๊ทธ ์ผ์€ ๊ฑฐ์˜ ์ฆ‰์‹œ ๋ชจ๋“  ๊ณณ์—์„œ ์ผ์–ด๋‚ฉ๋‹ˆ๋‹ค. Cloudflare Workers๋ฅผ ํ†ตํ•œ ์ฝ”๋“œ ์ „์†ก์€ ๋™์ผํ•œ ์†๋„๋กœ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค. Cloudflare๋Š” ๊ณ ๊ฐ์—๊ฒŒ ํ•„์š”ํ•  ๋•Œ ๋น ๋ฅธ ์—…๋ฐ์ดํŠธ๋ฅผ ์ œ๊ณตํ•  ๊ฒƒ์„ ์•ฝ์†ํ•ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ด๋ฒˆ ๊ฒฝ์šฐ, ์†๋„๋Š” ์šฐ๋ฆฌ์—๊ฒŒ ์ž”์ธํ•œ ์žฅ๋‚œ์„ ์ณค๊ณ , ๋ช‡ ์ดˆ ๋งŒ์— ๋ชจ๋“  ๊ณณ์˜ ๊ทœ์น™์ด ๋ฐ”๋€Œ์—ˆ์Šต๋‹ˆ๋‹ค. WAF ์ฝ”๋“œ๊ฐ€ Lua๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๊ฒƒ์„ ๋ˆˆ์—ฌ๊ฒจ๋ณด์…จ์„ ๊ฒ๋‹ˆ๋‹ค. Cloudflare๋Š” ํ”„๋กœ๋•์…˜์—์„œ Lua๋ฅผ ๊ด‘๋ฒ”์œ„ํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๊ณ  ์„ธ๋ถ€ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. WAF์˜ Lua ์šฐ๋ฆฌ ์ด๋ฏธ ๋…ผ์˜. Lua WAF๋Š” ๋‹ค์Œ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. PCRE ๋‚ด๋ถ€์—์„œ ์—ญ์ถ”์ ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ผ์น˜์‹œํ‚ต๋‹ˆ๋‹ค. ํ†ต์ œ ๋ถˆ๋Šฅ์˜ ํ‘œํ˜„์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ์—†์Šต๋‹ˆ๋‹ค. ์•„๋ž˜์—์„œ ์ด ๋ฌธ์ œ์™€ ์ด์— ๋Œ€ํ•œ ์šฐ๋ฆฌ์˜ ๋Œ€์‘ ๋ฐฉ์•ˆ์— ๋Œ€ํ•ด ๋” ์ž์„ธํžˆ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

๊ทœ์น™์ด ๋ฐฐํฌ๋˜๊ธฐ ์ „์—๋Š” ๋ชจ๋“  ๊ฒƒ์ด ์ˆœ์กฐ๋กญ๊ฒŒ ์ง„ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ’€ ๋ฆฌํ€˜์ŠคํŠธ๊ฐ€ ์ƒ์„ฑ๋˜์–ด ์Šน์ธ๋˜์—ˆ๊ณ , CI/CD ํŒŒ์ดํ”„๋ผ์ธ์ด ์ฝ”๋“œ๋ฅผ ๋นŒ๋“œํ•˜๊ณ  ํ…Œ์ŠคํŠธํ–ˆ์œผ๋ฉฐ, ๋ฐฐํฌ ๋ฐ ๋กค๋ฐฑ์„ ๊ทœ์ •ํ•˜๋Š” SOP์— ๋”ฐ๋ผ ๋ณ€๊ฒฝ ์š”์ฒญ์ด ์ œ์ถœ๋˜์—ˆ๊ณ , ๋ฐฐํฌ๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด
Cloudflare WAF ๋ฐฐํฌ ํ”„๋กœ์„ธ์Šค

๋ฌด์—‡์ด ์ž˜๋ชป ๋˜์—ˆ์Šต๋‹ˆ๊นŒ?
์ œ๊ฐ€ ๋ง์”€๋“œ๋ฆฐ ๊ฒƒ์ฒ˜๋Ÿผ, ์šฐ๋ฆฌ๋Š” ๋งค์ฃผ ์ˆ˜์‹ญ ๊ฐœ์˜ ์ƒˆ๋กœ์šด WAF ๊ทœ์น™์„ ๋ฐฐํฌํ•˜๊ณ  ์ด๋Ÿฌํ•œ ๋ฐฐํฌ์˜ ๋ถ€์ •์ ์ธ ๊ฒฐ๊ณผ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด ๋งŽ์€ ๋ณดํ˜ธ ์‹œ์Šคํ…œ์„ ๊ฐ–์ถ”๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฌด์—‡์ธ๊ฐ€ ์ž˜๋ชป๋  ๋•Œ๋Š” ๋ณดํ†ต ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ƒํ™ฉ์ด ๋ณตํ•ฉ์ ์œผ๋กœ ์–ฝํ˜€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๋‹จ ํ•˜๋‚˜์˜ ์ด์œ ๋ฅผ ์ฐพ์œผ๋ฉด ํ™•์‹คํžˆ ์•ˆ์‹ฌ์ด ๋˜์ง€๋งŒ, ํ•ญ์ƒ ํ˜„์‹ค๊ณผ ์ผ์น˜ํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹™๋‹ˆ๋‹ค. HTTP/HTTPS ์„œ๋น„์Šค๊ฐ€ ์‹คํŒจํ•˜๋Š” ์ด์œ ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. ์—”์ง€๋‹ˆ์–ด๊ฐ€ ๊ณผ๋„ํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ดˆ๋ž˜ํ•  ์ˆ˜ ์žˆ๋Š” ์ •๊ทœ ํ‘œํ˜„์‹์„ ์ž‘์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค. ํ›„ํ‡ดํ•˜๋‹ค.
  2. ๋ช‡ ์ฃผ ์ „ WAF ๋ฆฌํŒฉํ† ๋ง ์ค‘์— ์ •๊ทœ ํ‘œํ˜„์‹์ด CPU๋ฅผ ๋„ˆ๋ฌด ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์‹ค์ˆ˜๋กœ ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋ฆฌํŒฉํ† ๋ง์€ WAF๊ฐ€ ๋ฆฌ์†Œ์Šค๋ฅผ ๋œ ์†Œ๋ชจํ•˜๋„๋ก ํ•˜๊ธฐ ์œ„ํ•ด ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค.
  3. ์ •๊ทœ ํ‘œํ˜„์‹ ์—”์ง„์€ ๋ณต์žก์„ฑ์„ ๋ณด์žฅํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  4. ํ…Œ์ŠคํŠธ ๋ชจ์Œ์€ ๊ณผ๋„ํ•œ CPU ์‚ฌ์šฉ๋Ÿ‰์„ ๊ฐ์ง€ํ•˜์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค.
  5. SOP ์ ˆ์ฐจ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์—ฌ๋Ÿฌ ๋‹จ๊ณ„์˜ ๊ณผ์ • ์—†์ด ๊ธด๊ธ‰ํ•˜์ง€ ์•Š์€ ๊ทœ์น™ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ „ ์„ธ๊ณ„์— ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  6. ๋กค๋ฐฑ ๊ณ„ํš์„ ์‹คํ–‰ํ•˜๋ ค๋ฉด ์ „์ฒด WAF ๋นŒ๋“œ๋ฅผ ๋‘ ๋ฒˆ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋ฏ€๋กœ ์‹œ๊ฐ„์ด ๋งŽ์ด ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.
  7. ์„ธ๊ณ„์  ๊ตํ†ต ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ฒซ ๋ฒˆ์งธ ๊ฒฝ๊ณ ๋Š” ๋„ˆ๋ฌด ๋Šฆ๊ฒŒ ๋‚˜์™”์Šต๋‹ˆ๋‹ค.
  8. ์ƒํƒœ ํŽ˜์ด์ง€ ์—…๋ฐ์ดํŠธ๊ฐ€ ๋А๋ ธ์Šต๋‹ˆ๋‹ค.
  9. ๊ฒฐํ•จ์œผ๋กœ ์ธํ•ด ์‹œ์Šคํ…œ์— ์ ‘๊ทผํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์œผ๋ฉฐ ํ•ด๊ฒฐ ์ ˆ์ฐจ๊ฐ€ ์ œ๋Œ€๋กœ ๊ฐœ๋ฐœ๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค.
  10. ๋ณด์•ˆ์ƒ์˜ ์ด์œ ๋กœ SRE ์—”์ง€๋‹ˆ์–ด์˜ ์ž๊ฒฉ ์ฆ๋ช…์ด ๋งŒ๋ฃŒ๋˜์–ด ์ผ๋ถ€ ์‹œ์Šคํ…œ์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  11. ์ €ํฌ ๊ณ ๊ฐ์€ Cloudflare ์ง€์—ญ์„ ๊ฑฐ์น˜๊ธฐ ๋•Œ๋ฌธ์— Cloudflare ๋Œ€์‹œ๋ณด๋“œ๋‚˜ API์— ์•ก์„ธ์Šคํ•  ์ˆ˜ ์—†์—ˆ์Šต๋‹ˆ๋‹ค.

์ง€๋‚œ ๋ชฉ์š”์ผ ์ดํ›„๋กœ ๋ฌด์—‡์ด ๋ฐ”๋€Œ์—ˆ๋‚˜์š”?

์ฒซ์งธ, WAF ๋ฆด๋ฆฌ์Šค ์ž‘์—…์„ ๋ชจ๋‘ ์™„์ „ํžˆ ์ค‘๋‹จํ–ˆ์œผ๋ฉฐ ๋‹ค์Œ ์ž‘์—…์„ ์ง„ํ–‰ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ๊ณผ๋„ํ•œ ํ”„๋กœ์„ธ์„œ ๋ฆฌ์†Œ์Šค ์†Œ๋น„๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ์ œ๊ฑฐํ–ˆ๋˜ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์„ ๋‹ค์‹œ ๋„์ž…ํ•ฉ๋‹ˆ๋‹ค. (์ค€๋น„๊ฐ€ ๋œ)
  2. WAF์˜ ๊ด€๋ฆฌ ๊ทœ์น™์— ์žˆ๋Š” 3868๊ฐœ ๊ทœ์น™์„ ๋ชจ๋‘ ์ˆ˜๋™์œผ๋กœ ๊ฒ€ํ† ํ•˜์—ฌ ๊ณผ๋„ํ•œ ์—ญ์ถ”์ ์˜ ๋‹ค๋ฅธ ์ž ์žฌ์  ์‚ฌ๋ก€๋ฅผ ์ฐพ์•„ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค. (ํ™•์ธ ์™„๋ฃŒ)
  3. ์šฐ๋ฆฌ๋Š” ํ…Œ์ŠคํŠธ ๋ชจ์Œ์˜ ๋ชจ๋“  ๊ทœ์น™์— ๋Œ€ํ•ด ์„ฑ๋Šฅ ํ”„๋กœํŒŒ์ผ๋ง์„ ํฌํ•จํ–ˆ์Šต๋‹ˆ๋‹ค. (์˜ˆ์ •: 19์›” XNUMX์ผ)
  4. ์ •๊ทœ ํ‘œํ˜„์‹ ์—”์ง„์œผ๋กœ ์ด๋™ re2 ๋˜๋Š” ๋…น - ๋‘˜ ๋‹ค ์‹คํ–‰ ํ™˜๊ฒฝ์—์„œ ๋ณด์žฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. (์˜ˆ์ƒ : 31์›” XNUMX์ผ)
  5. Cloudflare์˜ ๋‹ค๋ฅธ ์†Œํ”„ํŠธ์›จ์–ด์ฒ˜๋Ÿผ ๋‹จ๊ณ„์ ์œผ๋กœ ๊ทœ์น™์„ ๋ฐฐํฌํ•˜๊ธฐ ์œ„ํ•ด SOP๋ฅผ ๋‹ค์‹œ ์ž‘์„ฑ ์ค‘์ด์ง€๋งŒ, ๊ณต๊ฒฉ์ด ์ด๋ฏธ ์‹œ์ž‘๋œ ๊ฒฝ์šฐ์—๋Š” ๋น„์ƒ ๊ธ€๋กœ๋ฒŒ ๋ฐฐํฌ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์—ฌ์ „ํžˆ ๊ฐ–์ถ”๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  6. ์šฐ๋ฆฌ๋Š” Cloudflare ์ง€์—ญ์—์„œ Cloudflare ๋Œ€์‹œ๋ณด๋“œ์™€ API๋ฅผ ๊ธด๊ธ‰ํ•˜๊ฒŒ ์ถœ์‹œํ•  ์ˆ˜ ์žˆ๋Š” ์—ญ๋Ÿ‰์„ ๊ฐœ๋ฐœํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  7. ํŽ˜์ด์ง€ ์ƒˆ๋กœ ๊ณ ์นจ ์ž๋™ํ™” ํด๋ผ์šฐ๋“œํ”Œ๋ ˆ์–ด ์ƒํƒœ.

์žฅ๊ธฐ์ ์œผ๋กœ ์ €ํฌ๋Š” ๋ช‡ ๋…„ ์ „์— ์ œ๊ฐ€ ์ž‘์„ฑํ•œ Lua WAF์—์„œ ๋ฒ—์–ด๋‚˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. WAF๋ฅผ ๋‹ค์Œ์œผ๋กœ ์ด๋™ ์ค‘์ž…๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ๋ฐฉํ™”๋ฒฝ ์‹œ์Šคํ…œ. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด WAF๊ฐ€ ๋” ๋นจ๋ผ์ง€๊ณ  ๋ณดํ˜ธ ์ˆ˜์ค€๋„ ํ•œ ๋‹จ๊ณ„ ๋†’์•„์ง‘๋‹ˆ๋‹ค.

๊ฒฐ๋ก 

์ด๋ฒˆ ์„œ๋น„์Šค ์ค‘๋‹จ์œผ๋กœ ์ธํ•ด ์ €ํฌ์™€ ์ €ํฌ ๊ณ ๊ฐ์—๊ฒŒ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ €ํฌ๋Š” ์ƒํ™ฉ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์‹ ์†ํžˆ ๋Œ€์‘ํ–ˆ์œผ๋ฉฐ, ํ˜„์žฌ๋Š” ์ค‘๋‹จ์„ ์ผ์œผํ‚จ ํ”„๋กœ์„ธ์Šค์˜ ๊ฒฐํ•จ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ƒˆ๋กœ์šด ๊ธฐ์ˆ ๋กœ ์ด์ „ํ•˜๋ฉด์„œ ์ •๊ทœ ํ‘œํ˜„์‹๊ณผ ๊ด€๋ จํ•˜์—ฌ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ํ–ฅํ›„ ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋”์šฑ ์‹ฌ์ธต์ ์œผ๋กœ ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ ์„œ๋น„์Šค ์ค‘๋‹จ์— ๋Œ€ํ•ด ์ง„์‹ฌ์œผ๋กœ ์‚ฌ๊ณผ๋“œ๋ฆฌ๋ฉฐ, ๊ณ ๊ฐ ์—ฌ๋Ÿฌ๋ถ„๊ป˜ ์‚ฌ๊ณผ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ณ€ํ™”๋ฅผ ํ†ตํ•ด ์ด๋Ÿฐ ์ผ์ด ๋‹ค์‹œ ์ผ์–ด๋‚˜์ง€ ์•Š๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค.

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜. ์ •๊ทœ ํ‘œํ˜„์‹ ๋ฐฑํŠธ๋ž˜ํ‚น

๋‹ค์Œ ํ‘œํ˜„์„ ์ดํ•ดํ•˜๋ ค๋ฉด:

(?:(?:"|'|]|}||d
(?:nan|infinity|true|false|null|undefined|symbol|math)|`|-
|+)+[)]*;?((?:s|-|~|!|{}||||+)*.*(?:.*=.*)))

CPU ๋ฆฌ์†Œ์Šค๋ฅผ ๋ชจ๋‘ ์†Œ๋ชจํ•˜๋ฏ€๋กœ ํ‘œ์ค€ ์ •๊ทœ ํ‘œํ˜„์‹ ์—”์ง„์˜ ์ž‘๋™ ๋ฐฉ์‹์— ๋Œ€ํ•ด ์กฐ๊ธˆ ์•Œ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ ๋ฌธ์ œ๋Š” ํŒจํ„ด์— ์žˆ์Šต๋‹ˆ๋‹ค. .*(?:.*=.*). (?: ๊ทธ๋ฆฌ๊ณ  ํ•ด๋‹น ) โ€” ์ด๊ฒƒ์€ ์บก์ฒ˜๋ง ๊ทธ๋ฃน์ด ์•„๋‹™๋‹ˆ๋‹ค. (์ฆ‰, ๊ด„ํ˜ธ ์•ˆ์˜ ํ‘œํ˜„์‹์€ ๋‹จ์ผ ํ‘œํ˜„์‹์œผ๋กœ ๊ทธ๋ฃนํ™”๋ฉ๋‹ˆ๋‹ค.)

๊ณผ๋„ํ•œ CPU ์†Œ๋ชจ์˜ ๋งฅ๋ฝ์—์„œ ์ด ํŒจํ„ด์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ค๋ช…๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. .*.*=.*. ์ด ํ˜•ํƒœ์—์„œ๋Š” ํŒจํ„ด์ด ์ง€๋‚˜์น˜๊ฒŒ ๋ณต์žกํ•ด ๋ณด์ธ๋‹ค. ํ•˜์ง€๋งŒ ๋” ์ค‘์š”ํ•œ ์ ์€, ์‹ค์ œ ์„ธ๊ณ„์—์„œ๋Š” WAF ๊ทœ์น™์˜ ๋ณต์žกํ•œ ํ‘œํ˜„์‹๊ณผ ๊ฐ™์ด ์—”์ง„์— ์กฐ๊ฐ์„ ๋งค์นญํ•œ ๋‹ค์Œ ๋‹ค๋ฅธ ์กฐ๊ฐ์„ ๋งค์นญํ•˜๋„๋ก ์š”์ฒญํ•˜๋Š” ํ‘œํ˜„์‹์€ ์น˜๋ช…์ ์ธ ์—ญ์ถ”์ ์„ ์ดˆ๋ž˜ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ ์ด์œ ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

์ •๊ทœ ํ‘œํ˜„์‹์—์„œ . ํ•œ ๋ฌธ์ž๋งŒ ์ผ์น˜ํ•ด์•ผ ํ•œ๋‹ค๋Š” ์˜๋ฏธ์ž…๋‹ˆ๋‹ค. .* โ€” ๊ฐ€๋Šฅํ•œ ํ•œ ๋งŽ์€ ๋ฌธ์ž๋ฅผ ์บก์ฒ˜ํ•˜์—ฌ 0๊ฐœ ์ด์ƒ์˜ ๋ฌธ์ž๋ฅผ ํƒ์š•์ ์œผ๋กœ ์ผ์น˜์‹œํ‚ต๋‹ˆ๋‹ค. .*.*=.* 0๊ฐœ ์ด์ƒ์˜ ๋ฌธ์ž์™€ ์ผ์น˜ํ•˜๊ณ , 0๊ฐœ ์ด์ƒ์˜ ๋ฌธ์ž์™€ ์ผ์น˜ํ•˜๊ณ , ๋ฆฌํ„ฐ๋Ÿด = ๋ฌธ์ž๋ฅผ ์ฐพ๊ณ , 0๊ฐœ ์ด์ƒ์˜ ๋ฌธ์ž์™€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค.

ํ…Œ์ŠคํŠธ ๋ฌธ์ž์—ด์„ ๊ฐ€์ ธ์™€ ๋ณด์ž x=x. ์ด๋Š” ํ‘œํ˜„๊ณผ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค .*.*=.*. .*.* ๋“ฑํ˜ธ๊ฐ€ ์ฒซ ๋ฒˆ์งธ์— ๋Œ€์‘ํ•˜๊ธฐ ์ „์— x (๊ทธ๋ฃน ์ค‘ ํ•˜๋‚˜ .* ์ผ์น˜ x, ๋‘ ๋ฒˆ์งธ๋Š” 0๊ฐœ์˜ ๋ฌธ์ž). .* after = ๋งˆ์ง€๋ง‰๊ณผ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค x.

์ด ๋น„๊ต์—๋Š” 23๋‹จ๊ณ„๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ๊ทธ๋ฃน .* ะฒ .*.*=.* "ํƒ์š•์Šค๋Ÿฝ๊ฒŒ" ํ–‰๋™ํ•˜๊ณ  ์ „์ฒด ์ค„๊ณผ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. x=x. ์—”์ง„์ด ๋‹ค์Œ ๊ทธ๋ฃน์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. .*. ๋” ์ด์ƒ ์ผ์น˜์‹œํ‚ฌ ๋ฌธ์ž๊ฐ€ ์—†์œผ๋ฏ€๋กœ ๋‘ ๋ฒˆ์งธ ๊ทธ๋ฃน .* 0๊ฐœ์˜ ๋ฌธ์ž์™€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค(ํ—ˆ์šฉ๋ฉ๋‹ˆ๋‹ค). ๊ทธ๋Ÿฐ ๋‹ค์Œ ์—”์ง„์ด ํ‘œ์ง€ํŒ์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. =. ๋” ์ด์ƒ ์‹ฌ๋ณผ์ด ์—†์Šต๋‹ˆ๋‹ค(์ฒซ ๋ฒˆ์งธ ๊ทธ๋ฃน) .* ํ‘œํ˜„ ์ „์ฒด๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค x=x), ์ผ์น˜๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์—ฌ๊ธฐ์„œ ์ •๊ทœ ํ‘œํ˜„์‹ ์—”์ง„์€ ์ฒ˜์Œ์œผ๋กœ ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค. ๊ทธ๋Š” ์ฒซ ๋ฒˆ์งธ ๊ทธ๋ฃน์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. .* ๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒƒ์„ ๋น„๊ตํ•œ๋‹ค ั x= (๋Œ€์‹  x=x), ๊ทธ๋ฆฌ๊ณ  ๋‘ ๋ฒˆ์งธ ๊ทธ๋ฃน์„ ๋งก์Šต๋‹ˆ๋‹ค. .*. ๋‘ ๋ฒˆ์งธ ๊ทธ๋ฃน .* ๋‘ ๋ฒˆ์งธ์™€ ๋น„๊ต๋œ๋‹ค x, ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ๋Š” ๋” ์ด์ƒ ์ƒ์ง•์„ ๋‚จ๊ธฐ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์—”์ง„์ด ๋‹ค์‹œ ์†๋„์— ๋„๋‹ฌํ•˜๋ฉด = ะฒ .*.*=.*, ์•„๋ฌด๊ฒƒ๋„ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ๋Š” ๋‹ค์‹œ ํ›„ํ‡ดํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ์—๋Š” ๊ทธ๋ฃน .* ์•„์ง๋„ ๋งž๋‹ค x=, ํ•˜์ง€๋งŒ ๋‘ ๋ฒˆ์งธ ๊ทธ๋ฃน .* ๋” ์ด์ƒ์€ ์—†์–ด x, ๊ทธ๋ฆฌ๊ณ  0๊ฐœ์˜ ๋ฌธ์ž. ์—”์ง„์ด ๋ฌธ์ž ๊ทธ๋Œ€๋กœ์˜ ๋ฌธ์ž๋ฅผ ์ฐพ์œผ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. = ํŒจํ„ด์—์„œ .*.*=.*, ํ•˜์ง€๋งŒ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. (๊ฒฐ๊ตญ ์ฒซ ๋ฒˆ์งธ ๊ทธ๋ฃน์€ ์ด๋ฏธ ๊ทธ๊ฒƒ์„ ๊ฐ€์ ธ๊ฐ”์Šต๋‹ˆ๋‹ค. .*). ๊ทธ๋ฆฌ๊ณ  ๊ทธ๋Š” ๋‹ค์‹œ ํ›„ํ‡ดํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ์—๋Š” ์ฒซ ๋ฒˆ์งธ ๊ทธ๋ฃน .* ์ฒซ ๋ฒˆ์งธ x๋งŒ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋‘ ๋ฒˆ์งธ ๊ทธ๋ฃน์€ .* "ํƒ์š•์Šค๋Ÿฝ๊ฒŒ" ํฌ์ฐฉํ•˜๋‹ค =x. ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚ ์ง€ ์ด๋ฏธ ์ถ”์ธกํ•˜์…จ๋‚˜์š”? ์—”์ง„์€ ๋ฌธ์ž ๊ทธ๋Œ€๋กœ์˜ ์˜๋ฏธ์™€ ์ผ์น˜ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. =, ์‹คํŒจํ•˜๊ณ  ๋˜ ๋‹ค์‹œ ํ›„ํ‡ดํ•ฉ๋‹ˆ๋‹ค.

์˜ ์ฒซ ๋ฒˆ์งธ ๊ทธ๋ฃน .* ์•„์ง๋„ ์ฒซ ๋ฒˆ์งธ์™€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค x. ๋‘๋ฒˆ์งธ .* ๋งŒ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค =. ๋ฌผ๋ก  ์—”์ง„์€ ๋ฌธ์ž ๊ทธ๋Œ€๋กœ์˜ ์˜๋ฏธ์™€ ์ผ์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. =, ๋‘ ๋ฒˆ์งธ ๊ทธ๋ฃน์€ ์ด๋ฏธ ๊ทธ๊ฒƒ์„ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. .*. ๊ทธ๋ฆฌ๊ณ  ๋˜ ํ›„ํ‡ดํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ๋Š” ์„ธ ๋ฌธ์ž๋กœ ๊ตฌ์„ฑ๋œ ๋ฌธ์ž์—ด์„ ์ผ์น˜์‹œํ‚ค๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค!

๊ทธ ๊ฒฐ๊ณผ, ์ฒซ ๋ฒˆ์งธ ๊ทธ๋ฃน์€ .* ์ฒซ ๋ฒˆ์งธ์™€๋งŒ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค x, ๋‘๋ฒˆ์งธ .* โ€” ๋ฌธ์ž๊ฐ€ 0๊ฐœ์ด๊ณ  ์—”์ง„์ด ๋งˆ์นจ๋‚ด ๋ฆฌํ„ฐ๋Ÿด๊ณผ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. = ํ‘œํ˜„์—์„œ ั = ์ค„์„ ์„œ์„œ. ๋‹ค์Œ์€ ๋งˆ์ง€๋ง‰ ๊ทธ๋ฃน์ž…๋‹ˆ๋‹ค .* ๋งˆ์ง€๋ง‰ ๊ฒƒ๊ณผ ๋น„๊ต๋œ๋‹ค x.

23๋‹จ๊ณ„๋งŒ ๊ฐ€๋Šฅ x=x. Perl ์‚ฌ์šฉ์— ๋Œ€ํ•œ ์งง์€ ๋น„๋””์˜ค๋ฅผ ์‹œ์ฒญํ•˜์„ธ์š” ์ •๊ทœ ํ‘œํ˜„์‹::๋””๋ฒ„๊ฑฐ์ด๋Š” ๋‹จ๊ณ„์™€ ํ›„ํ‡ด๊ฐ€ ์–ด๋–ป๊ฒŒ ๋ฐœ์ƒํ•˜๋Š”์ง€ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

์ด๋ฏธ ๋งŽ์€ ์ž‘์—…์ด์ง€๋งŒ ๋Œ€์‹  x=x ์šฐ๋ฆฌ๋Š” ๊ฐ€์งˆ ๊ฒƒ์ด๋‹ค x=xx? 33๊ฑธ์Œ์ด์—์š”. ๊ทธ๋ฆฌ๊ณ  ๋งŒ์•ฝ x=xxx? 45. ์ข…์†์„ฑ์€ ์„ ํ˜•์ ์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜ํ”„๋Š” ๋‹ค์Œ์˜ ๋น„๊ต๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. x=x ์— x=xxxxxxxxxxxxxxxxxxxx (20 x ํ›„ =). ๋งŒ์•ฝ ์šฐ๋ฆฌ๊ฐ€ 20 x๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๋ฉด =์—”์ง„์€ 555๋‹จ๊ณ„๋กœ ๋งค์นญ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค! (๊ทธ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์šฐ๋ฆฌ๊ฐ€ ์กŒ๋‹ค๋ฉด x= ๊ทธ๋ฆฌ๊ณ  ๊ทธ ๋ผ์ธ์€ ๋‹จ 20๊ฐœ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค x์—”์ง„์€ ์ผ์น˜ํ•˜๋Š” ํ•ญ๋ชฉ์ด ์—†์Œ์„ ํŒŒ์•…ํ•˜๊ธฐ ์œ„ํ•ด 4067๋‹จ๊ณ„๋ฅผ ๊ฑฐ์นฉ๋‹ˆ๋‹ค).

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

์ด ๋น„๋””์˜ค๋Š” ๋น„๊ต๋ฅผ ์œ„ํ•ด ๋ชจ๋“  ๋ฐฑํŠธ๋ž˜ํ‚น์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. x=xxxxxxxxxxxxxxxxxxxx:

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

๋ฌธ์ œ๋Š” ๋ฌธ์ž์—ด ํฌ๊ธฐ๊ฐ€ ์ปค์งˆ์ˆ˜๋ก ๋งค์นญ ์‹œ๊ฐ„์ด ์ดˆ์„ ํ˜•์ ์œผ๋กœ ์ฆ๊ฐ€ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ •๊ทœ ํ‘œํ˜„์‹์„ ์กฐ๊ธˆ๋งŒ ๋ฐ”๊พธ๋ฉด ์ƒํ™ฉ์ด ๋” ๋‚˜๋น ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด ๋ณด์ž .*.*=.*; (์ฆ‰, ํŒจํ„ด์˜ ๋์— ์„ธ๋ฏธ์ฝœ๋ก ์ด ๋ฌธ์ž ๊ทธ๋Œ€๋กœ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค). ์˜ˆ๋ฅผ ๋“ค์–ด, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ‘œํ˜„์‹๊ณผ ์ผ์น˜ํ•˜๋ ค๋ฉด foo=bar;.

์—ฌ๊ธฐ์„œ ํ›„ํ‡ดํ•˜๋ฉด ์ •๋ง ์žฌ์•™์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋น„๊ต๋ฅผ ์œ„ํ•ด x=x 90๊ฑธ์Œ ๋Œ€์‹  23๊ฑธ์Œ์ด ๊ฑธ๋ฆด ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์ˆซ์ž๋Š” ๋น ๋ฅด๊ฒŒ ๋Š˜์–ด๋‚˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋น„๊ตํ•˜๋‹ค x= ๋ฐ 20 x, 5353๊ฐœ์˜ ๋‹จ๊ณ„๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜ํ”„๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ถ•์˜ ๊ฐ’์„ ์‚ดํŽด๋ณด์„ธ์š” Y ์ด์ „ ๊ทธ๋ž˜ํ”„์™€ ๋น„๊ตํ•ด์„œ.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

๊ด€์‹ฌ์ด ์žˆ์œผ์‹œ๋‹ค๋ฉด ์‹คํŒจํ•œ ๋งค์นญ์˜ 5353๋‹จ๊ณ„๋ฅผ ๋ชจ๋‘ ํ™•์ธํ•ด๋ณด์„ธ์š”. x=xxxxxxxxxxxxxxxxxxxx ะธ .*.*=.*;

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

ํƒ์š•์  ๋งค์นญ๋ณด๋‹ค๋Š” ๊ฒŒ์œผ๋ฅธ ๋งค์นญ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ฐฑํŠธ๋ž˜ํ‚น ๋ฒ”์œ„๋ฅผ ์ œ์–ดํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์›๋ž˜ ํ‘œํ˜„์„ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฐ”๊พธ๋ฉด .*?.*?=.*?, ๋น„๊ต๋ฅผ ์œ„ํ•ด x=x 11๊ฑธ์Œ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค(23๊ฑธ์Œ์ด ์•„๋‹™๋‹ˆ๋‹ค). ์— ๊ด€ํ•ด์„œ๋Š” x=xxxxxxxxxxxxxxxxxxxx. ๊ทธ๊ฒƒ์€ ๋ชจ๋‘ ๋•Œ๋ฌธ์— ? ํ›„ .* ์—”์ง„์— ์ตœ์†Œํ•œ์˜ ๋ฌธ์ž ์ˆ˜๋ฅผ ์ผ์น˜์‹œํ‚จ ํ›„์— ๋‹ค์Œ ๋‹จ๊ณ„๋กœ ๋„˜์–ด๊ฐ€๋ผ๊ณ  ์ง€์‹œํ•ฉ๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ "๊ฒŒ์œผ๋ฅธ" ๋น„๊ต๋กœ๋Š” ์—ญ์ถ”์  ๋ฌธ์ œ๊ฐ€ ์™„์ „ํžˆ ํ•ด๊ฒฐ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๊ฐ€ ์žฌ์•™์ ์ธ ์˜ˆ๋ฅผ ๋Œ€์ฒดํ•œ๋‹ค๋ฉด .*.*=.*; ์— .*?.*?=.*?;์‹คํ–‰ ์‹œ๊ฐ„์€ ๋™์ผํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. x=x ์—ฌ์ „ํžˆ 555๋‹จ๊ณ„๊ฐ€ ํ•„์š”ํ•˜์ง€๋งŒ x= ๋ฐ 20 x - 5353.

(ํŒจํ„ด์„ ๋” ๊ตฌ์ฒด์ ์œผ๋กœ ์™„์ „ํžˆ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ ์™ธ์—) ํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์ผํ•œ ์ผ์€ ๋ฐฑํŠธ๋ž˜ํ‚น ๋ฉ”์ปค๋‹ˆ์ฆ˜์„ ๊ฐ–์ถ˜ ์ •๊ทœ ํ‘œํ˜„์‹ ์—”์ง„์„ ๋ฒ„๋ฆฌ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ์•ž์œผ๋กœ ๋ช‡ ์ฃผ ๋™์•ˆ ์ด๋Ÿฐ ์ผ์„ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ํ•ด๊ฒฐ์ฑ…์€ 1968๋…„ Kent Thompson์ด ๊ธฐ์‚ฌ๋ฅผ ์“ด ์ดํ›„๋กœ ์•Œ๋ ค์ ธ ์™”์Šต๋‹ˆ๋‹ค. ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ธฐ์ˆ : ์ •๊ทœ ํ‘œํ˜„์‹ ๊ฒ€์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ("ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ๋ฒ•: ์ •๊ทœ ํ‘œํ˜„์‹ ๊ฒ€์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜"). ์ด ๋…ผ๋ฌธ์—์„œ๋Š” ์ •๊ทœ ํ‘œํ˜„์‹์„ ๋น„๊ฒฐ์ •์  ์œ ํ•œ ์˜คํ† ๋งˆํƒ€๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜๊ณผ, ๋น„๊ฒฐ์ •์  ์œ ํ•œ ์˜คํ† ๋งˆํƒ€์—์„œ ์ƒํƒœ๊ฐ€ ๋ณ€๊ฒฝ๋œ ํ›„, ์ผ์น˜ํ•˜๋Š” ๋ฌธ์ž์—ด์— ๋”ฐ๋ผ ์‹คํ–‰ ์‹œ๊ฐ„์ด ์„ ํ˜•์ ์œผ๋กœ ๋‹ฌ๋ผ์ง€๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ๋ฒ•
์ •๊ทœ ํ‘œํ˜„์‹ ๊ฒ€์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜
์ผ„ ํ†ฐ์Šจ

๋ฒจ ์ „ํ™” ์—ฐ๊ตฌ์†Œ(Bell Telephone Laboratories, Inc.), ๋‰ด์ €์ง€ ์ฃผ ๋จธ๋ ˆ์ดํž

์ด ๋ฌธ์„œ์—์„œ๋Š” ํ…์ŠคํŠธ์—์„œ ํŠน์ • ๋ฌธ์ž์—ด์„ ์ฐพ๋Š” ๋ฐฉ๋ฒ•์„ ์„ค๋ช…ํ•˜๊ณ  ์ปดํŒŒ์ผ๋Ÿฌ ํ˜•ํƒœ๋กœ ์ด ๋ฐฉ๋ฒ•์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๋…ผ์˜ํ•ฉ๋‹ˆ๋‹ค. ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ์ •๊ทœ ํ‘œํ˜„์‹์„ ์†Œ์Šค ์ฝ”๋“œ๋กœ ๋ฐ›์•„์„œ IBM 7094 ํ”„๋กœ๊ทธ๋žจ์„ ๊ฐœ์ฒด ์ฝ”๋“œ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ์ฒด ํ”„๋กœ๊ทธ๋žจ์€ ๊ฒ€์ƒ‰ํ•  ํ…์ŠคํŠธ ํ˜•ํƒœ์˜ ์ž…๋ ฅ์„ ๋ฐ›๊ณ , ํ…์ŠคํŠธ ๋ฌธ์ž์—ด์ด ์ฃผ์–ด์ง„ ์ •๊ทœ ํ‘œํ˜„์‹๊ณผ ์ผ์น˜ํ•  ๋•Œ๋งˆ๋‹ค ์‹ ํ˜ธ๋ฅผ ๋‚ด๋ณด๋ƒ…๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์—์„œ๋Š” ์˜ˆ์ œ, ๋ฌธ์ œ, ํ•ด๊ฒฐ์ฑ…์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์—ฐ์‚ฐ
์ด์ „ ๊ฒ€์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ถ€๋ถ„์ ์œผ๋กœ ์„ฑ๊ณต์ ์ธ ๊ฒ€์ƒ‰์„ ์ˆ˜ํ–‰ํ•ด๋„ ๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ค์ง€ ์•Š์œผ๋ฉด ๋’ค๋กœ ๋˜๋Œ์•„๊ฐ€๋Š” ๊ฒฐ๊ณผ๋ฅผ ๋‚ณ์•˜์Šต๋‹ˆ๋‹ค.

์ปดํŒŒ์ผ ๋ชจ๋“œ์—์„œ๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ๊ธฐํ˜ธ์™€ ํ•จ๊ป˜ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ปดํŒŒ์ผ๋œ ์ฝ”๋“œ์— ์ง€์นจ์„ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค. ์‹คํ–‰์€ ๋งค์šฐ ๋น ๋ฆ…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฅผ ํ˜„์žฌ ๋ชฉ๋ก์˜ ๋งจ ์œ„๋กœ ์ „๋‹ฌํ•œ ํ›„ ์ •๊ทœ ํ‘œํ˜„์‹์—์„œ ์—ฐ์†๋œ ๋ชจ๋“  ๋ฌธ์ž๋ฅผ ์ž๋™์œผ๋กœ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.
์ปดํŒŒ์ผ ๋ฐ ๊ฒ€์ƒ‰ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ƒํ™ฉ๋ณ„ ๊ฒ€์ƒ‰์œผ๋กœ ์‹œ๋ถ„ํ•  ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ์— ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌผ๋ก , ์ด๋Ÿฐ ๊ฒ€์ƒ‰ ์ ˆ์ฐจ๊ฐ€ ์ ์šฉ๋œ ์‚ฌ๋ก€๋Š” ์ด๋ฒˆ์ด ์ฒ˜์Œ์€ ์•„๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ๋ณ€ํ˜•์€ ์–ด์…ˆ๋ธ”๋ฆฌ์—์„œ ์‹ฌ๋ณผ ํ…Œ์ด๋ธ” ๊ฒ€์ƒ‰์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
๋…์ž๋Š” ์ •๊ทœ ํ‘œํ˜„์‹๊ณผ IBM 7094 ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด์— ์ต์ˆ™ํ•˜๋‹ค๊ณ  ๊ฐ€์ •ํ•ฉ๋‹ˆ๋‹ค.

์ปดํŒŒ์ผ๋Ÿฌ
์ปดํŒŒ์ผ๋Ÿฌ๋Š” ๋ณ‘๋ ฌ๋กœ ์‹คํ–‰๋˜๋Š” ์„ธ ๋‹จ๊ณ„๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š” ๊ตฌ๋ฌธ ํ•„ํ„ฐ๋ง์œผ๋กœ, ๊ตฌ๋ฌธ์ ์œผ๋กœ ์˜ฌ๋ฐ”๋ฅธ ์ •๊ทœ ํ‘œํ˜„์‹๋งŒ ํ†ต๊ณผ์‹œํ‚ต๋‹ˆ๋‹ค. ์ด ๋‹จ๊ณ„์—์„œ๋Š” ์ •๊ทœ ํ‘œํ˜„์‹ ์ผ์น˜๋ฅผ ์œ„ํ•ด "ยท" ์—ฐ์‚ฐ์ž๋„ ์‚ฝ์ž…๋ฉ๋‹ˆ๋‹ค. ๋‘ ๋ฒˆ์งธ ๋‹จ๊ณ„์—์„œ๋Š” ์ •๊ทœ ํ‘œํ˜„์‹์ด ์ ‘๋ฏธ์‚ฌ ํ˜•ํƒœ๋กœ ๋ณ€ํ™˜๋ฉ๋‹ˆ๋‹ค. ์„ธ ๋ฒˆ์งธ ๋‹จ๊ณ„์—์„œ๋Š” ๊ฐœ์ฒด ์ฝ”๋“œ๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. ์ฒ˜์Œ ๋‘ ๋‹จ๊ณ„๋Š” ๋„ˆ๋ฌด๋‚˜ ๋ช…ํ™•ํ•ด์„œ ์—ฌ๊ธฐ์„œ๋Š” ์ž์„ธํžˆ ์„ค๋ช…ํ•˜์ง€ ์•Š๊ฒ ์Šต๋‹ˆ๋‹ค.

ํ†ฐ์Šจ์˜ ๋…ผ๋ฌธ์€ ๋น„๊ฒฐ์ •์  ์œ ํ•œ ์˜คํ† ๋งˆํƒ€๋ฅผ ๋…ผ์˜ํ•˜์ง€ ์•Š์ง€๋งŒ ์„ ํ˜• ์‹œ๊ฐ„ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ž˜ ์„ค๋ช…ํ•˜๊ณ  IBM 60์— ๋Œ€ํ•œ ์–ด์…ˆ๋ธ”๋ฆฌ ์–ธ์–ด ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ALGOL-7094 ํ”„๋กœ๊ทธ๋žจ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๊ตฌํ˜„์€ ๊นŒ๋‹ค๋กญ์ง€๋งŒ ์•„์ด๋””์–ด๋Š” ๋งค์šฐ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

ํ˜„์žฌ ๊ฒ€์ƒ‰ ๊ฒฝ๋กœ. ์ด๋Š” ํ•œ ๊ฐœ์˜ ์ž…๋ ฅ๊ณผ ๋‘ ๊ฐœ์˜ ์ถœ๋ ฅ์„ ๊ฐ€์ง„ โŠ• ์•„์ด์ฝ˜์œผ๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค.
๊ทธ๋ฆผ 1์€ ์˜ˆ์ œ ์ •๊ทœ ํ‘œํ˜„์‹์„ ๋ณ€ํ™˜ํ•  ๋•Œ ์ปดํŒŒ์ผ์˜ ์„ธ ๋ฒˆ์งธ ๋‹จ๊ณ„์˜ ๊ธฐ๋Šฅ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ์ด ์˜ˆ์—์„œ ์ฒ˜์Œ ์„ธ ๋ฌธ์ž๋Š” a, b, c์ด๋ฉฐ ๊ฐ๊ฐ ์Šคํƒ ํ•ญ๋ชฉ S[i]์™€ ํ•„๋“œ NNODE๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์กด ์ฝ”๋“œ์— NNODE๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ๋‹จ์ผ ์Šคํƒ ํ•ญ๋ชฉ์—์„œ ์ตœ์ข… ์ •๊ทœ ํ‘œํ˜„์‹์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค(๊ทธ๋ฆผ 5 ์ฐธ์กฐ)

์ •๊ทœ ํ‘œํ˜„์‹์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. .*.*=.*ํ†ฐ์Šจ์˜ ๊ธฐ์‚ฌ์— ๋‚˜์˜จ ์‚ฌ์ง„๊ณผ ๊ฐ™์ด ์ƒ์ƒํ•ด ๋ณด์„ธ์š”.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

๊ทธ๋ฆผ 0์—๋Š” 0์—์„œ ์‹œ์ž‘ํ•˜๋Š” 3๊ฐœ์˜ ์ƒํƒœ์™€ 1, 2, 3์˜ ์ƒํƒœ๋กœ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๋Š” XNUMX๊ฐœ์˜ ์‚ฌ์ดํด์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด XNUMX๊ฐœ์˜ ์‚ฌ์ดํด์€ XNUMX๊ฐœ์˜ .* ์ •๊ทœ ํ‘œํ˜„์‹์—์„œ. ์ ์ด ์žˆ๋Š” ํƒ€์› 3๊ฐœ๋Š” ํ•˜๋‚˜์˜ ๊ธฐํ˜ธ์— ๋Œ€์‘ํ•ฉ๋‹ˆ๋‹ค. ํ‘œ์ง€ํŒ์ด ์žˆ๋Š” ํƒ€์› = ๋ฆฌํ„ฐ๋Ÿด ๋ฌธ์ž์™€ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค =. ์ƒํƒœ 4๊ฐ€ ์ตœ์ข…์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์— ๋„๋‹ฌํ•˜๋ฉด ์ •๊ทœ ํ‘œํ˜„์‹์ด ์ผ์น˜ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์ƒํƒœ ๋‹ค์ด์–ด๊ทธ๋žจ์ด ์ •๊ทœ ํ‘œํ˜„์‹ ์ผ์น˜์— ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋Š”์ง€ ์•Œ์•„๋ณด๋ ค๋ฉด .*.*=.*, ์šฐ๋ฆฌ๋Š” ๋ฌธ์ž์—ด ๋งค์นญ์„ ์‚ดํŽด๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค x=x. ๊ทธ๋ฆผ 0์— ํ‘œ์‹œ๋œ ๋Œ€๋กœ, ํ”„๋กœ๊ทธ๋žจ์€ ์ƒํƒœ 1์—์„œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์ž‘๋™ํ•˜๋ ค๋ฉด ์ƒํƒœ ๋จธ์‹ ์ด ๋™์‹œ์— ์—ฌ๋Ÿฌ ์ƒํƒœ์— ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋น„๊ฒฐ์ •์  ์œ ํ•œ ์ƒํƒœ ๋จธ์‹ ์€ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์ „ํ™˜์„ ๋™์‹œ์— ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆผ 1์—์„œ ๋ณด๋“ฏ์ด ์ž…๋ ฅ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์„ ์‹œ๊ฐ„๋„ ์—†์ด ์ฒซ ๋ฒˆ์งธ ์ƒํƒœ(2๊ณผ 2)๋กœ ์ „ํ™˜๋ฉ๋‹ˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

๊ทธ๋ฆผ 2์—์„œ ๊ทธ๊ฐ€ ์ฒซ ๋ฒˆ์งธ ๊ฒƒ์„ ๋ณผ ๋•Œ ๋ฌด์Šจ ์ผ์ด ์ผ์–ด๋‚˜๋Š”์ง€ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. x ะฒ x=x. x ์ƒํƒœ 1์—์„œ ์ƒํƒœ 1๋กœ ๋Œ์•„๊ฐ€์„œ ์ตœ์ƒ์œ„ ์ง€์ ๊ณผ ์ผ์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜๋Š” x ์ƒํƒœ 2์—์„œ ์ƒํƒœ 2๋กœ ๋Œ์•„๊ฐ€๋ฉด ์•„๋ž˜ ์ง€์ ๊ณผ ์ผ์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฒซ ๋ฒˆ์งธ๋ฅผ ๋น„๊ตํ•œ ํ›„ x ะฒ x=x ์šฐ๋ฆฌ๋Š” ์—ฌ์ „ํžˆ ์ƒํƒœ 1๊ณผ 2์— ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ๋ฌธ์ž์  ๊ธฐํ˜ธ๊ฐ€ ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ƒํƒœ 3์ด๋‚˜ 4์— ๋„๋‹ฌํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. =.

๊ทธ๋Ÿฐ ๋‹ค์Œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋‹ค์Œ์„ ๊ณ ๋ คํ•ฉ๋‹ˆ๋‹ค. = ะฒ x=x. ์ด์ „ x์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ƒํƒœ 1์—์„œ ์ƒํƒœ 1๋กœ ๋˜๋Š” ์ƒํƒœ 2์—์„œ ์ƒํƒœ 2๋กœ ์ „ํ™˜๋˜๋Š” ์ƒ์œ„ ๋‘ ์‚ฌ์ดํด ์ค‘ ํ•˜๋‚˜์™€ ์ผ์น˜ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋ฆฌํ„ฐ๋Ÿด๊ณผ ์ผ์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. = ๊ทธ๋ฆฌ๊ณ  ์ƒํƒœ 2์—์„œ ์ƒํƒœ 3์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค(๊ทธ๋ฆฌ๊ณ  ์ฆ‰์‹œ ์ƒํƒœ 4๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค). ์ด๋Š” ๊ทธ๋ฆผ 3์— ๋‚˜ํƒ€๋‚˜ ์žˆ๋‹ค.

2๋…„ 2019์›” XNUMX์ผ Cloudflare ์ค‘๋‹จ์— ๋Œ€ํ•œ ์„ธ๋ถ€ ์ •๋ณด

๊ทธ๋Ÿฐ ๋‹ค์Œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ๋งˆ์ง€๋ง‰ ํ•ญ๋ชฉ์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. x ะฒ x=x. ์ƒํƒœ 1๊ณผ 2์—์„œ ๋™์ผํ•œ ์ „ํ™˜์ด ์ƒํƒœ 1๊ณผ 2๋กœ ๋‹ค์‹œ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ƒํƒœ 3์—์„œ x ์˜ค๋ฅธ์ชฝ์˜ ์ง€์ ๊ณผ ์ผ์น˜ํ•˜์—ฌ ์ƒํƒœ 3์œผ๋กœ ๋Œ์•„๊ฐˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋‹จ๊ณ„์—์„œ๋Š” ๊ฐ ๊ธฐํ˜ธ x=x ๊ณ ๋ ค๋˜์—ˆ๊ณ , ์ƒํƒœ 4์— ๋„๋‹ฌํ–ˆ์œผ๋ฏ€๋กœ ์ •๊ทœ ํ‘œํ˜„์‹์€ ์ด ๋ฌธ์ž์—ด๊ณผ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ๋ฌธ์ž๊ฐ€ ํ•œ ๋ฒˆ์”ฉ ์ฒ˜๋ฆฌ๋˜๋ฏ€๋กœ ์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ž…๋ ฅ ๋ฌธ์ž์—ด์˜ ๊ธธ์ด์— ๋”ฐ๋ผ ์„ ํ˜•์ ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํ›„ํ‡ด๋Š” ์—†์Šต๋‹ˆ๋‹ค.

์ƒํƒœ 4์— ๋„๋‹ฌํ•œ ํ›„(์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์ผ์น˜ํ•œ ๊ฒฝ์šฐ)์—๋Š” ๋ถ„๋ช…ํ•ฉ๋‹ˆ๋‹ค. x=) ์ „์ฒด ์ •๊ทœ ํ‘œํ˜„์‹์ด ์ผ์น˜ํ•˜๊ณ  ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์–ด๋–ค ๊ฒƒ๋„ ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ์ข…๋ฃŒ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. x.

์ด ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ์ž…๋ ฅ ๋ฌธ์ž์—ด์˜ ํฌ๊ธฐ์— ์„ ํ˜•์ ์œผ๋กœ ์˜์กดํ•ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : habr.com

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