ืืคื ืืกืืืืกืืืงื, ื ืคื ืืชืขืืืจื ืืจืฉืช ืืื ืื-50% ืืื ืฉื ื. ืื ืืืืื ืืขืืืื ืืขืืืก ืขื ืืฆืืื ืืืืืืื ืืืืื ืืช ืืจืืฉืืช ืืืืฆืืขืื ืฉื IDS โโ/ IPS. ืืชื ืืืื ืืงื ืืช ืืืืจื ืืืืืืช ืืืงืจื, ืืื ืืฉ ืืคืฉืจืืช ืืืื ืืืชืจ - ืืื ืกืช ืืืช ืืืขืจืืืช ืืงืื ืืคืชืื. ืื ืืื ืืขืจืืช ืืชืืืืื ืจืืื ืืชืงืฉืื ืืืชืงืื ืืืืืืืจ IPS ืืืื ื. ืืืงืจื ืฉื Suricata, ืื ืื ืืืืจื ื ืืื - ืืชื ืืืื ืืืชืงืื ืืช ืื ืืืืชืืื ืืืืืฃ ืืชืงืคืืช ืืืคืืื ืืืช ืขื ืกื ืืืงืื ืืื ืืืื ืชืื ืืกืคืจ ืืงืืช.
ืืื ืื ืื ื ืฆืจืืืื ืขืื IPS ืคืชืื?
ืืื ืจื ืฉื ืืฉื ืืกืื ืืจื, Snort ื ืืฆื ืืคืืชืื ืืื ืกืืฃ ืฉื ืืช ืืชืฉืขืื, ืื ืื ืืื ืืืงืืจ ืขื ืืื ืืืื. ืืืืื ืืฉื ืื ืืืคืืขื ืื ืื ืืคืืฆ'ืจืื ืืืืืจื ืืื, ืืื ืชืืืื ื-IPv6, ืืืืืืช ืื ืชื ืคืจืืืืงืืืื ืืจืืช ืืืคืืืงืฆืื ืื ืืืืื ืืืฉื ืืื ืืืจืกืื ืื ืชืื ืื.
ืื ืืข ืืืืื Snort 2.X ืืื ืืขืืื ืขื ืืืืืช ืืจืืืืช, ืื ื ืฉืืจ ืขื ืคืชืื ืืืื ืืืื ืืื ื ืืืื ืื ืฆื ืืฆืืจื ืืืืืืช ืืช ืคืืืคืืจืืืช ืืืืืจื ืืืืืจื ืืืช.
ืืืขืื ื ืคืชืจื ืืืจืกื ืืฉืืืฉืืช ืฉื ืืืขืจืืช, ืืื ืืงื ืื ืื ืืจืื ืืื ืืืชืืื ื ืขื ืฉ-Suricata, ืฉื ืืชืื ืืืคืก, ืืฆืืืื ืืืืคืืข ืืฉืืง. ื-2009 ืืืื ืืคืชื ืืืชื ืืืืงื ืืืืืคื ืืจืืืช ืืืืื ืฉืจืฉืจืช ื-Snort, ืฉืืฉ ืื ืคืื ืงืฆืืืช IPS ืืืืฅ ืืงืืคืกื. ืืงืื ืืืคืฅ ืชืืช ืจืืฉืืื GPLv2, ืื ืืฉืืชืคืื ืืคืื ื ืกืืื ืฉื ืืคืจืืืงื ืืฉ ืืืฉื ืืืจืกื ืกืืืจื ืฉื ืืื ืืข. ืืื ืืขืืืช ืืืจืืืืช ืืชืขืืจืจื ืืืจืกืืืช ืืจืืฉืื ืืช ืฉื ืืืขืจืืช, ืื ืื ื ืคืชืจื ืืืืืจืืช.
ืืื ืกืืจืืงื?
ื-Suricata ืืฉ ืืกืคืจ ืืืืืืื (ืืืืื ื-Snort): ืืืืื, ืืืืื, ืคืขื ืื, ืืืืื ืืคืื. ืืืจืืจืช ืืืื, ืืชืขืืืจื ืฉื ืืืื ืขืืืจืช ืืคื ื ืืคืขื ืื ืืืจื ืืื, ืื ืื ืื ืืืขื ืืช ืืืขืจืืช ืืืชืจ. ืืืืืช ืืฆืืจื, ื ืืชื ืืืืง ืฉืจืฉืืจืื ืืืืืจืืช ืืืืคืืฅ ืืื ืืืขืืืื - Suricata ืืืชืืืช ืืืื ืืืืืจื ืกืคืฆืืคืืช, ืื ืื ืื ืืืจ ืื ืจืืช HOWTO ืืืชืืืืื. ืืื ืื, ืจืืื ืืฆืืื ืื ื-Suricata ืืฉ ืืื ืืืืงืช HTTP ืืชืงืืืื ืืืืืกืกืื ืขื ืกืคืจืืืช HTP. ื ืืชื ืืืฉืชืืฉ ืืื ืื ืืชืืขืื ืชืขืืืจื ืืื ืืืืื. ืืืขืจืืช ืชืืืืช ืื ืืคืขื ืื IPv6, ืืืื ืื ืืจืืช IPv4-in-IPv6, ืื ืืจืืช IPv6-in-IPv6 ืืขืื.
ื ืืชื ืืืฉืชืืฉ ืืืืฉืงืื ืฉืื ืื ืืืืจื ืชืขืืืจื (NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING), ืืืืฆื Unix Socket, ื ืืชื ืื ืชื ืืืืืืืืช ืงืืฆื PCAP ืฉื ืืืื ืขื ืืื ืจืืจื ืืืจ. ืื ืืกืฃ, ืืืจืืืืงืืืจื ืืืืืืืจืืช ืฉื Suricata ืืงืื ืขื ืืืืืจ ืืืื ืืื ืืืฉืื ืืืืืื, ืคืขื ืื, ื ืืชืื ืืขืืืื ืื ืืช ืจืฉืช. ืืื ืื, ืืฉืื ืืฆืืื ืฉืืกืืจืืงืื ืืกืืืช ืืชืขืืืจื ืืืืฆืขืืช ืคืืืืจ ืจืืื ืฉื ืืขืจืืช ืืืคืขืื. ื-GNU/Linux ืืฉ ืฉืชื ืืคืฉืจืืืืช ืืืืคื ืืคืขืืื ืฉื IPS: ืืจื ืชืืจ NFQUEUE (ืืฆื NFQ) ืืืจื ืืขืชืงื ืืคืก (ืืฆื AF_PACKET). ืืืงืจื ืืจืืฉืื, ืืืืืื ืฉื ืื ืกืช ื-iptables ื ืฉืืืช ืืชืืจ NFQUEUE, ืฉื ื ืืชื ืืขืื ืืืชื ืืจืืช ืืืฉืชืืฉ. Suricata ืืคืขืื ืืืชื ืืคื ืืืืืื ืฉืื ืืืืฆืื ืืื ืืฉืืืฉืช ืคืกืงื ืืื: NF_ACCEPT, NF_DROP ื-NF_REPEAT. ืืฉืชืืื ืืจืืฉืื ืืช ืืืื ืืช ืืืืืื, ืืขืื ืฉืืืืจืื ืืืคืฉืจ ืืชืืื ืื ืืช ืืืฉืืื ืืจืืฉ ืืืืช iptables ืื ืืืืืช. ืืฆื AF_PACKET ืืืืจ ืืืชืจ, ืื ืืื ืืืื ืืกืคืจ ืืืืืืช ืขื ืืืขืจืืช: ืขืืื ืืืืืช ืืขื ืฉื ื ืืืฉืงื ืจืฉืช ืืืขืืื ืืฉืขืจ. ืืืืืื ืืืกืืื ืคืฉืื ืื ืืืขืืจืช ืืืืฉืง ืืฉื ื.
ืชืืื ื ืืฉืืื ืฉื Suricata ืืื ืืืืืืช ืืืฉืชืืฉ ืืคืืชืืืื ืขืืืจ Snort. ืืื ืื ืืืขืจืืช ืืฉ ืืืฉื, ืืืืืื, ืืืขืจืืืช ืืืืืื ืฉื Sourcefire VRT ื-OpenSource Emerging Threats, ืืื ืื ื-Emerging Threats Pro ืืืกืืจื. ื ืืชื ืื ืชื ืืช ืืคืื ืืืืืื ืืืืฆืขืืช ืงืฆื ืืืืจื ืคืืคืืืจื, ืคืื PCAP ื-Syslog ื ืชืื ืื ืื. ืืืืจืืช ืืืืื ืืขืจืืช ืืืืืกื ืื ืืงืืฆื YAML, ืฉืงื ืืงืจืื ืืืชื ืื ืืชื ืื ืืขืืืื ืืืืืืื. ืื ืืข Suricata ืืืื ืคืจืืืืงืืืื ืจืืื, ืื ืฉืืืืืื ืืื ื ืฆืจืืืื ืืืืืช ืงืฉืืจืื ืืืกืคืจ ืืฆืืื. ืื ืืกืฃ, ืืจืขืืื ืฉื flowbits ืืชืืจืื ืืืืคื ืคืขืื ืืืืื Suricata. ืืื ืืขืงืื ืืืจ ืืืจืืืจ, ืืฉืชื ื ืืคืขืื ืืฉืืฉืื ืืืฆืืจื ืืืืื ืฉื ืืื ืื ืืืืืื ืฉืื ืื. IDS ืจืืื ืืชืืืืกืื ืืืืืืจื TCP ืฉืื ืื ืืื ืืฉืืืืช ื ืคืจืืืช ืืืืชืื ืฉืื ืืจืื ืงืฉืจ ืืื ืืื ืืืขืื ืขื ืชืืืืชื ืฉื ืืชืงืคื. Suricata ืื ืกื ืืจืืืช ืืช ืื ืืชืืื ื ืืืืงืจืื ืจืืื ืืืื ืชืขืืืจื ืืืื ืืช ืืืืคืฆืช ืขื ืคื ื ืืืืืจืื ืฉืื ืื. ืืคืฉืจ ืืืืจ ืขื ืืืชืจืื ืืช ืฉืื ืืจืื ืืื, ืืืื ืฉื ืขืืืจ ืืืชืงื ื ืืชืฆืืจื.
ืืืฆื ืืืชืงืื?
ื ืชืงืื ืืช Suricata ืขื ืฉืจืช ืืืจืืืืื ืฉืืจืืฅ ืืืืื ืื 18.04 LTS. ืืฉ ืืืฆืข ืืช ืื ืืคืงืืืืช ืืฉื ืืฉืชืืฉ ืืขื (ืฉืืจืฉ). ืืืคืฉืจืืช ืืืืืืืืช ืืืืชืจ ืืื ืืืื ืืก SSH ืืฉืจืช ืืืฉืชืืฉ ืจืืื ืืืืืจ ืืื ืืืฉืชืืฉ ืืืื ืืขืืจ sudo ืืื ืืืขืืืช ืืจืฉืืืช. ืจืืฉืืช ืขืืื ืืืชืงืื ืืช ืืืืืืืช ืฉืื ื ืฆืจืืืื:
sudo apt -y install libpcre3 libpcre3-dev build-essential autoconf automake libtool libpcap-dev libnet1-dev libyaml-0-2 libyaml-dev zlib1g zlib1g-dev libmagic-dev libcap-ng-dev libjansson-dev pkg-config libnetfilter-queue-dev geoip-bin geoip-database geoipupdate apt-transport-https
ืืืืืจ ืืืืจ ืืืฆืื ื:
sudo add-apt-repository ppa:oisf/suricata-stable
sudo apt-get update
ืืชืงื ืืช ืืืจืกื ืืืฆืืื ืืืืจืื ื ืฉื Suricata:
sudo apt-get install suricata
ืืืืืช ืืฆืืจื, ืขืจืื ืืช ืฉื ืงืืฆื ืืชืฆืืจื, ืชืื ืืืืคืช ืืจืืจืช ืืืืื eth0 ืืฉื ืืืืืชื ืฉื ืืืืฉืง ืืืืฆืื ื ืฉื ืืฉืจืช. ืืืืจืืช ืืจืืจืช ืืืืื ืืืืืกื ืืช ืืงืืืฅ /etc/default/suricata, ืืืืืจืืช ืืืชืืืืช ืืืฉืืช ืืืืืกื ืืช ื- /etc/suricata/suricata.yaml. ืืืืจืช IDS ืืืืืืช ืืขืืงืจ ืืขืจืืืช ืงืืืฅ ืชืฆืืจื ืื. ืืฉ ืื ืืจืื ืคืจืืืจืื, ืืคื ืืฉื ืืืืืจื, ืืืคืคืื ืืื ืืืืื ืฉื Snort. ืขื ืืืช, ืืชืืืืจ ืฉืื ื ืืืื, ืืื ืืงืืืฅ ืืจืื ืืืชืจ ืงื ืืงืจืืื ืืืฉืจ ืชืฆืืจืืช Snort, ืืืื ืืงืื ืืขืจืืช ืืืืืช.
sudo nano /etc/default/suricata
ะธ
sudo nano /etc/suricata/suricata.yaml
ืชืฉืืืช ืืื! ืืคื ื ืฉืืชืืืืื, ืืืื ืืืืืง ืืช ืขืจืื ืืืฉืชื ืื ืืงืืข vars.
ืืื ืืืฉืืื ืืช ืืืืืจื, ืชืฆืืจื ืืืชืงืื ืืช suricata-update ืืื ืืขืืื ืืืืขืื ืืช ืืืืืื. ืื ืื ืงื ืืขืฉืืช ืืช ืื:
sudo apt install python-pip
sudo pip install pyyaml
sudo pip install <a href="https://github.com/OISF/suricata-update/archive/master.zip">https://github.com/OISF/suricata-update/archive/master.zip</a>
sudo pip install --pre --upgrade suricata-update
ืืืืจ ืืื, ืขืืื ื ืืืคืขืื ืืช ืืคืงืืื suricata-update ืืื ืืืชืงืื ืืช ืขืจืืช ืืืืืื ืฉื Emerging Threats Open:
sudo suricata-update
ืืื ืืืฆืื ืืช ืจืฉืืืช ืืงืืจืืช ืืืืืื, ืืคืขื ืืช ืืคืงืืื ืืืื:
sudo suricata-update list-sources
ืขืืืื ืืงืืจืืช ืืืืื:
sudo suricata-update update-sources
ืืืงืืจ ืืืืจ ืืืงืืจืืช ืืขืืืื ืื:
sudo suricata-update list-sources
ืืืืืช ืืฆืืจื, ืชืืื ืืืืื ืืงืืจืืช ืืืื ืื ืืืื ื:
sudo suricata-update enable-source ptresearch/attackdetection
sudo suricata-update enable-source oisf/trafficid
sudo suricata-update enable-source sslbl/ssl-fp-blacklist
ืืืืจ ืืื, ืขืืื ืืขืืื ืฉืื ืืช ืืืืืื:
sudo suricata-update
ืื ืืฉืืื ืืช ืืืชืงื ื ืืืชืฆืืจื ืืจืืฉืื ืืช ืฉื Suricata ืืืืืื ืื 18.04 LTS. ืืื ืืชืืื ืืืืฃ: ืืืืืจ ืืื ื ืืืจ ืฉืจืช ืืืจืืืืื ืืจืฉืช ืืืฉืจืืืช ืืืืฆืขืืช VPN ืื ืชืืื ืื ืชื ืืช ืื ืืชืขืืืจื ืื ืื ืกืช ืืืืืฆืืช. ื ืงืืืฉ ืชืฉืืืช ืื ืืืืืืช ืืืกืืืช ืืชืงืคืืช DDoS, ืคืขืืืืช ืชืืื ืืช ืืืื ืืืช ืื ืืกืืื ืืช ืื ืฆื ื ืงืืืืช ืชืืจืคื ืืฉืืจืืชืื ืื ืืืฉืื ืืจืฉืชืืช ืฆืืืืจืืืช. ืืฉื ืืืืืจืืช, ืืชืงืคืืช ืืืกืืืื ืื ืคืืฆืื ืืืืชืจ ืืืืื ืกืืืืืฆืื.
ืืงืืจ: www.habr.com