nDPI 3.0 ์‹ฌ์ธต ํŒจํ‚ท ๊ฒ€์‚ฌ ๊ฐ€๋Šฅ

๊ณ„ํš ์—”ํƒ‘, ํŠธ๋ž˜ํ”ฝ ์บก์ฒ˜ ๋ฐ ๋ถ„์„ ๋„๊ตฌ ๊ฐœ๋ฐœ, ์ถœํŒ ์‹ฌ์ธต ํŒจํ‚ค์ง€ ๊ฒ€์‚ฌ ๋„๊ตฌ ์ถœ์‹œ nDPI 3.0, ๋„์„œ๊ด€์˜ ์ง€์†์ ์ธ ๊ฐœ๋ฐœ ์˜คํ”ˆDPI. nDPI ํ”„๋กœ์ ํŠธ๋Š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ „์†กํ•˜๋ ค๋Š” ์‹œ๋„๊ฐ€ ์‹คํŒจํ•œ ํ›„ ์„ค๋ฆฝ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ €์žฅ์†Œ ๋™๋ฐ˜๋˜์ง€ ์•Š์€ OpenDPI. nDPI ์ฝ”๋“œ๋Š” C๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ ๋ฐฐํฌ์ž LGPLv3์— ๋”ฐ๋ผ ๋ผ์ด์„ผ์Šค๊ฐ€ ๋ถ€์—ฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

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

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

์ด 238๊ฐœ์˜ ํ”„๋กœํ† ์ฝœ ๋ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ •์˜๊ฐ€ ์ง€์›๋ฉ๋‹ˆ๋‹ค.
OpenVPN, Tor, QUIC, SOCKS, BitTorrent ๋ฐ IPsec์—์„œ ํ…”๋ ˆ๊ทธ๋žจ์œผ๋กœ,
Viber, WhatsApp, PostgreSQL ๋ฐ GMail, Office365 ํ˜ธ์ถœ
GoogleDocs ๋ฐ YouTube. ์•”ํ˜ธํ™” ์ธ์ฆ์„œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœํ† ์ฝœ(์˜ˆ: Citrix Online ๋ฐ Apple iCloud)์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋ฒ„ ๋ฐ ํด๋ผ์ด์–ธํŠธ SSL ์ธ์ฆ์„œ ๋””์ฝ”๋”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. nDPIreader ์œ ํ‹ธ๋ฆฌํ‹ฐ๋Š” ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด pcap ๋คํ”„ ๋‚ด์šฉ์ด๋‚˜ ํ˜„์žฌ ํŠธ๋ž˜ํ”ฝ์„ ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.

$ ./nDPIreader -i eth0 -s 20 -f "ํ˜ธ์ŠคํŠธ 192.168.1.10"

๊ฐ์ง€๋œ ํ”„๋กœํ† ์ฝœ:
DNS ํŒจํ‚ท: 57๋ฐ”์ดํŠธ: 7904 ํ๋ฆ„: 28
SSL_No_Cert ํŒจํ‚ท: 483๋ฐ”์ดํŠธ: 229203 ํ๋ฆ„: 6
FaceBook ํŒจํ‚ท: 136๋ฐ”์ดํŠธ: 74702 ํ๋ฆ„: 4
DropBox ํŒจํ‚ท: 9๋ฐ”์ดํŠธ: 668๊ฐœ ํ๋ฆ„: 3
Skype ํŒจํ‚ท: 5๋ฐ”์ดํŠธ: 339 ํ๋ฆ„: 3
Google ํŒจํ‚ท: 1700๋ฐ”์ดํŠธ: 619135 ํ๋ฆ„: 34

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

  • ์ด์ œ ํ”„๋กœํ† ์ฝœ์— ๋Œ€ํ•œ ์ •๋ณด๋Š” ์ „์ฒด ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๊ฐ€ ์ˆ˜์‹ ๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ์ง€ ์•Š๊ณ  ์ •์˜ ์ฆ‰์‹œ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค(ํ•ด๋‹น ๋„คํŠธ์›Œํฌ ํŒจํ‚ท ์ˆ˜์‹  ์‹คํŒจ๋กœ ์ธํ•ด ํŠน์ • ํ•„๋“œ๊ฐ€ ์•„์ง ๊ตฌ๋ฌธ ๋ถ„์„๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ์—๋„ ๋งˆ์ฐฌ๊ฐ€์ง€). ์ด๋Š” ์ฆ‰์‹œ ์ฒ˜๋ฆฌํ•ด์•ผ ํ•˜๋Š” ํŠธ๋ž˜ํ”ฝ ๋ถ„์„๊ธฐ์— ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ํŠน์ • ์œ ํ˜•์˜ ํŠธ๋ž˜ํ”ฝ์— ์‘๋‹ตํ•ฉ๋‹ˆ๋‹ค. ์ „์ฒด ํ”„๋กœํ† ์ฝœ ๋ถ„์„์ด ํ•„์š”ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฒฝ์šฐ ๋ชจ๋“  ํ”„๋กœํ† ์ฝœ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๊ฐ€ ์ •์˜๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ndpi_extra_dissection_possible() API๊ฐ€ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
  • TLS์˜ ์‹ฌ์ธต ๊ตฌ๋ฌธ ๋ถ„์„์„ ๊ตฌํ˜„ํ•˜์—ฌ ์ธ์ฆ์„œ์˜ ์ •ํ™•์„ฑ๊ณผ ์ธ์ฆ์„œ์˜ SHA-1 ํ•ด์‹œ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ถ”์ถœํ–ˆ์Šต๋‹ˆ๋‹ค.
  • CSV ํ˜•์‹์œผ๋กœ ๋‚ด๋ณด๋‚ด๊ธฐ ์œ„ํ•ด nDPIreader ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— "-C" ํ”Œ๋ž˜๊ทธ๊ฐ€ ์ถ”๊ฐ€๋˜์–ด ์ถ”๊ฐ€ ntop ํˆดํ‚ท์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜ํ–‰ํ•˜๋‹ค ๋งค์šฐ ๋ณต์žกํ•œ ํ†ต๊ณ„ ์ƒ˜ํ”Œ. ์˜ˆ๋ฅผ ๋“ค์–ด, NetFlix์—์„œ ์˜ํ™”๋ฅผ ๊ฐ€์žฅ ์˜ค๋žซ๋™์•ˆ ์‹œ์ฒญํ•œ ์‚ฌ์šฉ์ž์˜ IP๋ฅผ ํ™•์ธํ•˜๋ ค๋ฉด ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜์„ธ์š”.

    $ ndpiReader -i netflix.pcap -C /tmp/netflix.csv
    $ q -H -d ',' "/tmp/netflix.csv์—์„œ src_ip,SUM(src2dst_bytes+dst2src_bytes)์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ '%NetFlix%'์™€ ๊ฐ™์€ ndpi_proto๋Š” src_ip๋ณ„๋กœ ๊ทธ๋ฃนํ™”๋ฉ๋‹ˆ๋‹ค."

    192.168.1.7,6151821

  • ์ œ์•ˆ๋œ ๋‚ด์šฉ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์‹œ์Šค์ฝ” ์กฐ์ด ์žฅ๋น„ ํŒจํ‚ท ํฌ๊ธฐ ๋ฐ ์ „์†ก ์‹œ๊ฐ„/์ง€์—ฐ ์‹œ๊ฐ„ ๋ถ„์„์„ ์‚ฌ์šฉํ•˜์—ฌ ์•”ํ˜ธํ™”๋œ ํŠธ๋ž˜ํ”ฝ์— ์ˆจ๊ฒจ์ง„ ์•…์„ฑ ํ™œ๋™์„ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค. ndpiReader์—์„œ ๋ฉ”์†Œ๋“œ๋Š” "-J" ์˜ต์…˜์— ์˜ํ•ด ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค.
  • ํ”„๋กœํ† ์ฝœ์„ ๋ฒ”์ฃผ๋กœ ๋ถ„๋ฅ˜ํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
  • ์˜ˆ๋ฅผ ๋“ค์–ด DoS ๊ณต๊ฒฉ ์ค‘ ํ”„๋กœํ† ์ฝœ ์‚ฌ์šฉ์„ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋กœํ† ์ฝœ ์‚ฌ์šฉ์˜ ์ด์ƒ์„ ์‹๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด IAT(๋„์ฐฉ ๊ฐ„ ์‹œ๊ฐ„) ๊ณ„์‚ฐ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์—”ํŠธ๋กœํ”ผ, ํ‰๊ท , ํ‘œ์ค€ํŽธ์ฐจ, ๋ถ„์‚ฐ ๋“ฑ ๊ณ„์‚ฐ๋œ ์ง€ํ‘œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋ฐ์ดํ„ฐ ๋ถ„์„ ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Python ์–ธ์–ด์— ๋Œ€ํ•œ ๋ฐ”์ธ๋”ฉ์˜ ์ดˆ๊ธฐ ๋ฒ„์ „์ด ์ œ์•ˆ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ ์œ ์ถœ์„ ๊ฐ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ํŠธ๋ž˜ํ”ฝ์—์„œ ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ž์—ด์„ ๊ฐ์ง€ํ•˜๋Š” ๋ชจ๋“œ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์•ˆ์—
    ndpiReader ๋ชจ๋“œ๋Š” "-e" ์˜ต์…˜์œผ๋กœ ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค.

  • TLS ํด๋ผ์ด์–ธํŠธ ์‹๋ณ„ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. JA3, ์—ฐ๊ฒฐ ์กฐ์ •์˜ ํŠน์„ฑ๊ณผ ์ง€์ •๋œ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์—ฐ๊ฒฐ์„ ์„ค์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์˜ˆ๋ฅผ ๋“ค์–ด Tor ๋ฐ ๊ธฐํƒ€ ํ‘œ์ค€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์˜ ์‚ฌ์šฉ์„ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค).
  • SSH ๊ตฌํ˜„์„ ์‹๋ณ„ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค(ํ•ด์‹œ) ๋ฐ DHCP.
  • ๋ฐ์ดํ„ฐ๋ฅผ ์ง๋ ฌํ™” ๋ฐ ์—ญ์ง๋ ฌํ™”ํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    TLV(์œ ํ˜•-๊ธธ์ด-๊ฐ’) ๋ฐ JSON ํ˜•์‹.

  • ํ”„๋กœํ† ์ฝœ ๋ฐ ์„œ๋น„์Šค์— ๋Œ€ํ•œ ์ง€์› ์ถ”๊ฐ€: DTLS(TLS over UDP),
    Hulu,
    TikTok/Musical.ly,
    ์™“์ธ ์•ฑ ๋น„๋””์˜ค,
    DNSoverHTTPS
    ๋ฐ์ดํ„ฐ ์„ธ์ด๋ฒ„
    ์„ ,
    ๊ตฌ๊ธ€ ๋“€์˜ค, โ€‹โ€‹ํ–‰์•„์›ƒ,
    ์™€์ด์–ด๊ฐ€๋“œ VPN,
    ์•„์ด๋ชจ,
    Zoom.us.

  • TLS, SIP, STUN ๋ถ„์„์— ๋Œ€ํ•œ ์ง€์›์ด ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    ๋ฐ”์ดํผ,
    WhatsApp,
    ์•„๋งˆ์กด ๋น„๋””์˜ค,
    ์Šค๋ƒ…์ฑ—
    FTP,
    QUIC
    OpenVPN UDP,
    ํŽ˜์ด์Šค๋ถ ๋ฉ”์‹ ์ €์™€ ํ–‰์•„์›ƒ.

์ถœ์ฒ˜ : opennet.ru

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