Linkwarden -Discord Linkスキャナーボット
個人およびコミュニティの使用のために設計されたこの不一致ボットは、不一致チャネル内で共有されるリンクを精査することにより、サーバーセキュリティを強化します。 Virustotal API、Whois Lookups、およびurlscan.ioのスキャンを活用して、包括的なリアルタイム分析を提供し、メンバーの安全なオンライン環境を維持するのに役立ちます。
特徴
- リアルタイムリンク分析:Virustotalデータベースに対してDiscordで共有されているリンクを自動的にチェックし、Whois Lookupsを実行し、スキャンのためにURLをurlscan.ioに送信します。
- 包括的なセキュリティレポート:Virustotalの分析、WHOISからのドメイン登録の詳細、urlscan.ioからのWebページのスナップショット、セキュリティの洞察を含む詳細なレポートを生成します。
- 柔軟なチェックモード:さまざまなユーザーの好みに合わせて、簡潔な概要(シンプルモード)と詳細なレポート(詳細モード)の両方を提供します。
- 使いやすさ:ボットは、シンプルまたは詳細の両方のスキャンモードの両方でチャットでチェックするために送信されるリンクのスクリーンショットを埋め込みます。
- 自動リンクスキャン:ボットは、サーバー全体で送信されるリンクを探し、信頼できるドメインからのものではない場合は自動的にスキャンします。
- カスタマイズ可能な信頼できるドメインリスト
trusted_domains.jsonの追加により、ドメインをスキャンするべきものをカスタマイズできます。 - ロール固有のコマンド-BOTは、
config.pyファイルにリストされている特定の役割を持たないユーザーを形成するコマンドを実行しません。 - リンクソース-BOTは、スキャンされたリンクが適度に容易になるために見つかったメッセージリンクを埋め込みます。
- リンク履歴- ボットログは、スキャンされるように送信されるすべてのリンクをログにし、将来の参照のためにそれらを保持します
- カスタマイズ可能なステータス- カスタムステータスメッセージが組み込まれています。
- クリーンコンソール- すべてのアクションとボットとの対話のカスタム印刷メッセージ。
はじめる
ボットを使用する前に、Discordサーバーでセットアップし、APIキーで構成する必要があります。
前提条件
- サーバー上に管理特権を持つ不一致アカウント。
- Python 3.6以降。
- Virustotalおよびurlscan.ioのAPIキー(それぞれのWebサイトから入手可能)。
インストール
- このリポジトリをローカルマシンにクローンします。
-
pip install -r requirements.txtを実行して、必要な依存関係をインストールします。txt。 - ボットスクリプトと同じディレクトリに
config.pyファイルを作成し(または、既製の「config.py」ファイルを使用し、discord botトークン、virustotal apiキー、urlscan.io apiキー、ギルドID(s)、モデレーターロールID、およびオートリンクの出力が次のフォーマットに出力したいチャネルのIDを作成します。
TOKEN = 'your_discord_bot_token_here'
VIRUSTOTAL_API_KEY = 'your_virustotal_api_key_here'
URLSCAN_API_KEY = 'your_urlscan_io_api_key_here'
guild_ids = [ your_guild_id_here ]
SCAN_CHANNEL_ID = CHANNEL_WHERE_SCANS_SHOULD_GO
ALLOWED_ROLE_IDS = [ MOD_ROLE_ID_GOES_HERE ]
-
main.pyを実行します
依存関係
このボットには、次のPythonパッケージが必要です。
- Py-Cord
- リクエスト
- Python-WhoisこれらはPIPを使用してインストールできます。
pip install py - cord requests python - whois
または、recummess.txtファイルを使用してそれらをインストールすることもできます。
pip install - r requirements . txt
使用法
ボットは、単純なコマンド構造で使用するのが簡単です。次のコマンドをサポートします。
コマンド構造
/checklink [LINK] [MODE]
- シンプルモード:リンクの安全ステータス、WHOISドメイン登録概要、urlscan.ioレポートへのリンクなど、ユーザーフレンドリーな要約を提供します。
/checklink https://example.com simple
- 詳細モード:Virustotal、詳細なWHOIS情報、およびurlscan.ioからの包括的なセキュリティレポートからのベンダー固有の評価に関する徹底的なレポートを提供します。
/checklink https://example.com detailed
- 履歴:スキャンに使用された過去のリンクの簡単なリストを出力し、各リンクが見られた回数を追跡します。
/checklhistory
説明されたモード
- シンプル:Virustotalからのトップ10の警告、WHOIS情報の概要、およびurlscan.ioレポートへのリンクを含む簡潔な埋め込みを表示します。
- 詳細:包括的なレポートを提示し、以下の凡例に従って、各ベンダーに色分けされたドットでマークされ、詳細なWHOIS情報とurlscan.ioセキュリティレポートが記載されています。
ステータスドットの凡例
- 無害:?
- 悪意のある:?
- 疑わしい: ?
- 検出されない:⚪
将来の強化
- ダッシュボードの統合:詳細な結果や統計を含む過去のスキャンの概要を提供するWebベースのダッシュボードを開発します。このダッシュボードは、サーバー内で共有されるリンクの種類と、脅威を特定し、ボットの機能に対する透明性と信頼を高める上でのボットの有効性に関する洞察を提供します。
- 追加のスキャン統合:追加のセキュリティツールとサービスを統合することにより、ボットのスキャン機能を拡張します。この拡張は、より幅広いオンラインの脅威に対するより包括的なカバレッジと保護を提供します。
- ユーザーフィードバックシステム:ユーザー向けのシステムを実装して、誤検知や脅威を逃したなど、スキャン結果に関するフィードバックを提供します。このフィードバックループは、時間の経過とともにボットの精度と有効性を改善するのに役立ちます。
貢献
- あなたの貢献は大歓迎です!新機能の追加、ドキュメントの改善、バグの報告など、このリポジトリをフォークしてプルリクエストを送信してください。
貢献者
- Cazaira-誤検証に対して
trusted_domains.jsonファイルを強くするのを手伝いました。 - Nitrrine-特定のリンクでボットがクラッシュする原因となる重要なバグを発見しました。
ライセンス
このプロジェクトは、MITライセンスに基づいてオープンソースされています。