stratospherelinuxips-custom
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (5.3%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: leeyonghe
- Language: Python
- Default Branch: main
- Size: 39.3 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
주의사항
이 저장소는 StratosphereLinuxIPS의 원본 프로젝트를 기반으로 하며, 코드 분석 및 커스터마이징 목적으로 포크되었습니다. 원본 프로젝트의 모든 권리는 Stratosphere Laboratory에 있습니다.
Slips v1.1.9
목차
Slips: 행동 기반 머신러닝 침입 방지 시스템
Slips는 머신러닝을 사용하여 네트워크 트래픽에서 악의적인 행동을 감지하는 강력한 엔드포인트 행동 기반 침입 방지 및 탐지 시스템입니다. Slips는 실시간 네트워크 트래픽, PCAP 파일, Suricata, Zeek/Bro, Argus와 같은 인기 도구의 네트워크 흐름을 분석할 수 있습니다. Slips의 위협 탐지는 악의적인 행동을 감지하도록 훈련된 머신러닝 모델, 40개 이상의 위협 인텔리전스 피드, 전문가 휴리스틱의 조합을 기반으로 합니다. Slips는 악의적인 행동의 증거를 수집하고 충분한 증거가 누적될 때 경고를 트리거하기 위해 광범위하게 훈련된 임계값을 사용합니다.

소개
Slips는 엔드포인트용 최초의 무료 행동 기반 머신러닝 IDS/IPS입니다. 2012년 체코 기술 대학교 AIC의 Stratosphere Laboratory에서 Sebastian Garcia에 의해 만들어졌습니다. 목표는 행동 분석을 사용하여 네트워크 공격을 감지하는 머신러닝을 활용하는 로컬 IDS/IPS를 제공하는 것이었습니다.
Slips는 Linux, MacOS, Windows Docker에서 지원됩니다. Slips의 차단 기능은 Linux에서만 지원됩니다.
Slips는 Python 기반이며 실시간 트래픽 캡처 및 PCAP 분석을 위해 Zeek 네트워크 분석 프레임워크에 의존합니다. 또한 프로세스 간 통신을 위해 Redis >= 7.0.4에 의존합니다.
사용법
Slips를 사용하는 가장 좋은 방법은 Docker를 사용하는 것입니다.
Linux 및 Windows 호스트
docker run --rm -it -p 55000:55000 --cpu-shares "700" --memory="8g" --memory-swap="8g" --net=host --cap-add=NET_ADMIN --name slips stratosphereips/slips:latest
./slips.py -f dataset/test7-malicious.pcap -o output_dir
cat output_dir/alerts.log
MacOS
MacOS에서는 호스트에서 컨테이너의 내부 포트에 접근하려면 --net=host를 사용하지 마세요.
docker run --rm -it -p 55000:55000 --platform linux/amd64 --cpu-shares "700" --memory="8g" --memory-swap="8g" --cap-add=NET_ADMIN --name slips stratosphereips/slips_macos_m1:latest
./slips.py -f dataset/test7-malicious.pcap -o output_dir
cat output_dir/alerts.log
그래픽 사용자 인터페이스
Slips 출력을 GUI로 확인하려면 웹 인터페이스나 명령줄 기반 인터페이스인 Kalipso를 사용할 수 있습니다.
웹 인터페이스
./webinterface.sh
그런 다음 브라우저에서 http://localhost:55000/로 이동하세요.

웹 인터페이스에 대한 자세한 정보는 문서를 확인하세요: https://stratospherelinuxips.readthedocs.io/en/develop/usage.html#the-web-interface
Kalipso (CLI-인터페이스)
./kalipso.sh

For more info about the Kalipso interface, check the docs: https://stratospherelinuxips.readthedocs.io/en/develop/usage.html#kalipso
요구사항
Slips는 원활한 실행을 위해 Python 3.10.12와 최소 4GB의 RAM이 필요합니다.
설치
Slips는 다양한 플랫폼에서 실행할 수 있으며, Linux 사용자라면 Docker에서 Slips를 실행하는 것이 가장 쉽고 권장되는 방법입니다.
- Docker
- Dockerhub (권장)
- Linux 및 Windows 호스트
- MacOS 호스트
- Docker-compose
- Dockerfile
- 네이티브
- RPI에서 (베타)
설정
Slips는 다양한 모듈과 일반 실행을 위한 사용자 설정이 포함된 config/slips.yaml을 가지고 있습니다.
time_window_width매개변수를 수정하여 시간 창 너비를 변경할 수 있습니다- 컴퓨터에서 오가는 공격을 보고 싶다면 분석 방향을
all로 변경할 수 있습니다 ML 모델을
train또는test할지 지정할 수도 있습니다You can enable popup notifications of evidence, enable blocking, plug in your own zeek script and more.
More details about the config file options here
기능
Slips의 주요 기능은:
- 행동 기반 침입 방지: Slips는 머신러닝을 사용하여 네트워크 트래픽에서 악의적인 행동을 감지하는 강력한 시스템으로 작동합니다.
- 모듈성: Slips는 Python으로 작성되었으며 네트워크 트래픽에서 특정 탐지를 수행하는 다양한 모듈로 구성되어 있습니다.
- 표적 공격 및 명령 & 제어 탐지: 네트워크 트래픽에서 표적 공격과 명령 및 제어 채널을 식별하는 데 중점을 둡니다.
- 트래픽 분석 유연성: Slips는 실시간 네트워크 트래픽, PCAP 파일, Suricata, Zeek/Bro, Argus와 같은 인기 도구의 네트워크 흐름을 분석할 수 있습니다.
- 위협 인텔리전스 업데이트: Slips는 위협 인텔리전스 파일과 데이터베이스를 지속적으로 업데이트하여 업데이트가 발생할 때 관련 탐지를 제공합니다.
- 외부 플랫폼과의 통합: Modules in Slips can look up IP addresses on external platforms such as VirusTotal and RiskIQ.
- 그래픽 사용자 인터페이스: Slips는 탐지를 그래프와 테이블로 표시하는 콘솔 그래픽 사용자 인터페이스(Kalipso)와 웹 인터페이스를 제공합니다.
- 피어투피어(P2P) 모듈: Slips는 네트워크에서 다른 피어를 찾고 IoC 데이터를 균형 있고 신뢰할 수 있는 방식으로 자동으로 공유하는 복잡한 자동 시스템을 포함합니다. The P2P module can be enabled as needed.
- Docker Implementation: Running Slips through Docker on Linux systems is simplified, allowing real-time traffic analysis.
- Detailed Documentation: Slips provides detailed documentation guiding users through usage instructions for efficient utilization of its features.
- Federated learning Using the feel_project submodule. for more information check the docs
기여하기
We welcome contributions to improve the functionality and features of Slips.
Please read carefully the contributing guidelines for contributing to the development of Slips
You can run Slips and report bugs, make feature requests, and suggest ideas, open a pull request with a solved GitHub issue and new feature, or open a pull request with a new detection module.
The instructions to create a new detection module along with a template here.
If you are a student, we encourage you to apply for the Google Summer of Code program that we participate in as a hosting organization.
Check Slips in GSoC2023 for more information.
You can join our conversations in Discord for questions and discussions. We appreciate your contributions and thank you for helping to improve Slips!
문서
문제해결
If you can't listen to an interface without sudo, foe example when zeek is throwing the following error:
bash
fatal error: problem with interface wlan0 (pcap_error: socket: Operation not permitted (pcap_activate))
you can adjust zeek capabilities using the following command
sudo setcap cap_net_raw,cap_net_admin=eip /<path-to-zeek-bin/zeek
You can join our conversations in Discord for questions and discussions.
Or email us at * sebastian.garcia@agents.fel.cvut.cz * eldraco@gmail.com, * alyaggomaa@gmail.com
라이선스
크레딧
Founder: Sebastian Garcia, sebastian.garcia@agents.fel.cvut.cz, eldraco@gmail.com.
Main authors: Sebastian Garcia, Alya Gomaa, Kamila Babayeva
Contributors:
- Veronica Valeros
- Frantisek Strasak
- Dita Hollmannova
- Ondrej Lukas
- Elaheh Biglar Beigi
- Martin Řepa
- arkamar
- Maria Rigaki
- Lukas Forst
- Daniel Yang
변경이력
https://github.com/stratosphereips/StratosphereLinuxIPS/blob/develop/CHANGELOG.md
데모
The following videos contain demos of Slips in action in various events:
- 2022 BlackHat Europe Arsenal, Slips: A Machine-Learning Based, Free-Software, Network Intrusion Prevention System [web]
- 2022 BlackHat USA Arsenal, Slips: A Machine-Learning Based, Free-Software, Network Intrusion Prevention System [web]
- 2021 BlackHat Europe Arsenal, Slips: A Machine-Learning Based, Free-Software, Network Intrusion Prevention System [slides] [web]
- 2021 BlackHat USA Arsenal, Slips: A Machine-Learning Based, Free-Software, Network Intrusion Prevention System [web]
- 2021 BlackHat Asia Arsenal, Slips: A Machine-Learning Based, Free-Software, Network Intrusion Prevention System [web]
- 2020 Hack In The Box CyberWeek, Android RATs Detection With A Machine Learning-Based Python IDS [video]
- 2019 OpenAlt, Fantastic Attacks and How Kalipso can Find Them [video]
- 2016 Ekoparty, Stratosphere IPS. The free machine learning malware detection [video]
자금지원
We are grateful for the generous support and funding provided by the following organizations:
- NlNet Foundation, https://nlnet.nl/
This project is funded through NGI0 Entrust, a fund established by NLnet with financial support from the European Commission's Next Generation Internet program. Learn more at the NLnet project page.
- Artificial Intelligence Centre at the Czech Technical University in Prague, https://www.aic.fel.cvut.cz/
- Avast, https://www.avast.com/
- CESNET, https://www.cesnet.cz/
- Google Summer of Code (2023, 2024), https://summerofcode.withgoogle.com/
Their funding has played a crucial role in the development and success of this project. We sincerely appreciate their commitment to advancing technology and their recognition of the value Slips brings to the community.
Owner
- Name: LEE
- Login: leeyonghe
- Kind: user
- Location: seoul in korea
- Company: Developer
- Repositories: 89
- Profile: https://github.com/leeyonghe
Citation (CITATION.cff)
cff-version: 1.2.0
title: >-
Slips, behavioral machine learning-based Python IPS
message: 'If you use this software, please cite it as below.'
type: software
authors:
- given-names: Sebastian
family-names: Garcia
email: garciseb@fel.cvut.cz
affiliation: >-
Stratosphere Laboratory, AIC, FEL, Czech
Technical University in Prague
orcid: 'https://orcid.org/0000-0001-6238-9910'
- given-names: Alya
family-names: Gomaa
email: alyaggomaa@gmail.com
affiliation: >-
Stratosphere Laboratory, AIC, FEL, Czech
Technical University in Prague
orcid: ''
- given-names: Kamila
family-names: Babayeva
email: kamifai14@gmail.com
affiliation: >-
Stratosphere Laboratory, AIC, FEL, Czech
GitHub Events
Total
- Push event: 6
- Create event: 2
Last Year
- Push event: 6
- Create event: 2
Dependencies
- ubuntu 22.04 build
- golang 1.17 build
- ubuntu 22.04 build
- stratosphereips/slips latest
- ubuntu 22.04 build
- redis 7.0.4
- ansi-colors ^4.1.1
- async ^3.2.0
- blessed ^0.1.81
- blessed-contrib ^4.10.0
- chalk ^4.1.2
- clipboardy ^2.3.0
- fs ^0.0.1-security
- redis ^3.1.2
- sorted-array-async ^0.0.7
- strip-ansi ^6.0.0
- yargs ^17.0.1
- ansi-colors ^4.1.1
- async ^3.2.0
- blessed ^0.1.81
- blessed-contrib ^4.10.0
- chalk ^4.1.2
- clipboardy ^2.3.0
- fs ^0.0.1-security
- redis ^3.1.2
- sorted-array-async ^0.0.7
- strip-ansi ^6.0.0
- yargs ^17.0.1
- linkify-it-py >=2.0.0
- myst-parser >=2.0.0
- sphinx >=7.0
- sphinx-rtd-theme *
- GitPython ==3.1.44
- Keras *
- aid_hash *
- black ==24.10.0
- cabby ==0.1.23
- certifi ==2025.4.26
- coverage ==7.8.0
- exclusiveprocess ==0.9.4
- flask *
- ipwhois ==1.2.0
- matplotlib ==3.10.1
- maxminddb ==2.6.3
- numpy ==1.26.4
- pandas ==2.2.3
- pre-commit ==4.0.1
- protobuf ==4.25.3
- psutil ==7.0.0
- pytest ==8.3.5
- pytest-asyncio *
- pytest-dependency ==0.6.0
- pytest-mock ==3.14.0
- pytest-sugar ==1.0.0
- pytest-xdist ==3.6.1
- pyyaml *
- redis ==5.2.1
- ruff ==0.11.7
- scikit-learn ==1.6.1
- scikit_learn *
- scipy ==1.15.1
- six ==1.17.0
- slackclient ==2.9.4
- stix2 ==3.0.1
- tensorflow ==2.16.1
- termcolor ==3.0.1
- tldextract ==5.3.0
- tzlocal ==5.3.1
- urllib3 ==2.4.0
- validators ==0.34.0
- watchdog ==5.0.0
- whois ==1.20240129.2
- yappi ==1.6.10
