[Open Source] ํ•œ๊ตญยท๊ตญ์ œ ๋ณด์•ˆ ๋‰ด์Šค ์ž๋™ ์ˆ˜์ง‘ยท์š”์•ฝ (security-news-feed)

ยท

๐Ÿ“‹ ๊ฐœ์š”

ํ•œ๊ตญยท๊ตญ์ œ ๋ณด์•ˆ ๋‰ด์Šค๋ฅผ ์—ฌ๋Ÿฌ ์†Œ์Šค์—์„œ ์ž๋™์œผ๋กœ ๋ชจ์•„ LLM์œผ๋กœ ์š”์•ฝํ•œ ๋’ค Notion์— ์ •๋ฆฌํ•ด ์ฃผ๋Š” ๋ชจ๋“ˆ security-news-feed๋ฅผ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ๋งค์‹œ๊ฐ„ ์ž๋™์œผ๋กœ ๋Œ๋ฉฐ ํฉ์–ด์ง„ ๋ณด์•ˆ ์†Œ์‹์„ ํ•œ๊ณณ์— ๋ชจ์๋‹ˆ๋‹ค.

GitHub ์ €์žฅ์†Œ: https://github.com/rebugui/security-news-feed

๐ŸŽฏ ์ œ์ž‘ ๋ฐฐ๊ฒฝ

๋ณด์•ˆ ๋‹ด๋‹น์ž๋Š” KISAยท๋ณดํ˜ธ๋‚˜๋ผยท๊ตญ๋‚ด์™ธ ๋ณด์•ˆ ๋งค์ฒด๋ฅผ ๋งค์ผ ๋“ค์—ฌ๋‹ค๋ด์•ผ ํ•˜์ง€๋งŒ, ์‚ฌ์ดํŠธ๋งˆ๋‹ค ํฉ์–ด์ง„ ๊ธ€์„ ์ผ์ผ์ด ํ™•์ธํ•˜๊ธด ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ ์†Œ์Šค๋ฅผ ํ•œ ๋ฒˆ์— ํฌ๋กค๋ง โ†’ ํ•„ํ„ฐ โ†’ ์š”์•ฝ โ†’ ์ •๋ฆฌํ•ด, ํ•ต์‹ฌ๋งŒ ๋น ๋ฅด๊ฒŒ ํ›‘์„ ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ—๏ธ ์›Œํฌํ”Œ๋กœ์šฐ

1
2
3
4
5
6
7
8
9
๋‹ค์ˆ˜ ๋ณด์•ˆ ๋‰ด์Šค ์†Œ์Šค ๋ณ‘๋ ฌ ํฌ๋กค๋ง
   (KRCERT ยท NCSC ยท ๋ณดํ˜ธ๋‚˜๋ผ ยท DailySecu ยท BoanNews ยท AhnLab ยท
    Igloo ยท KISA ยท SKShieldus ยท Google News ยท arXiv ยท HackerNews ยท Hada.io ๋“ฑ)
    โ†“
ํ‚ค์›Œ๋“œ ํ•„ํ„ฐ๋ง (์ทจ์•ฝ์  ยท ์•…์„ฑ์ฝ”๋“œ ยท ๋žœ์„ฌ์›จ์–ด ยท ํ”ผ์‹ฑ โ€ฆ)
    โ†“
GLM-4.7 API ์š”์•ฝ (140์ž ์š”์•ฝ + ์ƒ์„ธ ๋ถ„์„)
    โ†“
Notion ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ €์žฅ (ํƒœ๊ทธ ๋ถ„๋ฅ˜ ยท ์ƒํƒœ ๊ด€๋ฆฌ)

ํ•ต์‹ฌ ๊ธฐ๋Šฅ

  • ๋ณ‘๋ ฌ ํฌ๋กค๋ง: ๊ณต์‹ ๊ธฐ๊ด€(KRCERTยทNCSCยท๋ณดํ˜ธ๋‚˜๋ผยทKISA)๊ณผ ๋ฏผ๊ฐ„ ๋งค์ฒด๋ฅผ ํ•จ๊ป˜ ์ˆ˜์ง‘
  • ํ‚ค์›Œ๋“œ ํ•„ํ„ฐ: ๋ณด์•ˆ ๊ด€๋ จ ํ‚ค์›Œ๋“œ๋กœ ๋…ธ์ด์ฆˆ ์ œ๊ฑฐ
  • LLM ์š”์•ฝ: GLM-4.7(Z.ai)๋กœ 140์ž ํ•ต์‹ฌ ์š”์•ฝ + ๋ฐฐ๊ฒฝยท์‹œ์‚ฌ์ ยท๋Œ€์‘ ๋ฐฉ์•ˆ ๋ถ„์„
  • Notion ์ •๋ฆฌ: ์ž๋™ ํƒœ๊ทธยท์ƒํƒœ(New โ†’ Read โ†’ Archived) ๊ด€๋ฆฌ, Tistory ๋ฐœํ–‰์€ ์„ ํƒ

โš–๏ธ ๋ผ์ด์„ ์Šค

MIT License โ€” ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉยท์ˆ˜์ •ยท๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

โš ๏ธ ์ฃผ์˜์‚ฌํ•ญ

  • ์š”์•ฝ์— GLM-4.7 API ํ‚ค(Z.ai)์™€ Notion API ํ‚คยทDB ID๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ํฌ๋กค๋ง ๋Œ€์ƒ ์‚ฌ์ดํŠธ์˜ ๊ตฌ์กฐ๊ฐ€ ๋ฐ”๋€Œ๋ฉด ์ผ๋ถ€ ์†Œ์Šค ์ˆ˜์ง‘์ด ์‹คํŒจํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • 1์‹œ๊ฐ„ ์ฃผ๊ธฐ ๋ฐ๋ชฌ ๋˜๋Š” cron์œผ๋กœ ์šด์˜ํ•ฉ๋‹ˆ๋‹ค(๊ณผ๋„ํ•œ ์š”์ฒญ์€ ์ฐจ๋‹จ๋  ์ˆ˜ ์žˆ์œผ๋‹ˆ ์ฃผ๊ธฐ๋ฅผ ์ง€ํ‚ค์„ธ์š”).

๐Ÿš€ ์‹คํ–‰ ๋ฐฉ๋ฒ•

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
# ์„ค์น˜
pip install -r requirements.txt

# 1ํšŒ ์‹คํ–‰
python security_news_aggregator.py --once

# ํŠน์ • ์†Œ์Šค๋งŒ
python security_news_aggregator.py --sources krcert,ncsc

# cron (3์‹œ๊ฐ„๋งˆ๋‹ค)
0 */3 * * * cd /path/to/security-news-feed && python3 security_news_aggregator.py --once

๐Ÿ’ฌ ํ”ผ๋“œ๋ฐฑ

๋ฒ„๊ทธยท๊ธฐ๋Šฅ ์ œ์•ˆยทํ’€ ๋ฆฌํ€˜์ŠคํŠธ๋ฅผ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. GitHub Issues ๋กœ ๋‚จ๊ฒจ ์ฃผ์„ธ์š”.