Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
siper — XDP 기반 경량 고속 방화벽 | Kitploit
도구/GitHubGitHub/fksvs/siper
Defensive ToolsConfiguration AuditingNetwork SecurityCloud SecurityIntrusion DetectionLog Analysis
GitHubfksvs/siper

siper

XDP 기반 경량 고속 방화벽

저장소 보기
7066개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Siper (Shield)

Siper는 Go와 C (eBPF)로 구축된 고성능 XDP 기반 IP 블랙리스트 방화벽입니다. 악성 트래픽을 Linux 네트워킹 스택에서 가장 초기 단계인 네트워크 드라이버 수준에서 차단할 수 있습니다. XDP(Express Data Path)를 활용하여 Siper는 패킷이 커널의 무거운 네트워킹 서브시스템에 도달하기 전에 처리하므로, 심각한 DDoS 조건에서도 극한의 성능을 제공합니다.

특징

  • XDP 기반 성능: 패킷 필터링이 NIC 드라이버 수준에서 XDP_DROP을 사용하여 이루어지므로 iptables나 nftables에 비해 CPU 오버헤드가 현저히 낮습니다.

  • LPM(Longest Prefix Match): CIDR 기반 차단(예: 192.168.1.0/24)을 지원하며, 효율적인 IP 범위 조회를 위해 특화된 BPF LPM Trie 맵을 사용합니다.

  • 영구 구성: 규칙은 로컬 JSON 기반 블랙리스트를 통해 관리되며, 차단된 주소의 감사 및 버전 관리를 용이하게 합니다.

  • 실시간 관찰 가능성: 드롭 및 통과된 트래픽 모두에 대한 패킷 및 바이트 카운터를 추적하는 내장 메트릭을 제공합니다.

  • 미니멀리스트 아키텍처: 컴파일된 BPF 객체가 데이터 플레인을 처리하고, Go 기반 CLI가 컨트롤 플레인을 관리합니다.

아키텍처

Siper는 컨트롤 플레인(사용자 공간)과 데이터 플레인(커널 공간)을 분리하는 원칙에 따라 작동합니다.

관리 흐름 (사용자 공간)

  1. 규칙 정의: 사용자가 CLI를 통해 CIDR을 추가/제거합니다. 이들은 blacklist.json 파일에 저장됩니다.
  2. 로딩: siper run이 실행되면 Go 애플리케이션이 JSON을 파싱하고, eBPF 객체를 컴파일/로드하며, BPF 맵에 IP 프리픽스를 채웁니다.
  3. 모니터링: CLI는 BPF 시스템 콜을 통해 커널과 통신하여 트래픽을 중단하지 않고 메트릭과 현재 맵 상태를 덤프합니다.

패킷 흐름 (커널 공간)

  1. 인그레스: 패킷이 네트워크 인터페이스에 도착합니다.

  2. 조회: XDP 프로그램이 패킷을 가로채서 block_list 맵에서 조회를 수행합니다.

  3. 판정:

    • 일치: 패킷이 즉시 드롭됩니다 (XDP_DROP).
    • 불일치: 패킷이 표준 Linux 네트워킹 스택으로 전달됩니다 (XDP_PASS).

설치 및 사용법

사전 요구 사항

  • Linux 커널: 5.4 이상 (XDP 지원 포함).
  • Go: 1.21+ 설치.
  • Clang/LLVM: eBPF C 프로그램을 .o 객체로 컴파일하기 위한 것.
  • 권한: 루트 액세스 또는 CAP_NET_ADMIN / CAP_BPF 기능.

1.프로젝트 빌드

root@kitploit:~
make

build/ 디렉토리로 이동

2.블랙리스트 관리

로컬 구성 파일에서 IP 범위를 추가하거나 제거합니다:

root@kitploit:~
# 리스트에 CIDR 추가
sudo ./siper add --cidr 1.2.3.0/24 --comment "Known botnet"

# 규칙 삭제
sudo ./siper del --cidr 1.2.3.0/24

3.방화벽 실행

특정 네트워크 인터페이스에 방화벽을 연결합니다:

root@kitploit:~
# 방화벽 시작
sudo ./siper run --iface eth0 --path ./blacklist.json

# 방화벽 중지 및 연결 해제
sudo ./siper stop --iface eth0

4.메트릭 및 키 모니터링

커널 내부에서 발생하는 상황을 확인합니다:

root@kitploit:~
# BPF 맵에서 현재 활성 키 보기
sudo ./siper dump-keys

# 드롭/통과 통계 모니터링
sudo ./siper dump-metrics

기여

풀 리퀘스트를 환영합니다. 버그 수정 및 작은 개선 사항은 풀 리퀘스트를 제출해 주세요. 주요 변경 사항의 경우, 먼저 이슈를 열어 변경하고자 하는 내용에 대해 논의해 주세요.

라이선스

이 프로젝트는 자유 소프트웨어입니다; GPLv3 라이선스 조건에 따라 재배포 및 수정할 수 있습니다. 자세한 내용은 LICENSE 파일을 참조하세요.

도구 다운로드