[論文レビュー] CyNER: A Python Library for Cybersecurity Named Entity Recognition
CyNER は、サイバーセキュリティデータで訓練されたトランスフォーマー型NERモデルとヒューリスティック指標および汎用 NLP モデルを組み合わせて、構成可能な予測マージを用いてサイバー脅威情報エンティティを抽出するオープンソースの Python ライブラリです。
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.
研究の動機と目的
- 非構造化レポートからオープンCTI(openCTI)の構造化抽出の必要性を動機づける。
- 多様なインシデントに注釈付きのラベル付きサイバーセキュリティNERデータセットを提供する。
- トランスフォーマーベースのNER、ヒューリスティック指標、汎用NERモデルを組み合わせたモジュラーライブラリとしてCyNERを提供する。
提案手法
- tnerライブラリを用いて、マルウェア、インディケータ、システム、組織、脆弱性の5クラスを網羅する厳選されたサイバーセキュリティコーパス上でトランスフォーマーモデルを訓練する。
- URL、IP、ハッシュ、CVE などのエンティティに対する正規表現を用いた侵害指標のヒューリスティック規則を提供する。
- FlairとspaCyの汎用NERモデルを統合し、サイバーセキュリティ以外のエンティティを捉える。
- Huggingfaceの Transformers と標準的な訓練ハイパーパラメータを用いてトランスフォーマーモデルのファインチューニングを可能にする。
- 複数モデルの出力を結合するための構成可能な優先度を持つモジュラー予測融合機構を提供する(デフォルトはHTFS)。
実験結果
リサーチクエスチョン
- RQ1サイバーセキュリティデータで事前訓練されたトランスフォーマーモデルは、注釈付きの脅威情報コーパスにどれくらい適合するか?
- RQ2トランスフォーマーベースのNER、ヒューリスティック指標、汎用NERを組み合わせると、全体の抽出精度は向上するか?
- RQ3CyNER は、ユーザー提供の注釈データセットでファインチューニングして、新しい脅威情報ドメインに適応できるか?
主な発見
| Model | Precision | Recall | F1-score |
|---|---|---|---|
| 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 のクラス別結果は、Malware 77.39 F1、Indicator 82.27 F1、System 74.84 F1、Organization 64.98 F1、Vulnerability 88.89 F1 を示す。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。