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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
ARTIF — IP 평판과 과거 데이터를 기반으로 위협 및 악성 웹 트래픽을 식별하는 고급 실시간 위협 인텔리전스 프레임워크 | Kitploit
도구/GitHubGitHub/cred-club/artif
Indicator of Compromise (IOC) ManagementReconnaissanceThreat Feeds & AggregatorsVulnerability AnalysisInformation GatheringThreat IntelligenceIntrusion DetectionLog Analysis
GitHubcred-club/artif

ARTIF

IP 평판과 과거 데이터를 기반으로 위협 및 악성 웹 트래픽을 식별하는 고급 실시간 위협 인텔리전스 프레임워크

저장소 보기
249343년 전Kitploit 검토 완료

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

ARTIF

logo

ARTIF는 MISP 위에 또 다른 추상화 계층을 추가하여 IP 평판과 과거 데이터를 기반으로 위협 및 악성 웹 트래픽을 식별하는 새로운 고급 실시간 위협 인텔리전스 프레임워크입니다. 또한 다양한 요소를 기반으로 관찰 가능 항목을 수집, 처리 및 상관 분석하여 자동으로 강화하고 위협 점수를 매깁니다.

ARTIF의 주요 기능은 다음과 같습니다:-

  • Scoring System: IP 주소에 위협 메타데이터(위협 점수 포함)를 강화하여 보안 팀이 조치를 취할 수 있는 임계값 역할을 합니다.
  • Containerized: ARTIF는 컨테이너를 사용하여 배포되므로 배포가 용이합니다.
  • Modular Architecture: 이 프로젝트는 플러그인 기반이며 MISP의 위협 피드를 수정하기만 하면 쉽게 확장할 수 있습니다. 이러한 업데이트는 인라인 방식으로 이루어지므로 실제 서비스에 다운타임이 없습니다.
  • Alerting: Slack과 원활하게 통합되어 활성 알림을 제공하는 확장 기능입니다. 또한 더 나은 공격 프로파일링 및 시각화를 제공합니다.

일부 사용 사례:-

  • 위협 탐지
  • 로깅 및 모니터링
  • 사용자 프로파일링
  • 알림 자동화

ARTIF를 사용해야 하는 이유는 무엇인가요? MISP에 존재하지 않는 악성 IP도 식별할 수 있는 실시간 위협 인텔리전스 프레임워크입니다. 이를 통해 조직은 서버에 도달하는 악성 웹 트래픽에 대한 투명성을 확보하여 첫 번째 방어 계층을 구축할 수 있습니다.

  • 기본적으로 52개의 오픈 소스 위협 피드가 구성되어 있으며 0.7M개의 IP 주소 데이터베이스를 보유하고 있습니다.
  • 대기 시간이 약 180ms로 상용 제품보다 10배 이상 빠릅니다.
  • 과거 IP는 분석을 위해 저장되며 과거 기록 및 패턴을 기반으로 점수 매기기에 사용됩니다.
  • 다른 메타데이터 외에도 각 IP에 점수를 추가합니다.

사전 요구 사항

  • MISP란 무엇이며 어떻게 설치하나요?

MISP에서 인용: MISP는 사이버 보안 사고 분석 및 악성코드 분석에 관한 사이버 보안 지표 및 위협을 수집, 저장, 배포 및 공유하기 위한 오픈 소스 소프트웨어 솔루션입니다. MISP는 사고 분석가, 보안 및 ICT 전문가, 악성코드 리버서들이 일상 업무에서 구조화된 정보를 효율적으로 공유할 수 있도록 설계되었습니다.

MISP는 소스 코드 또는 사전 빌드된 AWS 이미지를 사용하여 설치할 수 있습니다. MISP 설치에 대한 자세한 내용은 해당 웹사이트에서 확인할 수 있습니다.

  • IP에 대한 메타데이터를 채우기 위해 maxmind 구독이 필요합니다. 구독 키를 추가하려면 docker-compose.yaml을 편집하십시오.
root@kitploit:~
  maxmind:
    image: maxmindinc/geoipupdate
    environment: 
      GEOIPUPDATE_ACCOUNT_ID: xxxxx
      GEOIPUPDATE_LICENSE_KEY: xxxxxxxxxxxxxx

설치

  1. git을 사용하여 저장소를 복제하거나 zip 파일을 다운로드합니다.
root@kitploit:~
git clone https://github.com/CRED-CLUB/ARTIF/
  1. 작업 디렉토리를 ARTIF 폴더로 변경하여 도커를 빌드하고 해당 도커 컨테이너를 시작합니다.
root@kitploit:~
sudo docker-compose build
sudo docker-compose up
  1. MISP를 설정하고 MISP 대시보드에 접속하여 MISP 키를 가져옵니다. 이제 config.yaml을 편집하고 MISP_KEY 및 MISP_URL 값을 추가합니다. 여기서 MISP_KEY는 MISP의 API 키이고 MISP_URL은 MISP가 호스팅되는 URL입니다.

참고용 config example.yaml입니다. 해당 값을 본인의 값으로 바꾸십시오.

root@kitploit:~
credentials:
        MISP_URL: "https://127.0.0.1"
        MISP_KEY: "qwertyuiopasdfghjk"
  1. 이제 -s 인수를 사용하여 update_check.py 파일의 전체 절대 경로로 아래 명령을 실행합니다.
root@kitploit:~
python3 /home/user/ARTIF/ip_rep/feed_ingestor/update_check.py -s
  1. 이제 -s 인수 없이 동일한 명령을 실행합니다.
root@kitploit:~
python3 /home/user/ARTIF/ip_rep/feed_ingestor/update_check.py
  1. 아래 명령을 실행하여 Django의 내장 지원을 사용하여 crontab을 추가합니다.
root@kitploit:~
python3 manage.py crontab add
  1. ip_rep 디렉토리에서 Django 서버를 시작합니다.
root@kitploit:~
python3 manage.py runserver

그러면 IP 주소의 메타데이터를 가져오는 데 사용할 수 있는 포트 8000이 열립니다. 이제 특정 IP의 위협 점수를 얻을 수 있습니다.

root@kitploit:~
curl 127.0.0.1:8000/ip/?ip=x.x.x.x

출력은 다음과 같습니다.

root@kitploit:~
{"is_IoC": false, "is_Active": false, "metadata": {"asn": "AS165**", "country": "XXX", "org": "XXX"}, "score": 80.14671726301682, "description": "XXX", "blacklists": "", "type": "", "historical":false, verdict": "No action needed"}

점수는 위협 점수가 높을수록 IP에 대한 위험이 낮음을 나타냅니다. 점수가 높을수록 비악성 IP일 가능성이 낮아집니다.

참고: ARTIF 설치에는 8GB RAM의 인스턴스가 권장됩니다.

도커 컨테이너 설정

docker

ARTIF 시작

artif


사용자 정의 피드 추가

ARTIF는 MISP와의 동기화를 지원합니다. MISP 피드를 동기화하여 settings.yaml에서 가장 최근 구성을 가져오고 MISP에서 수정된 모든 새 이벤트는 settings.yaml에 반영됩니다. 새 IP를 추가하려면 MISP에 로그인하고 피드 추가 페이지를 클릭하기만 하면 됩니다. IP가 추가되면 cronjob이 예약에 따라 이를 가져와 자동으로 처리됩니다.

기술 세부 사항

ARTIF는 위협 프레임워크로서 조직 내 트래픽 가시성에 매우 유용합니다. 완전히 Python으로 작성되었으며 다양한 피드에서 IP에 대한 인텔리전스를 수집합니다. 그런 다음 이 데이터를 상관 엔진으로 보내 위협 점수를 생성하며, 여기서 과거 데이터도 위협 점수 계산에 고려되는 요소 중 하나입니다.

새 IP가 서비스에 도달할 때마다 celery worker가 할당되어 상관 엔진과 조정하여 데이터베이스에서 점수를 업데이트하며, 상관 엔진은 여러 소스에서 데이터를 수집합니다. 데이터가 오래되지 않도록(기본 '유효 시간' 값은 24시간) 지난 '유효 시간' 동안 업데이트되지 않은 데이터베이스의 각 IP에 대해 worker를 실행합니다. 다른 모든 매개변수와 마찬가지로 이 값도 구성 가능합니다. 위협 점수 계산이 이 모든 것의 핵심이므로 많은 중점을 두었습니다. MISP, Cortex, Alien Vault, VirusTotal 및 널리 알려진 IP 블랙리스트와 같은 잘 알려진 위협 피드 외에도 비즈니스 및 보안 사용 사례에 따라 사용자 정의 피드를 추가할 수 있으며, 여기서 고객 충성도도 위협 점수 계산의 매개변수로 사용할 수 있습니다.

구성의 용이성을 위해 ARTIF는 실행을 위해 다음 입력이 필요합니다.

  • MISP 인스턴스의 피드
  • MISP 인스턴스와 통신하기 위한 MISP 키
  • MISP 키를 사용하여 MISP 인스턴스에 연결할 MISP URL

실행 시 데이터는 MongoDB 컨테이너에 처리되어 저장됩니다. MongoDB 컨테이너에는 피드의 IP에 대한 정보와 해당 메타데이터(예: 국가/ASN, 조직 등)를 저장하는 3개의 중요한 데이터베이스가 있습니다. 데이터베이스에서 IP를 찾을 수 없으면 서버에 도달한 새 IP이며 MISP에 정보가 없는 것입니다. 그런 다음 알고리즘과 지리적 위치, ASN, 조직 등 다양한 기타 매개변수를 사용하여 특정 IP에 대한 위험 점수를 계산합니다. 점수 엔진에 대한 자세한 내용은 여기에서 확인할 수 있습니다.

ARTIF에는 오래된 피드를 추적하는 추가 기능이 있습니다. 기본 구성은 24시간마다 최신 피드를 보충합니다. 24시간 후에 오래된 피드는 다른 컬렉션으로 이동되고 최신 피드가 추가됩니다. 운영의 용이성을 위해 출력에 "historical"이라는 필드를 추가하여 IP가 역사적으로 악성인지 여부를 알려줍니다. false 값은 IP가 최근에 피드에 추가되었음을 나타내고 true 값은 IP가 이미 오래된 피드에 존재했으므로 역사적으로 악성 IP임을 나타냅니다.

모든 과거 IP는 기본적으로 7일 후에 데이터베이스에서 제거됩니다.

arch

사용법/예제

ARTIF의 핵심인 update_check.py를 사용하여 ARTIF를 호출해야 합니다.

root@kitploit:~
ubuntu@localhost:~/ARTIF/ip_rep/feed_ingestor$ python3 /home/user/ARTIF/ip_rep/feed_ingestor/update_check.py -h
usage: update_check.py [-h] [-s [S]] -k [KEY] -m MISP

IP reputation program

optional arguments:
  -h, --help            show this help message and exit
  -s [S]                Required only for the first run

또한 아래 명령을 실행하여 cron 작업을 확인할 수 있습니다 -

root@kitploit:~
python3 manage.py crontab show

이렇게 하면 피드가 자동으로 업데이트됩니다. 기본적으로 24시간마다 MISP에서 최신 피드를 확인하고 피드의 새 IP로 DB를 보충합니다. 7일이 지난 IP도 스케줄러에 의해 제거됩니다.


FAQ

update_check.py를 실행하려고 하는데 태그가 이미 존재/제거되었다는 태그 관련 오류가 발생합니다. 어떻게 해결하나요?

태그가 이미 있는데 추가하려고 할 때 발생하므로 안전하게 무시할 수 있습니다. 해당 경우 위와 같은 오류가 발생하므로 태그 제거를 수행할 수 없습니다. MISP는 이러한 예외를 포착할 방법이 없으므로 이 방법에 의존해야 합니다.

시간이 너무 오래 걸립니다. 언제 끝나나요?

인터넷 속도와 RAM에 따라 30분에서 90분까지 시간이 걸릴 수 있습니다. 기본적으로 모든 피드를 MongoDB에 다운로드하고 처리하는 작업이므로 시간이 걸리며 일회성 작업입니다.

언급된 단계를 따랐지만 MongoDB에 여전히 데이터가 채워지지 않습니다.

해결 방법: 이러한 경우 -s 인수 없이 update_check.py 파일을 실행하십시오. 그러면 피드에서 모든 IP를 다운로드합니다. 이 오류는 일반적으로 update_check.py 실행을 초기 단계에서 갑자기 중단할 때 발생합니다.

향후 로드맵

  • 위협 점수에 따라 악성 IP를 자동으로 차단하기 위한 ARTIF와의 애플리케이션 방화벽 통합 지원.
  • 위협을 더 잘 시각화하기 위해 그래픽 형태의 UI 대시보드를 통한 메트릭 가시성.

라이선스

MIT

기여

기여는 언제나 환영합니다! 시작하는 방법은 contributing.md를 참조하세요. 이 프로젝트의 code of conduct를 준수해 주시기 바랍니다.

팀과의 소통

팀과 소통하는 가장 쉬운 방법은 GitHub Issues를 이용하는 것입니다. 새 이슈, 기능 요청 및 제안을 등록해 주시되, 새 이슈를 생성하기 전에 유사한 열려 있거나 닫힌 기존 이슈를 검색해 주세요.


작성자

  • Divyanshu Mehta
  • Avinash Jain
  • Govind Menon

감사의 말

  • MISP
  • Maxmind
도구 다운로드