概要
- LinkedIn経由の偽面接 でマルウェア感染寸前の体験談
- リアルな企業・人物を装った巧妙な詐欺手口 の詳細
- AIによるコードチェック で被害回避
- 開発者が狙われやすい 新たな攻撃ベクトル の警告
- 安全対策の重要性 と具体的な防御策の提案
偽ブロックチェーン企業による面接詐欺体験談
- LinkedInでMykola Yanchii (SymfaのChief Blockchain Officer)からスカウトメッセージ受信
- Symfaは実在企業、プロフィールも本物らしく、1,000人以上のコネクション保持
- 「BestCity」という不動産向けプラットフォーム開発の パートタイム案件 を提案
- 8年のフリーランス経験 を持つ筆者でも「本物」と錯覚する巧妙なアプローチ
- 面談前に「テストプロジェクト」 (React/Nodeのコードベース)を送付される
仕掛け
- Bitbucketリポジトリ はプロフェッショナルな外観、READMEやドキュメントも完備
- 一般的なコーディングテスト に見せかけて、30分間コードを確認・修正
- 普段は Dockerなどで隔離実行 するが、今回は急いでいて未実施
- コードを実行する直前、 AI(Cursor AI agent)に「怪しいコードがないか」チェックを依頼
- userController.js内に難読化された不審なスクリプト を発見
マルウェアの正体
- byteArrayからデコードしたURL (https://api.npoint.io/2c458612399c3b2031fb9)にアクセスし、外部からコード取得・即時実行
- サーバー権限で管理者ルートに埋め込み、実行されれば全データ流出リスク
- URLは24時間で消滅、証拠隠滅も徹底
- VirusTotalでの解析結果も「危険」、ウォレット・パスワード・ファイル全てが標的
詐欺オペレーションの特徴
- LinkedInプロフィールは完璧、実在の肩書・経歴・投稿内容も本物そっくり
- 企業ページも充実、社員やフォロワーも多数
- 初期連絡やプロジェクト内容も自然、Calendlyで面談調整
- 悪意のあるコードはサーバーコントローラに巧妙に埋め込み
心理的トリック
- 「面接前にテスト提出を」 という緊急性の演出
- LinkedIn認証済みアカウント・企業 による信頼感
- 「よくあるコーディングテスト」 という親近感
- 実在企業の社会的証明 による安心感
- 開発者心理を巧みに利用、普段は警戒心が強い人も騙されやすい
学びと警鐘
- AIによるコードレビュー が救いの一手
- 高価なセキュリティツールよりも「怪しいコードをAIで確認」 が有効
- 開発者は日常的に外部コードを実行 するため、標的として最適
- サーバーサイドで実行されるマルウェア は、環境変数・DB・ウォレット・ファイル全てにアクセス可能
攻撃規模とリスク
- 同様の手口で多数の開発者が標的 になっている可能性
- 開発者マシンは「王国の鍵」 (本番認証情報・ウォレット・顧客データ)を保有
- LinkedIn等による信頼性の偽装・標準的な面接プロセス でカモフラージュ
- 多層難読化・リモートペイロード・証拠自動消去 など技術的にも高度
- 一度感染すれば、企業システムや顧客データが一気に危険に晒される
開発者へのアドバイス
- 未知のコードは必ずサンドボックス実行 (Docker、VM等)
- AIでのパターンチェック を習慣化、実行前に30秒で確認
- 「本物のLinkedInプロフィール」や「企業ページ」も信用しすぎない
- 急かされて実行を促されたら要注意
- 「コーディングチャレンジ」送付時は常に警戒心を持つこと
まとめ
- 開発者向けの新たな標的型攻撃 が急増中
- AI活用とサンドボックス運用 が自己防衛の鍵
- LinkedInやBitbucket等の信頼性を過信せず、常に疑う姿勢 が重要
- 「自分は大丈夫」と思わず、すべての開発者が警戒を強める必要性
参考:該当Bitbucketリポジトリ
- https://bitbucket.org/0x3bestcity/test_version/src/main/
- ※アクセス可能期間は不明、証拠隠滅のため早期削除の可能性あり