Arkime 3.1 ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ ์ธ๋ฑ์‹ฑ ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŠธ๋ž˜ํ”ฝ ํ๋ฆ„์„ ์‹œ๊ฐ์ ์œผ๋กœ ํ‰๊ฐ€ํ•˜๊ณ  ๋„คํŠธ์›Œํฌ ํ™œ๋™๊ณผ ๊ด€๋ จ๋œ ์ •๋ณด๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š” ๋„๊ตฌ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋„คํŠธ์›Œํฌ ํŒจํ‚ท ์บก์ฒ˜, ์ €์žฅ ๋ฐ ์ธ๋ฑ์‹ฑ์„ ์œ„ํ•œ ์‹œ์Šคํ…œ ๋ฆด๋ฆฌ์Šค์ธ Arkime 3.1์ด ์ค€๋น„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” ์›๋ž˜ ์ดˆ๋‹น ์ˆ˜์‹ญ ๊ธฐ๊ฐ€๋น„ํŠธ์˜ ์†๋„๋กœ ํŠธ๋ž˜ํ”ฝ์„ ์ฒ˜๋ฆฌํ•˜๋„๋ก ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋Š” ์ƒ์šฉ ๋„คํŠธ์›Œํฌ ํŒจํ‚ท ์ฒ˜๋ฆฌ ํ”Œ๋žซํผ์— ๋Œ€ํ•œ ๊ฐœ๋ฐฉ์ ์ด๊ณ  ๋ฐฐํฌ ๊ฐ€๋Šฅํ•œ ๋Œ€์ฒดํ’ˆ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ AOL์—์„œ ๊ฐœ๋ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํŠธ๋ž˜ํ”ฝ ์บก์ฒ˜ ๊ตฌ์„ฑ ์š”์†Œ ์ฝ”๋“œ๋Š” C๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ ์ธํ„ฐํŽ˜์ด์Šค๋Š” Node.js/JavaScript๋กœ ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์†Œ์Šค ์ฝ”๋“œ๋Š” Apache 2.0 ๋ผ์ด์„ผ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. Linux ๋ฐ FreeBSD์—์„œ์˜ ์ž‘์—…์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. Arch, CentOS ๋ฐ Ubuntu์šฉ ๊ธฐ์„ฑ ํŒจํ‚ค์ง€๊ฐ€ ์ค€๋น„๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

Arkime์—๋Š” ๊ธฐ๋ณธ PCAP ํ˜•์‹์œผ๋กœ ํŠธ๋ž˜ํ”ฝ์„ ์บก์ฒ˜ํ•˜๊ณ  ์ธ๋ฑ์‹ฑํ•˜๋Š” ๋„๊ตฌ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ ์ธ๋ฑ์‹ฑ๋œ ๋ฐ์ดํ„ฐ์— ๋น ๋ฅด๊ฒŒ ์•ก์„ธ์Šคํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. PCAP ํ˜•์‹์„ ์‚ฌ์šฉํ•˜๋ฉด Wireshark์™€ ๊ฐ™์€ ๊ธฐ์กด ํŠธ๋ž˜ํ”ฝ ๋ถ„์„๊ธฐ์™€์˜ ํ†ตํ•ฉ์ด ํฌ๊ฒŒ ๋‹จ์ˆœํ™”๋ฉ๋‹ˆ๋‹ค. ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ์˜ ์–‘์€ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋””์Šคํฌ ์–ด๋ ˆ์ด์˜ ํฌ๊ธฐ์— ์˜ํ•ด์„œ๋งŒ ์ œํ•œ๋ฉ๋‹ˆ๋‹ค. ์„ธ์…˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋Š” Elasticsearch ์—”์ง„์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํด๋Ÿฌ์Šคํ„ฐ์— ์ธ๋ฑ์‹ฑ๋ฉ๋‹ˆ๋‹ค.

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

Arkime 3.1 ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ ์ธ๋ฑ์‹ฑ ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Arkime์€ ์„ธ ๊ฐ€์ง€ ๊ธฐ๋ณธ ๊ตฌ์„ฑ ์š”์†Œ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

  • ํŠธ๋ž˜ํ”ฝ ์บก์ฒ˜ ์‹œ์Šคํ…œ์€ ํŠธ๋ž˜ํ”ฝ ๋ชจ๋‹ˆํ„ฐ๋ง, ๋””์Šคํฌ์— PCAP ํ˜•์‹์˜ ๋คํ”„ ์“ฐ๊ธฐ, ์บก์ฒ˜๋œ ํŒจํ‚ท ๊ตฌ๋ฌธ ๋ถ„์„, ์„ธ์…˜(SPI, Stateful ํŒจํ‚ท ๊ฒ€์‚ฌ) ๋ฐ ํ”„๋กœํ† ์ฝœ์— ๋Œ€ํ•œ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ Elasticsearch ํด๋Ÿฌ์Šคํ„ฐ๋กœ ๋ณด๋‚ด๊ธฐ ์œ„ํ•œ ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ C ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ž…๋‹ˆ๋‹ค. PCAP ํŒŒ์ผ์„ ์•”ํ˜ธํ™”๋œ ํ˜•์‹์œผ๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๊ฐ ํŠธ๋ž˜ํ”ฝ ์บก์ฒ˜ ์„œ๋ฒ„์—์„œ ์‹คํ–‰๋˜๊ณ  API๋ฅผ ํ†ตํ•ด ์ƒ‰์ธํ™”๋œ ๋ฐ์ดํ„ฐ ์•ก์„ธ์Šค ๋ฐ PCAP ํŒŒ์ผ ์ „์†ก๊ณผ ๊ด€๋ จ๋œ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๋Š” Node.js ํ”Œ๋žซํผ ๊ธฐ๋ฐ˜์˜ ์›น ์ธํ„ฐํŽ˜์ด์Šค์ž…๋‹ˆ๋‹ค.
  • Elasticsearch ๊ธฐ๋ฐ˜์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ ์ €์žฅ.

Arkime 3.1 ๋„คํŠธ์›Œํฌ ํŠธ๋ž˜ํ”ฝ ์ธ๋ฑ์‹ฑ ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

  • IETF QUIC, GENEVE, VXLAN-GPE ํ”„๋กœํ† ์ฝœ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • VLAN ํƒœ๊ทธ๋ฅผ ๋‘ ๋ฒˆ์งธ ์ˆ˜์ค€ ํƒœ๊ทธ์— ์บก์Šํ™”ํ•˜์—ฌ VLAN ์ˆ˜๋ฅผ 16๋งŒ ๊ฐœ๋กœ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋Š” Q-in-Q(์ด์ค‘ VLAN) ์œ ํ˜•์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • "float" ํ•„๋“œ ์œ ํ˜•์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Amazon Elastic Compute Cloud์˜ ๋…น์Œ ๋ชจ๋“ˆ์ด IMDSv2(Instance Metadata Service) ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜๋„๋ก ๋ณ€ํ™˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • UDP ํ„ฐ๋„์„ ์ถ”๊ฐ€ํ•˜๋„๋ก ์ฝ”๋“œ๊ฐ€ ๋ฆฌํŒฉํ„ฐ๋ง๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • elasticsearchAPIKey ๋ฐ elasticsearchBasicAuth์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€