「1 行コマンドを貼らせる」Mac 向けルアーを端末で調べる(curl と zsh は兄弟プロセス)
偽のインストールページで curl ... | zsh を貼り付けさせる手口は、スクリプトがディスクに残らず、プロセスの親子関係だけ見ても見逃しやすい。調べるときはブラウザー履歴・シェル履歴・コマンドライン・通信記録を組み合わせる。
手口(TradingView を装った事例)
- 「TradingView — Install」と見せかけたページに macOS 用の 1 行コマンドとコピーボタンがあり、「ターミナルに貼って Return、パスワードを入力」と案内する。
- コマンドは
$(echo '...' | base64 -D)で URL を復元し、curl -kfsSLで取ってきた中身をそのままzshに流す。保存先(-o)も署名確認もなく、-kで TLS 検証も切っている。最初の取得は HTTP だった。 - 過去のアーカイブでは同じページが別の配信ドメインを指しており、配信ドメインを差し替えながら使い回していた。同じサイトからは Windows 向けの情報窃取マルウェア(ZIP 内に 128MiB のゼロ埋めをした Go 製ローダー)も配られていた。
調べ方(防御側)
- ブラウザー履歴: ルアーページの URL(末尾スラッシュ違いも)を検索する。
- シェル履歴: 配信ドメイン、Base64 化した URL の先頭部分、
base64 -D、curl -kfsSLなどの文字列で検索する。ただし zsh の履歴はシェル終了まで書かれない・無効化・削除されていることがあり、「履歴にない=安全」ではない。 - プロセスの記録: パイプでつないだ
curlとzshは、多くの場合どちらも同じ対話シェルの子(兄弟)になる。「親が curl の zsh」だけを探す検知ルールは取りこぼす。短命なbase64プロセスや、iTerm などターミナル代替アプリが祖先にいるケースも想定する。 - DNS・プロキシの記録: 配信ドメインへの問い合わせは「実行を試みた」根拠になる。スクリプト本体を正常に受け取った HTTP 応答があればさらに強い根拠になる。エラー応答や DNS だけでは感染とは言えない。
- ディスクにファイルがないことを根拠にしない: 流し込み実行なので、スクリプトは残らないのが普通。
実行していた場合
- その端末は侵害された前提で扱い、証拠を保全してから調査する。
- ブラウザーのセッションを失効させ、認証情報は別のきれいな端末から変更する。暗号資産ウォレットの鍵やシードも漏れた前提で扱う。
予防
- 「ターミナルに貼って実行」と求めるページは、正規の配布元の公式ドメインか必ず確かめる。チームには「インストール手順で 1 行コマンドを求められたら一度止まる」と周知する。
- Windows の「Win+R に貼らせる」系の検知観点は ClickFix 系 RAT を「共通の挙動」で検知する(カスタム GPT 起点) を参照。
- IOC で Cloudflare R2 全体や Telegram・Steam 全体を止めるのは巻き添えが大きい。止めるなら特定のオブジェクトやプロフィール単位にする。
出典
- @MalwareBibleJP · 2026-10-20
- samuelscheit「TradingView impersonation: Mac shell lure and associated Windows infostealer」: github.com