giip
SES Proposal
6 min read

๋ณด์•ˆ์ ๊ฒ€ ๋ชจ๋‹ˆํ„ฐ ๊ฐ€์ด๋“œ

secwatch ๋ณด์•ˆ์ ๊ฒ€ ์—์ด์ „ํŠธ๊ฐ€ ๋ณด๋‚ธ ์—์Šคํ์—˜ ์ธ์ ์…˜ ํƒ์ง€ ํŒ์ • ๊ฒฐ๊ณผ๋ฅผ ๋‚ด ์กฐ์ง ๋ฒ”์œ„๋กœ ํ•œ ํ™”๋ฉด์—์„œ ๋ณด๋Š” ๋ฐฉ๋ฒ•์„ ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ›ก๏ธ ๋ณด์•ˆ์ ๊ฒ€ ๋ชจ๋‹ˆํ„ฐ ํŽ˜์ด์ง€๋กœ ์ด๋™ โ†’

์ด ํŽ˜์ด์ง€๋Š” ๋ฌด์—‡์ธ๊ฐ€

๊ณ ๊ฐ ์„œ๋ฒ„์— ์„ค์น˜๋œ secwatch ์ˆ˜์ง‘๊ธฐ๊ฐ€ ๊ฐ์‚ฌ๋กœ๊ทธยท์›น๋ฐฉํ™”๋ฒฝยท์‹œ์—”๋””์—” ๋กœ๊ทธ์—์„œ ์˜์‹ฌ ์ด๋ฒคํŠธ๋ฅผ ๊ณจ๋ผ giip Jev ๊ฒŒ์ดํŠธ์›จ์ด๋กœ ๋ณด๋‚ด๋ฉด, ๊ฒŒ์ดํŠธ์›จ์ด๊ฐ€ ํŒ์ •ํ•ด ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ์ด ํŽ˜์ด์ง€๋Š” ๊ทธ ํŒ์ • ๊ฒฐ๊ณผ๋ฅผ ๋กœ๊ทธ์ธํ•œ ๋‚ด ์กฐ์ง(csn) ๋ฒ”์œ„๋กœ๋งŒ ์ตœ์‹ ์ˆœ์œผ๋กœ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ๋กœ์ปฌ monitor.py ์™€ ๊ฐ™์€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๋˜, ๋ณ„๋„ ์„ค์น˜ ์—†์ด giip ์›น ์ฝ˜์†”์—์„œ ๋ด…๋‹ˆ๋‹ค.

  • ์ ‘๊ทผ ๊ถŒํ•œ: ๋กœ๊ทธ์ธํ•œ ์‚ฌ์šฉ์ž๋ผ๋ฉด ๋ˆ„๊ตฌ๋‚˜ ์—ด๋žŒํ•  ์ˆ˜ ์žˆ๊ณ , ์ž๊ธฐ ์กฐ์ง(csn)์˜ ๊ฒฐ๊ณผ๋งŒ ๋ณด์ž…๋‹ˆ๋‹ค(์„œ๋ฒ„๊ฐ€ ์†Œ์† ๊ธฐ์ค€์œผ๋กœ ์Šค์ฝ”ํ”„ํ•ฉ๋‹ˆ๋‹ค).
  • ๋น„๋ฐ€๊ฐ’ ๋…ธ์ถœ ์—†์Œ: ์กฐํšŒ๋Š” ๋กœ๊ทธ์ธ ํ† ํฐ์œผ๋กœ๋งŒ ์ด๋ค„์ง€๋ฉฐ, ์ˆ˜์ง‘๊ธฐ ์ธ์ฆํ‚ค๋Š” ํ™”๋ฉด์— ๋‚˜์˜ค์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์‚ฌ์šฉ๋ฒ•

  1. ์กฐํšŒ ๊ธฐ๊ฐ„ ์„ ํƒ: ์ตœ๊ทผ 1์‹œ๊ฐ„ / 6์‹œ๊ฐ„ / 24์‹œ๊ฐ„ / 7์ผ. ํ™”๋ฉด์€ ๊ทธ ๊ธฐ๊ฐ„์˜ ๊ฒฐ๊ณผ๋งŒ ์ตœ์‹ ์ˆœ์œผ๋กœ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค(๋ธŒ๋ผ์šฐ์ €์— ์Œ“์ด์ง€ ์•Š๋Š” ๋กค๋ง ๋ฐฉ์‹).
  2. ๋ผ์šฐํŒ… ํ•„ํ„ฐ: ์ „์ฒด / ๐Ÿ”ด๊ฒฝ๋ณด(alert) / ๐ŸŸ ๊ฒ€ํ† (review) / โšช๊ธฐ๋ก(log) ์ค‘์—์„œ ๊ณ ๋ฆ…๋‹ˆ๋‹ค.
  3. ์ƒˆ๋กœ๊ณ ์นจ: ์ตœ์‹  ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์‹œ ๋ถˆ๋Ÿฌ์˜ต๋‹ˆ๋‹ค.

ํ‘œ ์ปฌ๋Ÿผ ์ฝ๋Š” ๋ฒ•

์ปฌ๋Ÿผ์˜๋ฏธ
์‹œ๊ฐํŒ์ •์ด ์ €์žฅ๋œ ์‹œ๊ฐ
์ˆ˜์ง‘๊ธฐ(LSsn)์ด๋ฒคํŠธ๋ฅผ ๋ณด๋‚ธ ์ˆ˜์ง‘ ์—์ด์ „ํŠธ ์‹๋ณ„์ž
ํƒ€์ž…์ด๋ฒคํŠธ ์ข…๋ฅ˜ โ€” secevt_batch_audit(๊ฐ์‚ฌ๋กœ๊ทธ) ยท secevt_waf(์›น๋ฐฉํ™”๋ฒฝ) ยท secevt_cf(์‹œ์—”๋””์—”) ยท secevt_signal(์ง‘๊ณ„ ์‹ ํ˜ธ)
๋ผ์šฐํŒ…๐Ÿ”ด๊ฒฝ๋ณด=์ฆ‰์‹œ ๋Œ€์‘ / ๐ŸŸ ๊ฒ€ํ† =์‚ฌ๋žŒ ํ™•์ธ ํ•„์š” / โšช๊ธฐ๋ก=์ •์ƒ ํŒ์ •ยท๊ธฐ๋ก์šฉ
์‹ฌ๊ฐ๋„๊ณต๊ฒฉ์˜ ์œ„ํ—˜๋„ โ€” 0~4(0 ๋…ธ์ด์ฆˆ ยท 1 ์ •์ฐฐ ยท 2 ์—ด๊ฑฐยท์ฝ๊ธฐ ยท 3 ์ธ์ฆ์ •๋ณดยท๊ฐœ์ธ์ •๋ณด ์ฝ๊ธฐ ยท 4 ์“ฐ๊ธฐยท๊ถŒํ•œ ์กฐ์ž‘)
๊ณต๊ฒฉ์ผ ํ™•๋ฅ ์ด ์š”์ฒญ์ด ๊ณต๊ฒฉ์ธ๊ฐ€์— ๋Œ€ํ•œ ํ™•์‹ ๋„(0~100%). ์„ฑ๊ณต๋ฅ ์ด ์•„๋‹™๋‹ˆ๋‹ค โ€” 97%๋Š” "๊ณต๊ฒฉ์ผ ํ™•๋ฅ  97%"์ด๊ณ , ๊ฐ’์ด ๋น ์ ธ๋‚˜๊ฐ”๋Š”์ง€๋Š” ์•„๋ž˜ ํ”Œ๋ž˜๊ทธ๋กœ ๋ด…๋‹ˆ๋‹ค
๊ณต๊ฒฉ ์œ ํ˜•Jev๊ฐ€ ๋ถ„๋ฅ˜ํ•œ ๊ณต๊ฒฉ ์œ ํ˜•(๊ฐ’๊ณผ ๋œป์€ ์•„๋ž˜ "๊ณต๊ฒฉ ์œ ํ˜• ๊ฐ’" ํ‘œ ์ฐธ์กฐ)
ํ”Œ๋ž˜๊ทธ์ธ์ ์…˜ ์˜์‹ฌ ยท ๋ฐ์ดํ„ฐ ์œ ์ถœ ์˜์‹ฌ ยท ์“ฐ๊ธฐ ์‹œ๋„ ์—ฌ๋ถ€
์‹ ๋ขฐ๋„๊ณต๊ฒฉ ์œ ํ˜•ยท์‹ฌ๊ฐ๋„ ํŒ์ •์ด ์–ผ๋งˆ๋‚˜ ํ™•์‹คํ•œ์ง€(0~100%). ์œ„ "๊ณต๊ฒฉ์ผ ํ™•๋ฅ "๊ณผ ๋‹ค๋ฅธ ๊ฐ’์ž…๋‹ˆ๋‹ค โ€” ๊ณต๊ฒฉ์ผ ํ™•๋ฅ ์—๋Š” ๋ณ„๋„ ์‹ ๋ขฐ๋„๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค(ํ™•๋ฅ  ์ž์ฒด๊ฐ€ ์‹ ํ˜ธ)
์—”์ง„jev=2์ฐจ Jev ํŒ์ • / rule=1์ฐจ ๊ทœ์น™๋งŒ
์ด์œ ๊ทธ ๋ผ์šฐํŒ…์œผ๋กœ ๋ถ„๋ฅ˜๋œ ๊ทผ๊ฑฐ ์„ค๋ช…

๊ณต๊ฒฉ ์œ ํ˜•(attack type) ๊ฐ’

Jev๊ฐ€ ๊ฐ ์‚ฌ๊ฑด์„ ์•„๋ž˜ 10๊ฐ€์ง€ ์ค‘ ํ•˜๋‚˜๋กœ ๋ถ„๋ฅ˜ํ•ฉ๋‹ˆ๋‹ค. ์‹ฌ๊ฐ๋„(severity)๋Š” 0 ๋…ธ์ด์ฆˆ ยท 1 ์ •์ฐฐยทํƒ์‚ฌ ยท 2 ์—ด๊ฑฐยท์ฝ๊ธฐ ์‹œ๋„ ยท 3 ์ธ์ฆ์ •๋ณดยท๊ฐœ์ธ์ •๋ณด ์ฝ๊ธฐ ยท 4 ์“ฐ๊ธฐยทํŒŒ์ผยท๊ถŒํ•œ ์กฐ์ž‘ ์œผ๋กœ ๋งค๊ฒจ์ง‘๋‹ˆ๋‹ค.

๊ฐ’๋œป์„ค๋ช…
recon_probe์ •์ฐฐยทํƒ์‚ฌ๋ณธ๊ฒฉ ๊ณต๊ฒฉ ์ „์— "์—ฌ๊ธฐ์— ์ธ์ ์…˜์ด ํ†ตํ•˜๋‚˜"๋ฅผ ์ฐ”๋Ÿฌ๋ณด๋Š” ์ดˆ๊ธฐ ํƒ์ƒ‰์ž…๋‹ˆ๋‹ค. ์ž‘์€ ๋ณ€ํ˜•์„ ๋„ฃ์–ด ๋ฐ˜์‘๋งŒ ๋– ๋ณด๋Š” ๋‹จ๊ณ„๋ผ ๊ทธ ์ž์ฒด๋กœ๋Š” ๋ฐ์ดํ„ฐ ์œ ์ถœยท๋ณ€์กฐ๊ฐ€ ์—†์ง€๋งŒ, ๋’ค์ด์–ด ์‹ค์ œ ๊ณต๊ฒฉ์ด ์˜ฌ ์ˆ˜ ์žˆ๋‹ค๋Š” ์‹ ํ˜ธ์ž…๋‹ˆ๋‹ค(๋ณดํ†ต ์‹ฌ๊ฐ๋„ 1).
boolean_blind์ฐธ/๊ฑฐ์ง“ ๋ธ”๋ผ์ธ๋“œ๊ฒฐ๊ณผ๊ฐ€ ์•ˆ ๋ณด์ผ ๋•Œ, ์กฐ๊ฑด์˜ ์ฐธ/๊ฑฐ์ง“์— ๋”ฐ๋ผ ์‘๋‹ต์ด ๋‹ฌ๋ผ์ง€๋Š” ๊ฒƒ์„ ์ด์šฉํ•ด ๊ฐ’์„ ํ•œ ๊ธ€์ž(๋น„ํŠธ)์”ฉ ์•Œ์•„๋ƒ…๋‹ˆ๋‹ค.
time_blind์‹œ๊ฐ„ ๋ธ”๋ผ์ธ๋“œ์‘๋‹ต ๋‚ด์šฉ์ด ์•ˆ ๋ณด์ผ ๋•Œ SLEEP ๊ฐ™์€ ์ง€์—ฐ์„ ๋„ฃ์–ด, ์‘๋‹ต์ด ๋А๋ฆฐ์ง€๋กœ ์ฐธ/๊ฑฐ์ง“์„ ์ถ”๋ก ํ•ฉ๋‹ˆ๋‹ค.
union_based์œ ๋‹ˆ์˜จ(UNION) ๊ธฐ๋ฐ˜ ์ถ”์ถœUNION SELECT ๋กœ ๊ณต๊ฒฉ์ž๊ฐ€ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ •์ƒ ๊ฒฐ๊ณผ ๋’ค์— ๋ถ™์—ฌ ํ•œ๊บผ๋ฒˆ์— ๋นผ๋ƒ…๋‹ˆ๋‹ค.
error_based์˜ค๋ฅ˜ ๊ธฐ๋ฐ˜์ผ๋ถ€๋Ÿฌ DB ์˜ค๋ฅ˜๋ฅผ ๋‚ด์„œ, ๊ทธ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€์— ๋ฐ์ดํ„ฐ๊ฐ€ ์„ž์—ฌ ๋‚˜์˜ค๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
file_writeํŒŒ์ผ ์“ฐ๊ธฐINTO OUTFILE/DUMPFILE ๋กœ ์„œ๋ฒ„์— ํŒŒ์ผ์„ ์”๋‹ˆ๋‹ค(์›น์…ธ ์„ค์น˜ ๋“ฑ โ€” ๋งค์šฐ ์œ„ํ—˜, ๋ณดํ†ต ์‹ฌ๊ฐ๋„ 4).
file_readํŒŒ์ผ ์ฝ๊ธฐLOAD_FILE ๋กœ ์„œ๋ฒ„์˜ ํŒŒ์ผ์„ ์ฝ์–ด๋ƒ…๋‹ˆ๋‹ค.
schema_enum์Šคํ‚ค๋งˆ ์—ด๊ฑฐinformation_schema ๋“ฑ์œผ๋กœ ์–ด๋–ค ํ…Œ์ด๋ธ”ยท์ปฌ๋Ÿผ์ด ์žˆ๋Š”์ง€ ๊ตฌ์กฐ๋ฅผ ํ›‘์Šต๋‹ˆ๋‹ค(์ •์ฐฐ ์„ฑ๊ฒฉ).
stacked_or_ddl์Šคํƒ ์ฟผ๋ฆฌ / DDL์„ธ๋ฏธ์ฝœ๋ก ์œผ๋กœ ์ฟผ๋ฆฌ๋ฅผ ์ด์–ด ๋ถ™์ด๊ฑฐ๋‚˜ DROPยทALTER ๊ฐ™์€ ๊ตฌ์กฐ ๋ณ€๊ฒฝ์„ ์‹œ๋„ํ•ฉ๋‹ˆ๋‹ค.
benign๊ณต๊ฒฉ ์•„๋‹˜์ •์ƒ ์š”์ฒญ์œผ๋กœ ํŒ์ •๋œ ๊ฑด(๊ทผ๊ฑฐ ๊ธฐ๋ก์šฉ).

์ฆ‰, recon_probe ๋Š” "์•„์ง ๋ฐ์ดํ„ฐ๋ฅผ ๋นผ๊ฐ„ ๊ฑด ์•„๋‹ˆ์ง€๋งŒ, ๊ณต๊ฒฉ์ž๊ฐ€ ์ทจ์•ฝ์ ์„ ๋– ๋ณด๋Š” ์ค‘"์ด๋ผ๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ๊ฐ™์€ ์ˆ˜์ง‘๊ธฐ์—์„œ recon_probe ๊ฐ€ ๋ฐ˜๋ณต๋˜๋ฉด ๋ณธ๊ฒฉ ๊ณต๊ฒฉ์˜ ์ „์กฐ๋กœ ๋ณด๊ณ  ์ฃผ์˜ ๊นŠ๊ฒŒ ์ง€์ผœ๋ณด์„ธ์š”.

๋ผ์šฐํŒ…(routedTo)์˜ ์˜๋ฏธ

  • ๐Ÿ”ด๊ฒฝ๋ณด(alert): ๋ฐ์ดํ„ฐ ์œ ์ถœยท์“ฐ๊ธฐ ์‹œ๋„ ์˜์‹ฌ ๋˜๋Š” ๊ณ ์‹ ๋ขฐ ๊ณต๊ฒฉ. ์ฆ‰์‹œ ํ™•์ธํ•˜์„ธ์š”.
  • ๐ŸŸ ๊ฒ€ํ† (review): ์ธ์ ์…˜ ๊ฐ€๋Šฅ์„ฑ์ด ์• ๋งคํ•ด ์‚ฌ๋žŒ ํŒ๋‹จ์ด ํ•„์š”ํ•œ ๊ฑด.
  • โšช๊ธฐ๋ก(log): ์ •์ƒ์œผ๋กœ ํŒ์ •๋œ ๊ฑด(๊ทผ๊ฑฐ ๋ณด์กด์šฉ). ํ‰์ƒ์‹œ ๋Œ€๋ถ€๋ถ„์ด ์—ฌ๊ธฐ์ž…๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ๊ฐ€ ์•ˆ ๋ณด์ผ ๋•Œ

  • ๋‚ด ์กฐ์ง์— secwatch ์ˆ˜์ง‘๊ธฐ๊ฐ€ ์•„์ง ์—†๊ฑฐ๋‚˜, ์„ ํƒํ•œ ๊ธฐ๊ฐ„์— ๋ณด๋‚ธ ์ด๋ฒคํŠธ๊ฐ€ ์—†์œผ๋ฉด ๋น„์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณด๋‚ผ ์ด๋ฒคํŠธ๊ฐ€ ์—†์–ด๋„ ์ˆ˜์ง‘๊ธฐ๋Š” ์ •์ƒ ๋™์ž‘ ์ค‘์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์ƒ์กด ์‹ ํ˜ธ๋Š” ๋กœ์ปฌ monitor.py ์—์„œ ํ™•์ธ).
  • "์ ‘๊ทผ ๊ฑฐ๋ถ€"๊ฐ€ ๋œจ๋ฉด ํ•ด๋‹น ์กฐ์ง ์†Œ์†์ด ์•„๋‹Œ ์ƒํƒœ์ž…๋‹ˆ๋‹ค(์†Œ์† csn ๊ฒฐ๊ณผ๋งŒ ์กฐํšŒ๋ฉ๋‹ˆ๋‹ค).

๊ณต๊ฒฉ์ผ ํ™•๋ฅ  vs ์‹ค์ œ ํ”ผํ•ด โ€” ํ˜ผ๋™ ์ฃผ์˜

  • ๊ณต๊ฒฉ์ผ ํ™•๋ฅ (์ด์ „ ํ‘œ๊ธฐ: ์ธ์ ์…˜ ํ™•๋ฅ ): "์ด ์š”์ฒญ์ด ๊ณต๊ฒฉ์ด๋ƒ"์— ๋Œ€ํ•œ ํŒ์ • ์—”์ง„์˜ ํ™•์‹ ๋„์ž…๋‹ˆ๋‹ค. 97%๋Š” "๊ณต๊ฒฉ์ผ ํ™•๋ฅ  97%"์ด๊ณ  ์„ฑ๊ณต๋ฅ ์ด ์•„๋‹™๋‹ˆ๋‹ค.
  • ์‹ค์ œ ํ”ผํ•ด๋Š” ํ”Œ๋ž˜๊ทธ์™€ ์‹ฌ๊ฐ๋„๋กœ ๋ด…๋‹ˆ๋‹ค: ๋ฐ์ดํ„ฐ ์œ ์ถœ(๊ณต๊ฒฉ์ž๊ฐ€ ์‹ค์ œ๋กœ DB ๊ฐ’์„ ์ฝ์–ด๋ƒˆ๋‹ค๊ณ  ํŒ๋‹จ) ยท ์“ฐ๊ธฐ ์‹œ๋„(๋ฐ์ดํ„ฐยทํŒŒ์ผยท๊ถŒํ•œ ์“ฐ๊ธฐ ์‹œ๋„). ๋‘˜ ๋‹ค 0.7 ์ด์ƒ์ผ ๋•Œ๋งŒ ๋ฐฐ์ง€๊ฐ€ ๋œน๋‹ˆ๋‹ค.
  • ์ฆ‰ ๊ณต๊ฒฉ์ผ ํ™•๋ฅ  97% + ํ”Œ๋ž˜๊ทธ ์—†์Œ์ด๋ฉด "๊ณต๊ฒฉ์ธ ๊ฑด ๊ฑฐ์˜ ํ™•์‹คํ•˜์ง€๋งŒ, ๊ฐ’์„ ๋นผ๋ƒˆ๋‹ค๋Š” ์ฆ๊ฑฐ๋Š” ์—†๋‹ค"๋Š” ๋œป์ž…๋‹ˆ๋‹ค.

์‹œ๋„๊ฐ€ ์„ฑ๊ณตํ–ˆ๋Š”์ง€ ๋ณด๋Š” ์ˆœ์„œ

  1. ๋ฐ์ดํ„ฐ ์œ ์ถœ ํ”Œ๋ž˜๊ทธ โ€” ์ด๊ฒŒ ์„ฑ๊ณต ์—ฌ๋ถ€์— ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ง€ํ‘œ์ž…๋‹ˆ๋‹ค(๊ณต๊ฒฉ์ž๊ฐ€ ์‹ค์ œ๋กœ ๋””๋น„ ๊ฐ’์„ ์ฝ์–ด๋ƒˆ๋‹ค๋Š” ํŒ์ •, 0.7 ์ด์ƒ์—์„œ๋งŒ ํ‘œ์‹œ).
  2. ์“ฐ๊ธฐ ์‹œ๋„ ํ”Œ๋ž˜๊ทธ โ€” ๋ฐ์ดํ„ฐยทํŒŒ์ผยท๊ถŒํ•œ ์“ฐ๊ธฐ. ์ด๋ฆ„๋Œ€๋กœ ์‹œ๋„์ด๊ณ  ์„ฑ๊ณต ํ™•์ •์€ ์•„๋‹™๋‹ˆ๋‹ค.
  3. ์‹ฌ๊ฐ๋„ 3ยท4 โ€” 3์€ ์ธ์ฆ์ •๋ณดยท๊ฐœ์ธ์ •๋ณด ์ฝ๊ธฐ, 4๋Š” ์“ฐ๊ธฐยทํŒŒ์ผยท๊ถŒํ•œ ์กฐ์ž‘. ์„ฑ๊ณตํ–ˆ๋‹ค๋ฉด ํ”ผํ•ด์˜ ์„ฑ๊ฒฉ์„ ๋œปํ•ฉ๋‹ˆ๋‹ค.
  4. ๋ผ์šฐํŒ… ๊ฒฝ๋ณด โ€” ์œ ์ถœยท์“ฐ๊ธฐ ์˜์‹ฌ์ด 0.7 ์ด์ƒ์ด๋ฉด ๊ฒฝ๋ณด๋กœ ๋ณด๋‚ด๊ณ  ํ”ผํ•ดํ™•์ธ ๋Œ€์ƒ์ด ๋ฉ๋‹ˆ๋‹ค.
  5. ์›๋ณธ์˜ ์‘๋‹ต์ฝ”๋“œยท์‘๋‹ตํฌ๊ธฐ โ€” 1064(๊ตฌ๋ฌธ ์˜ค๋ฅ˜) ๊ฐ™์€ ๊ฐ’์ด๋ฉด ๊ณต๊ฒฉ์ด ์‹คํŒจํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์›๋ณธ์€ ์›๋ณธ ์ทจ๋“ ์ปค๋งจ๋“œ๋กœ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

ํ•œ๊ณ„: ๋ฐ์ดํ„ฐ ์œ ์ถœ์€ ํŒ์ • ์—”์ง„์˜ ์ถ”์ •์ด๋ฉฐ ํ™•์ • ์ฆ๊ฑฐ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. ํ™•์ •ํ•˜๋ ค๋ฉด ์›๋ณธ ๋กœ๊ทธ์˜ ์‘๋‹ตํฌ๊ธฐยท์ƒํƒœ์ฝ”๋“œ๋ฅผ ๋ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. giip ์ž๊ธฐ๋ฐฉ์–ด ํ–‰(์›๋ณธ ์œ„์น˜๊ฐ€ func:)์€ ์„ค๊ณ„์ƒ ์š”์ฒญ ๋ณธ๋ฌธ์„ ์ €์žฅํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๊ทธ ํ–‰๋งŒ์œผ๋กœ๋Š” ํ™•์ •ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋ณด์กด๊ธฐ๊ฐ„๊ณผ ํ‘œ์‹œ ๋ฒ”์œ„

  • ํŒ์ • ํ–‰ ๋ณด์กด: tKVSSecurityCheck ์—๋Š” ์ž๋™ ์‚ญ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. ๋ณด๊ด€์ฃผ๊ธฐ(CleanTable) ๋Œ€์ƒ์— ๋“ฑ๋ก๋ผ ์žˆ์ง€ ์•Š์•„ ํŒ์ • ํ–‰์€ ์‚ญ์ œ ์ •์ฑ…์ด ์ƒ๊ธธ ๋•Œ๊นŒ์ง€ ๊ณ„์† ๋‚จ์Šต๋‹ˆ๋‹ค(2026-10-18 ํ™•์ธ).
  • ํ‘œ์‹œ ๋ฒ”์œ„: ์ด ํŽ˜์ด์ง€๋Š” ์„ ํƒํ•œ ๊ธฐ๊ฐ„(1์‹œ๊ฐ„ยท6์‹œ๊ฐ„ยท24์‹œ๊ฐ„ยท7์ผ, ๊ธฐ๋ณธ 24์‹œ๊ฐ„)์˜ ํ–‰์„ ๊ฑด์ˆ˜ ์ƒํ•œ ์—†์ด ์นด๋“œ๋กœ ์ „๋ถ€ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ๊ธฐ๊ฐ„์„ ๋„˜์€ ํ–‰์€ ํ™”๋ฉด์—์„œ๋งŒ ๋น ์ง€๊ณ  DB ์—๋Š” ๋‚จ์Šต๋‹ˆ๋‹ค.
  • ๊ธฐ๋ก(log) ํ–‰: ๊ฒฝ๋ณดยท๊ฒ€ํ† ์™€ ๋˜‘๊ฐ™์ด ์ €์žฅ๋˜๋ฉฐ ํ†ต์ง€๋งŒ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ณ„๋„ ๋ณด์กดยท์‚ญ์ œ ๊ทœ์น™๋„ ์—†์Šต๋‹ˆ๋‹ค(๊ทผ๊ฑฐ ๋ณด์กด์šฉ).
  • 1์ผ ์˜ˆ์ƒ ํ–‰์ˆ˜: ์ „๋‹จํ•„ํ„ฐ๋ฅผ ํ†ต๊ณผํ•œ ์˜์‹ฌ ๊ฑด๋งŒ ์ „์†ก๋˜๋ฏ€๋กœ ํ‰์ƒ์‹œ ์ˆ˜์ง‘๊ธฐ๋‹น 0~์ˆ˜ ๊ฑด ์ˆ˜์ค€์ž…๋‹ˆ๋‹ค(์ •์ƒ ํŠธ๋ž˜ํ”ฝ์€ ์ „์†กํ•˜์ง€ ์•Š์Œ). ๊ฒ€์‚ฌํ–ˆ์ง€๋งŒ ๋ณด๋‚ด์ง€ ์•Š์€ ์ •์ƒ ๊ฑด์ˆ˜๋Š” ์ƒ๋‹จ ์ˆ˜์ง‘ ์ปค๋ฒ„๋ฆฌ์ง€ ํŒจ๋„์—์„œ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

๋ฌด์—‡์„ ์ˆ˜์ง‘ํ•˜๊ณ , ๋ฌด์—‡์„ ๊ฐ์‹œํ• ์ง€ ๊ณ ๋ฅด๋Š” ๋ฐฉ๋ฒ•

์ˆ˜์ง‘์€ ์ด ํ™”๋ฉด์ด ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ณ ๊ฐ ์„œ๋ฒ„์— ์„ค์น˜ํ•œ secwatch ์ˆ˜์ง‘๊ธฐ(giip-fde-agent) ๊ฐ€ ๋กœ๊ทธ๋ฅผ ์ฝ์–ด ์˜์‹ฌ ์ด๋ฒคํŠธ๋งŒ ๊ณจ๋ผ giip ๊ฒŒ์ดํŠธ์›จ์ด๋กœ ๋ณด๋ƒ…๋‹ˆ๋‹ค. ์ด ํŽ˜์ด์ง€๋Š” ๊ทธ ํŒ์ • ๊ฒฐ๊ณผ๋งŒ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ๋ฌด์—‡์„ ๊ฐ์‹œํ• ์ง€๋Š” ์ˆ˜์ง‘๊ธฐ ์„ค์ •์—์„œ ์†Œ์Šค ์ข…๋ฅ˜์™€ ๋กœ๊ทธ ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•ด ๊ณ ๋ฆ…๋‹ˆ๋‹ค.

์ˆ˜์ง‘ํ•  ์ˆ˜ ์žˆ๋Š” ์†Œ์Šค

์†Œ์Šค ์ด๋ฆ„๋ฌด์—‡์„ ๋ณด๋Š”๊ฐ€์“ฐ๋Š” ๋กœ๊ทธ
aurora_audit (db_audit, batch_audit)์–ด๋–ค ๊ณ„์ •์ด ์–ด๋–ค SQL ์„ ์‹คํ–‰ํ–ˆ๋Š”๊ฐ€๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ์‚ฌ๋กœ๊ทธ
waf์ฐจ๋‹จยทํ—ˆ์šฉ๋œ ์š”์ฒญ์˜ ๊ฒฝ๋กœ์™€ ์ธ์ž์›น๋ฐฉํ™”๋ฒฝ ๋กœ๊ทธ
cloudfront (cf)์š”์ฒญ ๊ฒฝ๋กœ์™€ ์‘๋‹ต ํฌ๊ธฐ์‹œ๋””์—” ์•ก์„ธ์Šค ๋กœ๊ทธ
sec_monitor์™ธ๋ถ€ ๋ณด์•ˆ ๋„๊ตฌ๊ฐ€ ๋ณด๋‚ธ ์ด๋ฒคํŠธ๊ทธ ๋„๊ตฌ์˜ ์ถœ๋ ฅ(JSON)
signal (applog)์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ง์ ‘ ๋ณด๋‚ธ ์‹ ํ˜ธ์•ฑ ๋กœ๊ทธ / ์ž์ฒด ๋ฐฉ์–ด ์ง€์ 
generic์œ„ ํ˜•์‹์— ์•ˆ ๋งž๋Š” ์ž„์˜ ํ…์ŠคํŠธ ๋กœ๊ทธ์ง์ ‘ ์ง€์ •ํ•œ ํŒŒ์ผ

์—ฌ๋Ÿฌ ์†Œ์Šค๋ฅผ ํ•จ๊ป˜ ์ผค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‹œํ•˜๊ณ  ์‹ถ์€ ๋Œ€์ƒ์ด ์œ„์— ์—†์œผ๋ฉด generic ์œผ๋กœ ๊ทธ ๋กœ๊ทธ ํŒŒ์ผ์„ ์ง€์ •ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

๋ณด๋‚ด๋Š” ํ•ญ๋ชฉ

ํ•ญ๋ชฉ์„ค๋ช…
๋ฐœ์ƒ ์‹œ๊ฐ์ด๋ฒคํŠธ ์‹œ๊ฐ
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค / ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ณ„์ •์–ด๋А DB ์˜ ์–ด๋А ๊ณ„์ •์ธ๊ฐ€
์ž‘์—… ์ข…๋ฅ˜ / ์‘๋‹ต ์ฝ”๋“œ์กฐํšŒยท๋ณ€๊ฒฝ ๊ตฌ๋ถ„๊ณผ ๊ฒฐ๊ณผ ์ฝ”๋“œ
๊ณต๊ฒฉ์ž ์ฃผ์†Œ์‹ค์ œ ์•„์ดํ”ผ. ์ถ”์ ์ด ๋˜๋„๋ก ํด๋ž˜์Šค๊ฐ€ ์•„๋‹ˆ๋ผ ์ฃผ์†Œ๋ฅผ ๋ฐ›์Šต๋‹ˆ๋‹ค
์ฃผ์†Œ ๋ถ„๋ฅ˜ / ์ ‘์† ๋„๊ตฌ ๋ถ„๋ฅ˜์‚ฌ๋‚ดยท์™ธ๋ถ€ ๊ตฌ๋ถ„, ๋ด‡ยท๋ธŒ๋ผ์šฐ์ € ๊ตฌ๋ถ„
์—์Šคํ์—˜ ํ˜•ํƒœ์ฟผ๋ฆฌ์˜ ๋ชจ์–‘๋งŒ (์•„๋ž˜ ์ฐธ๊ณ )
์š”์ฒญ ๊ฒฝ๋กœ / ์š”์ฒญ ์ธ์ž ํ˜•ํƒœ์–ด๋–ค ๊ฒฝ๋กœ์— ์–ด๋–ค ๋ชจ์–‘์˜ ์ธ์ž๊ฐ€ ์™”๋Š”๊ฐ€
์‘๋‹ต ํฌ๊ธฐ๊ฐ™์€ ์š”์ฒญ์— ์‘๋‹ต ํฌ๊ธฐ๊ฐ€ ๋‘˜๋กœ ๊ฐˆ๋ฆฌ๋ฉด ๊ฐ’์ด ๋น ์ ธ๋‚˜๊ฐ”๋‹ค๋Š” ์‹ ํ˜ธ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค

์›๋ฌธ์€ ๋ณด๋‚ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์—์Šคํ์—˜๊ณผ ์š”์ฒญ ์ธ์ž๋Š” ์ˆ˜์ง‘๊ธฐ์—์„œ ๋งˆ์Šคํ‚นํ•ด "ํ˜•ํƒœ"๋งŒ ๋ณด๋ƒ…๋‹ˆ๋‹ค. ์‹ค์ œ ๊ฐ’ยท๋น„๋ฐ€๊ฐ’ยท๊ฐœ์ธ์ •๋ณด๋Š” giip ๋กœ ์ „์†ก๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ •์ƒ ํŠธ๋ž˜ํ”ฝ๋„ ๋ณด๋‚ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค โ€” ์ˆ˜์ง‘๊ธฐ๊ฐ€ ์ „๋‹จํ•„ํ„ฐ๋กœ ์˜์‹ฌ ๊ฑด๋งŒ ๊ณจ๋ผ ๋ณด๋‚ด๊ณ , ๊ฒ€์‚ฌํ–ˆ์ง€๋งŒ ๋ณด๋‚ด์ง€ ์•Š์€ ๊ฑด์ˆ˜๋Š” ์ƒ๋‹จ ์ˆ˜์ง‘ ์ปค๋ฒ„๋ฆฌ์ง€ ํŒจ๋„์— ์ˆซ์ž๋กœ๋งŒ ์˜ฌ๋ผ์˜ต๋‹ˆ๋‹ค.

๊ด€๋ จ ์•ˆ๋‚ด

  • ์ˆ˜์ง‘๊ธฐ ์„ค์น˜ยท์šด์˜: secwatch ๋ณด์•ˆ์ ๊ฒ€ ์—์ด์ „ํŠธ(giip-fde-agent) ์šด์˜ ๊ฐ€์ด๋“œ.
  • ํŒ์ •ยท์ €์žฅยท๋ณด์กด ์‚ฌ์–‘: SPEC_JEV_SQLI_DETECTION.
  • ์นจํ•ด ํƒ์ง€โ†’์กฐ์‚ฌโ†’๋Œ€์‘ ์ „์ฒด ํ๋ฆ„: GIIP AI Security Operations