
オープンソースおよび脅威インテリジェンスのためのCLIツール
OSINT / 脅威インテリジェンス CLI ツール。
Harpoon の前提条件として、lxml 要件をインストールする必要があります。Debian/Ubuntu では: sudo apt-get install libxml2-dev libxslt-dev python3-dev。Fedora では: sudo dnf install sqlite-devel automake bzip2 bzip2-devel bzip2-lib cython g++ gcc gcc-c++ kernel-devel libffi-devel libxlt libxml2 libxml2-devel libxslt libxslt-devel make openssl openssl-devel python3-dev python3-devel python3-lxml python-dev python-devel sqlite-devel。
地理位置情報を正しく使用するには、geoipupdate がインストールされ、正しく設定 されている必要があります (GeoLite2-Country GeoLite2-City GeoLite2-ASN が EditionIDs として設定されていることを確認してください)。
パッケージは pypi から pip install harpoon で簡単にインストールできます。
上記のインストール手順がうまくいかなかった場合は、ターミナルで以下のコマンドを実行してソースからビルドできます(virtualenv を使用していることを前提としています)。
git clone https://github.com/Te-k/harpoon.git
cd harpoon
pip3 install .
harpoontools をインストールすると、harpoon の機能を使用した追加コマンドが利用できるようになります。
harpoon を設定するには、harpoon config を実行し、必要な API キーを入力します。
その後、harpoon update を実行して必要なファイルをダウンロードします。harpoon config -c で設定されているプラグインを確認できます。
詳細については、wiki を参照してください。
pypi から harpoon をインストールした場合は、pip install -U harpoon を実行するだけです。
git リポジトリから harpoon をインストールした場合は、リポジトリに移動して次のコマンドを実行します。
git pull origin master
pip install .
設定後、harpoon コマンドで以下のプラグインが利用可能になります。
asn ASN に関する情報を収集
binaryedge BinaryEdge API にリクエスト
cache さまざまなソースから Web ページのキャッシュを要求
censys Censys データベースから情報を要求 (https://censys.io/)
certspotter https://sslmate.com/certspotter から証明書を取得
circl CIRCL パッシブ DNS データベースにリクエスト
config Harpoon を設定
crtsh https://crt.sh/ (証明書透過性データベース) で検索
cybercure 特定の指標について cybercure.ai インテリジェンスデータベースを検索
dns ドメインまたは IP の DNS 情報をマップ
dnsdb Farsight DNSDB にリクエスト
email メールアドレスに関する情報を収集
fullcontact Full Contact API にリクエスト (https://www.fullcontact.com/)
github API 経由で Github 情報を要求
greynoise GreyNoise API から情報を要求 (Community または Enterprise を api_type 設定で選択)
hashlookup CIRCL Hash Lookup データベースにリクエスト
help Harpoon コマンドのヘルプを表示
hibp Have I Been Pwned API にリクエスト (https://haveibeenpwned.com/)
hunter hunter.io 情報を API 経由で要求
hybrid Hybrid Analysis プラットフォームにリクエスト
intel ドメインに関する情報を収集
ip IP アドレスに関する情報を収集
ipinfo ipinfo.io 情報を要求
ip2locationio IP2Location.io 情報を要求
koodous Koodous API にリクエスト
malshare MalShare データベースにリクエスト
misp MISP サーバーから API 経由で情報を取得
numverify NumVerify から電話番号情報を照会
opencage OpenCage を使用した前方/逆ジオコーディング
otx AlienVault OTX から情報を要求
permacc Perma.cc 情報を API 経由で要求
pgp PGP 鍵サーバーで情報を検索
pt Passive Total データベースにリクエスト
pulsedive PulseDive API にリクエスト
quad9 ドメインが Quad9 によってブロックされているか確認
robtex Robtex API で検索 (https://www.robtex.com/api/)
safebrowsing 指定されたドメインが Google Safe Browsing リストにあるか確認
save キャッシュプラットフォームに Web ページを保存
securitytrails SecurityTrails データベースにリクエスト
shodan Shodan API にリクエスト
spyonweb SpyOnWeb を API 経由で検索
subdomains ドメインのサブドメインを調査
telegram Telegram API 経由で情報を要求
threatcrowd ThreatCrowd API にリクエスト
threatgrid Threat Grid API にリクエスト
threatminer TreatMiner データベースにリクエスト https://www.threatminer.org/
tor IP が公開リストに記載されている Tor 出口ノードか確認
totalhash Total Hash API にリクエスト
twitter Twitter API にリクエスト
umbrella ドメインが Umbrella Top 100 万ドメインに含まれているか確認
update Harpoon データを更新
urlhaus urlhaus.abuse.ch API にリクエスト
urlscan urlscan.io で URL を検索および送信
vt Virus Total API にリクエスト
xforce IBM Xforce Exchange API を照会
zetalytics Zetalytics データベースで検索
各コマンドの情報は harpoon help COMMAND で取得できます。
Harpoon の改善にご協力いただいた皆様に感謝します : @jakubd @marrouchi @grispan56 @christalib
ロゴのクレジットは @euphoricfall および PulseDive team に帰属します。
このコードは GPLv3 ライセンスのもとで公開されています。