เบ›เปˆเบญเบเบ•เบปเบงเบœเบนเป‰เบชเบฐเปเบฑเบเบชเบณเบฅเบฑเบšเบฅเบฐเบšเบปเบšเบเบงเบ”เบˆเบฑเบšเบเบฒเบ™เป‚เบˆเบกเบ•เบต Snort 3

เบšเปเบฅเบดเบชเบฑเบ” Cisco เบ›เบฐโ€‹เบเบฒเบ” ะพ ั„ะพั€ะผะธั€ะพะฒะฐะฝะธะธ ะบะฐะฝะดะธะดะฐั‚ะฐ ะฒ ั€ะตะปะธะทั‹ ะฟะพะปะฝะพัั‚ัŒัŽ ะฟะตั€ะตั€ะฐะฑะพั‚ะฐะฝะฝะพะน ัะธัั‚ะตะผั‹ ะฟั€ะตะดะพั‚ะฒั€ะฐั‰ะตะฝะธั ะฐั‚ะฐะบ snort 3, ั‚ะฐะบะถะต ะธะทะฒะตัั‚ะฝะพะน ะบะฐะบ ะฟั€ะพะตะบั‚ Snort++, ั€ะฐะฑะพั‚ะฐ ะฝะฐะด ะบะพั‚ะพั€ั‹ะผ ั ะฟะตั€ะตั€ั‹ะฒะฐะผะธ ะฒะตะดั‘ั‚ัั ะตั‰ั‘ ั 2005 ะณะพะดะฐ. ะกั‚ะฐะฑะธะปัŒะฝั‹ะน ั€ะตะปะธะท ะฟะปะฐะฝะธั€ัƒะตั‚ัั ะพะฟัƒะฑะปะธะบะพะฒะฐั‚ัŒ ะฒ ั‚ะตั‡ะตะฝะธะต ะผะตััั†ะฐ.

ะ’ ะฒะตั‚ะบะต Snort 3 ะฟะพะปะฝะพัั‚ัŒัŽ ะฟะตั€ะตะพัะผั‹ัะปะตะฝะฐ ะบะพะฝั†ะตะฟั†ะธั ะฟั€ะพะดัƒะบั‚ะฐ ะธ ะฟะตั€ะตั€ะฐะฑะพั‚ะฐะฝะฐ ะฐั€ั…ะธั‚ะตะบั‚ัƒั€ะฐ. ะกั€ะตะดะธ ะบะปัŽั‡ะตะฒั‹ั… ะฝะฐะฟั€ะฐะฒะปะตะฝะธะน ั€ะฐะทะฒะธั‚ะธั Snort 3: ัƒะฟั€ะพั‰ะตะฝะธะต ะฝะฐัั‚ั€ะพะนะบะธ ะธ ะทะฐะฟัƒัะบะฐ Snort, ะฐะฒั‚ะพะผะฐั‚ะธะทะฐั†ะธั ะบะพะฝั„ะธะณัƒั€ะธั€ะพะฒะฐะฝะธั, ัƒะฟั€ะพั‰ะตะฝะธั ัะทั‹ะบะฐ ะฟะพัั‚ั€ะพะตะฝะธั ะฟั€ะฐะฒะธะป, ะฐะฒั‚ะพะผะฐั‚ะธั‡ะตัะบะพะต ะพะฟั€ะตะดะตะปะตะฝะธะต ะฒัะตั… ะฟั€ะพั‚ะพะบะพะปะพะฒ, ะฟั€ะตะดะพัั‚ะฐะฒะปะตะฝะธั ะพะฑะพะปะพั‡ะบะธ ะดะปั ัƒะฟั€ะฐะฒะปะตะฝะธั ะธะท ะบะพะผะฐะฝะดะฝะพะน ัั‚ั€ะพะบะธ, ะฐะบั‚ะธะฒะฝะพะต ะฟั€ะธะผะตะฝะตะฝะธะต ะผะฝะพะณะพะฟะพั‚ะพั‡ะฝะพัั‚ะธ ั ัะพะฒะผะตัั‚ะฝั‹ะผ ะดะพัั‚ัƒะฟะพะผ ั€ะฐะทะฝั‹ั… ะพะฑั€ะฐะฑะพั‚ั‡ะธะบะพะฒ ะบ ะตะดะธะฝะพะน ะบะพะฝั„ะธะณัƒั€ะฐั†ะธะธ.

เบเบฒเบ™เบ›เบฐเบ”เบดเบ”เบชเป‰เบฒเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบ•เปเปˆเป„เบ›เบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”:

  • เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เป„เบ›เบชเบนเปˆเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบซเบกเปˆเบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡ syntax เบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเปเบฅเบฐเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ™เปเบฒเปƒเบŠเป‰ scripts เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปเบšเบšเป„เบ”เบ™เบฒเบกเบดเบ. LuaJIT เบ–เบทเบเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบ›เบฐเบกเบงเบ™เบœเบปเบ™เป„เบŸเบฅเปŒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ. Plugins เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ LuaJIT เป„เบ”เป‰เบ–เบทเบเบชเบฐเบซเบ™เบญเบ‡เปƒเบซเป‰เบเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบฒเบ‡เป€เบฅเบทเบญเบเป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบชเปเบฒเบฅเบฑเบšเบเบปเบ”เบฅเบฐเบšเบฝเบšเปเบฅเบฐเบฅเบฐเบšเบปเบšเบเบฒเบ™เบ•เบฑเบ”เป„เบกเป‰;
  • เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบเบงเบ”เบˆเบฑเบšเบเบฒเบ™เป‚เบˆเบกเบ•เบตเป„เบ”เป‰เบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡เปƒเบซเป‰เบ—เบฑเบ™เบชเบฐเป„เบซเบก, เบเบปเบ”เบฅเบฐเบšเบฝเบšเป„เบ”เป‰เบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡, เปเบฅเบฐเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบœเบนเบเบกเบฑเบ” buffers เปƒเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบš (buffers เบซเบ™เบฝเบง) เป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบก. เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ„เบปเป‰เบ™เบซเบฒ Hyperscan เป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเปƒเบŠเป‰เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบเบฐเบ•เบธเป‰เบ™เป„เบงเปเบฅเบฐเบ–เบทเบเบ•เป‰เบญเบ‡เบซเบผเบฒเบเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบเบ›เบปเบเบเบฐเบ•เบดเปƒเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบš;
  • เป€เบžเบตเปˆเบกเป‚เบซเบกเบ”เบเบฒเบ™เบเบงเบ”เบเบฒเปƒเบซเบกเปˆเบชเปเบฒเบฅเบฑเบš HTTP เบ—เบตเปˆเบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ‚เบญเบ‡เบเบญเบ‡เบ›เบฐเบŠเบธเบกเปเบฅเบฐเบเบงเบกเป€เบญเบปเบฒ 99% เบ‚เบญเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบŠเบธเบ”เบ—เบปเบ”เบชเบญเบšเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™. HTTP Evader. ะ”ะพะฑะฐะฒะปะตะฝะฐ ัะธัั‚ะตะผะฐ ะธะฝัะฟะตะบั‚ะธั€ะพะฒะฐะฝะธั ั‚ั€ะฐั„ะธะบะฐ HTTP/2;
  • เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‚เบญเบ‡เบฎเบนเบšเปเบšเบšเบเบฒเบ™เบเบงเบ”เบชเบญเบšเบŠเบญเบ‡เป€เบฅเบดเบเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบ. เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เปเบžเบฑเบเป€เบเบฑเบ”เบซเบผเบฒเบเบเบฐเบ—เบนเป‰, เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบžเป‰เบญเบกเป†เบเบฑเบ™เบ‚เบญเบ‡เบซเบผเบฒเบเบเบฐเบ—เบนเป‰เบเบฑเบšเป‚เบ›เป€เบŠเบ”เป€เบŠเบต packet เปเบฅเบฐเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเป€เบชเบฑเป‰เบ™เบ‚เบทเป‰เบ™เบเบฑเบšเบˆเปเบฒเบ™เบงเบ™เบ‚เบญเบ‡ CPU cores;
  • เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ—เบปเปˆเบงเป„เบ›เปเบฅเบฐเบ„เบธเบ™เบฅเบฑเบเบชเบฐเบ™เบฐเป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”, เป€เบŠเบดเปˆเบ‡เบ–เบทเบเปเบšเปˆเบ‡เบ›เบฑเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบฅเบฐเบšเบปเบšเบเปˆเบญเบเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบšเปเบฅเบดเป‚เบžเบเบซเบ™เปˆเบงเบเบ„เบงเบฒเบกเบˆเปเบฒเบซเบผเบธเบ”เบฅเบปเบ‡เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบเป‚เบ”เบเบเบฒเบ™เบเปเบฒเบˆเบฑเบ”เบเบฒเบ™เบŠเปเป‰เบฒเบŠเป‰เบญเบ™เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™;
  • เบฅเบฐเบšเบปเบšเบšเบฑเบ™เบ—เบถเบเป€เบซเบ”เบเบฒเบ™เปƒเบซเบกเปˆเป‚เบ”เบเปƒเบŠเป‰เบฎเบนเบšเปเบšเบš JSON เปเบฅเบฐเบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เป„เบ”เป‰เบขเปˆเบฒเบ‡เบ‡เปˆเบฒเบเบ”เบฒเบเบเบฑเบšเป€เบงเบ—เบตเบžเบฒเบเบ™เบญเบเป€เบŠเบฑเปˆเบ™ Elastic Stack;
  • เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เป„เบ›เบชเบนเปˆเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒ modular, เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ‚เบฐเบซเบเบฒเบเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเป‚เบ”เบเบœเปˆเบฒเบ™เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ plugins เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบฅเบฐเบšเบปเบšเบเปˆเบญเบเบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡ plugins เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ—เบปเบ”เปเบ—เบ™เป„เบ”เป‰. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เบซเบผเบฒเบเบฎเป‰เบญเบ plugins เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเป‰เบงเบชเปเบฒเบฅเบฑเบš Snort 3, เบเบงเบกเป€เบญเบปเบฒเบžเบทเป‰เบ™เบ—เบตเปˆเบ•เปˆเบฒเบ‡เป†เบ‚เบญเบ‡เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ, เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเบปเบเบ•เบปเบงเบขเปˆเบฒเบ‡, เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบžเบตเปˆเบก codecs เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เป€เบญเบ‡, เป‚เบซเบกเบ” introspection, เบงเบดเบ—เบตเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบ, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปเบฅเบฐเบ—เบฒเบ‡เป€เบฅเบทเบญเบเปƒเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบš;
  • เบเบฒเบ™เบเบงเบ”เบซเบฒเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปเบฅเปˆเบ™, เบฅเบปเบšเบฅเป‰เบฒเบ‡เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเบเปเบฒเบ™เบปเบ”เบžเบญเบ”เป€เบ„เบทเบญเบ‚เปˆเบฒเบเบ—เบตเปˆเบกเบตเบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เป„เบซเบงเบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡.
  • ะ”ะพะฑะฐะฒะปะตะฝะฐ ะฟะพะดะดะตั€ะถะบะฐ ั„ะฐะนะปะพะฒ ะดะปั ะฑั‹ัั‚ั€ะพะณะพ ะฟะตั€ะตะพะฟั€ะตะดะตะปะตะฝะธั ะฝะฐัั‚ั€ะพะตะบ, ะพั‚ะฝะพัะธั‚ะตะปัŒะฝะพ ะบะพะฝั„ะธะณัƒั€ะฐั†ะธะธ ะฟะพ ัƒะผะพะปั‡ะฐะฝะธัŽ. ะ”ะปั ัƒะฟั€ะพั‰ะตะฝะธั ะฝะฐัั‚ั€ะพะนะบะธ ะฟั€ะตะบั€ะฐั‰ะตะฝะพ ะธัะฟะพะปัŒะทะพะฒะฐะฝะธะต snort_config.lua ะธ SNORT_LUA_PATH.
    ะ”ะพะฑะฐะฒะปะตะฝะฐ ะฟะพะดะดะตั€ะถะบะฐ ะฟะตั€ะตะทะฐะณั€ัƒะทะบะธ ะฝะฐัั‚ั€ะพะตะบ ะฝะฐ ะปะตั‚ัƒ;

  • เบฅเบฐเบซเบฑเบ”เบชเบฐเบซเบ™เบญเบ‡เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เป‚เบ„เบ‡เบชเป‰เบฒเบ‡ C ++ เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เปƒเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™ C ++ 14 (เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ•เป‰เบญเบ‡เบเบฒเบ™ compiler เบ—เบตเปˆเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™ C ++ 14);
  • เป€เบžเบตเปˆเบกเบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™ VXLAN เปƒเปเปˆ;
  • เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบ„เบปเป‰เบ™เบซเบฒเบชเปเบฒเบฅเบฑเบšเบ›เบฐเป€เบžเบ”เป€เบ™เบทเป‰เบญเบซเบฒเป‚เบ”เบเป€เบ™เบทเป‰เบญเบซเบฒเป‚เบ”เบเบ™เปเบฒเปƒเบŠเป‰เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบ›เบฐเบ•เบดเบšเบฑเบ” algorithm เบ—เบฒเบ‡เป€เบฅเบทเบญเบ Boyer-Moore ะธ Hyperscan;
  • เบเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปเบกเปˆเบ™เป€เบฅเบฑเปˆเบ‡เป‚เบ”เบเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบซเบผเบฒเบเบซเบปเบงเบ‚เปเป‰เป€เบžเบทเปˆเบญเบฅเบงเบšเบฅเบงเบกเบเบธเปˆเบกเบ‚เบญเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบš;
  • เป€เบžเบตเปˆเบกเบเบปเบ™เป„เบเบเบฒเบ™เบ•เบฑเบ”เป„เบกเป‰เปƒเปเปˆ;
  • ะ”ะพะฑะฐะฒะปะตะฝะฐ ัะธัั‚ะตะผะฐ ะธะฝัะฟะตะบั‚ะธั€ะพะฒะฐะฝะธั RNA (Real-time Network Awareness), ัะพะฑะธั€ะฐัŽั‰ะฐั ัะฒะตะดะตะฝะธั ะพ ะดะพัั‚ัƒะฟะฝั‹ั… ะฒ ัะตั‚ะธ ั€ะตััƒั€ัะฐั…, ั…ะพัั‚ะฐั…, ะฟั€ะธะปะพะถะตะฝะธัั… ะธ ัะตั€ะฒะธัะฐั….

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™