[논문 리뷰] CyNER: A Python Library for Cybersecurity Named Entity Recognition
CyNER는 사이버보안 데이터로 학습된 트랜스포머 기반 NER 모델과 휴리스틱 지표 및 일반 NLP 모델을 결합하여 사이버 보안 위협 인텔리전스 엔터티를 추출하고 구성 가능한 예측 병합을 제공하는 오픈 소스 파이썬 라이브러리입니다.
Open Cyber threat intelligence (OpenCTI) information is available in an unstructured format from heterogeneous sources on the Internet. We present CyNER, an open-source python library for cybersecurity named entity recognition (NER). CyNER combines transformer-based models for extracting cybersecurity-related entities, heuristics for extracting different indicators of compromise, and publicly available NER models for generic entity types. We provide models trained on a diverse corpus that users can readily use. Events are described as classes in previous research - MALOnt2.0 (Christian et al., 2021) and MALOnt (Rastogi et al., 2020) and together extract a wide range of malware attack details from a threat intelligence corpus. The user can combine predictions from multiple different approaches to suit their needs. The library is made publicly available.
연구 동기 및 목표
- 구조화된 오픈 사이버 위협 인텔리전스(openCTI)를 비구조화된 보고서에서 추출해야 하는 필요성을 제시한다.
- 다양한 사고에 주석이 달린 사이버보안 NER 데이터세트를 제공한다.
- 트랜스포머 기반 NER, 휴리스틱 지표, 일반 NER 모델을 결합하는 모듈식 라이브러리로 사이NER를 제공한다.
제안 방법
- tner 라이브러리를 사용하여 다섯 엔터티 클래스(맬웨어, 지표, 시스템, 조직, 취약점)를 다루는 큐레이션된 사이버보안 말뭉치에서 트랜스포머 모델을 학습한다.
- URL, IP, 해시, CVE 등 엔티티에 대한 정규식 규칙을 통해 타격 지표의 지표를 위한 휴리스틱 규칙을 제공한다.
- Flair와 spaCy의 일반 NER 모델을 통합하여 사이버 보안이 아닌 엔터티를 포착한다.
- 허깅페이스의 트랜스포머와 표준 학습 하이퍼파라미터를 사용하여 트랜스포머 모델을 파인튜닝할 수 있게 한다.
- 여러 모델의 출력을 구성 가능한 우선순위(기본 HTFS)로 병합하는 모듈식 예측 융합 메커니즘을 제공한다.
실험 결과
연구 질문
- RQ1사이버보안 데이터로 사전 학습된 트랜스포머 모델이 주석이 달린 위협 인텔리전스 코퍼스에서 얼마나 잘 작동하는가?
- RQ2트랜스포머 기반 NER, 휴리스틱 지표, 일반 NER의 결합이 전체 추출 정확도를 향상시키는가?
- RQ3CyNER가 사용자가 제공하는 주석 데이터셋에 대해 새로운 위협 인텔리전스 도메인에 적용되도록 파인튜닝할 수 있는가?
주요 결과
| 모델 | 정밀도 | 재현율 | F1-점수 |
|---|---|---|---|
| BERT-base-uncased | 69.67 | 69.88 | 69.77 |
| BERT-large-uncased | 72.69 | 73.45 | 73.07 |
| RoBERTa-base | 37.22 | 42.50 | 39.69 |
| RoBERTa-large | 34.76 | 44.18 | 38.91 |
| XLM-RoBERTa-base | 74.57 | 77.23 | 75.88 |
| XLM-RoBERTa-large | 75.30 | 78.07 | 76.66 |
- XLM-RoBERTa-large가 평가된 트랜스포머 중 테스트 세트에서 평균 F1 점수 76.66%로 최고를 달성했다.
- 표 3은 모델 간 정밀도/재현율/F1을 보여준다: BERT-base-uncased(69.77 F1), BERT-large-uncased(73.07 F1), RoBERTa-base(39.69 F1), RoBERTa-large(38.91 F1), XLM-RoBERTa-base(75.88 F1), XLM-RoBERTa-large(76.66 F1).
- XLM-RoBERTa-large의 클래스별 결과는 맬웨어 77.39 F1, 지표 82.27 F1, 시스템 74.84 F1, 조직 64.98 F1, 취약점 88.89 F1를 나타낸다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.