2024.12.10
“放置系”なのにサイバー攻撃を監視・検知、「統合ログ管理ツール」とは 最先端のログ管理体制を実現する方法
Abusing Webapp Reports for RCE(全1記事)
リンクをコピー
記事をブックマーク
gameshack_氏:こんにちは、gameshack_と申します。このプレゼンテーションは英語のみになります。残念ながらまだ日本語は話せません。今日はWebアプリケーションレポートを使用したリモートコード実行に関するプレゼンテーションを行います。「基本的には、ユーザー入力を絶対に信頼してはいけない」というレッスンです。
自己紹介ですが、私はgameshack_です。実際の名前はパトリックなので、gameshack_またはパトリックと呼んでください。ドイツにあるDRACOONのQAエンジニア兼セキュリティリサーチャーです。
おそらくここにいる誰もがDRACOONのことを聞いたことがないでしょう。主にヨーロッパ、ドイツ、オーストリア、スイスで事業を展開しており、少しずつ拡大しています。
当社はセキュアなファイルサービスソリューションを提供しています。主な特徴はエンドツーエンドの暗号化で、ファイルは常にサービス上で暗号化されています。企業は簡単なファイル共有が可能です。
役割の設定、監査、およびイベントログの取得ができます。マイクロサービスアーキテクチャを採用しており、ほぼすべてのプラットフォームに対応したアプリがあります。
では、DRACOONのレポートとは何でしょうか? 各イベントは基本的にログに記録され、トレースされ、DRACOONインスタンス上でアクションを実行します。
例えば、ユーザーがルームを作成したり、フォルダを作成したり、ファイルにコメントを作成したり、共有リンクを作成したりするといったことが、ウェブサーバーでの通常のログ記録と同様に、すべてログに記録されます。
その後、管理者はレポートを作成し、それをCSVファイルやPDFファイルとしてエクスポートすることができます。
さて、エクスプロイトについてですが、このエクスプロイトは非常にシンプルで簡単です。したがって、ファイルが安全ではないなど、DRACOON自体でエクスプロイトは発生せず、すべてが安全です。
共有リンクからファイルをダウンロードすると、ユーザーエージェントがログに記録されます。
ユーザーエージェントが適切にサニタイズされていなかったため、実際にはどんな種類のAPIエンドポイントにリクエストを送信し、悪意のある文字列をユーザーエージェントとして送信することが可能でした。今回私が使用した悪意のある文字列は、Windowsコンピューター上のコマンドラインを呼び出すものでした。
管理者がレポートを作成し、CSVとしてエクスポートした場合、CSVファイルには修正されずに表示されます。しかし、管理者がそれをExcelまたはGoogleスプレッドシートで開くと、PC上で完全なリモートコード実行が可能になり、悪用される可能性があります。
なぜこれが問題なのでしょうか? Excelには他のプログラムを実行するための古いレガシーな機能があります。この場合、私はCMDを使用し、概念実証として計算機アプリを呼び出していました。
というのも、企業のセキュリティ・ポリシーが正しく設定されていないことがあるからです。もし誰かが自分のオフィスのインスタンスにセキュリティ・ポリシーを正しく設定しなかった場合、そのオフィスは脆弱な状態になり、DRACOONを介して生成されたCSVを通じて悪用される可能性があります。
そろそろデモの時間ですね。ビデオを用意しました。ライブデモは常に少しトリッキーなので、事前に録画しました。これは基本的にDRACOONです。ここでは共有リンクを作成します。
では、ここでDRACOONが表示されます。ファイルがありますね。共有リンクを作成します。この共有リンクをコピーして誰かに送信します。この場合、悪意のある攻撃者ということになります。
悪意のある攻撃者がサイトを訪れ、リクエストをBurp Suiteまたは使用しているツールに記録します。だから私はこれを用意しました。このポストリクエストを取り出します。これは何も必要としませんよね? これは単なるリクエストです。
他のすべてを削除してユーザーエージェントだけを残したので、このユーザーエージェントを送信するだけです。
送信ボタンをクリックします。次に何が起こるのでしょうか? ある時点で、管理者はレポートをチェックしたいと思うでしょう。DRACOONに入り、必要な時間のレポートを作成します。この場合、私は1つのルームに対してレポートを作成します。
デモのためだけにリストがいっぱいになることはありません。レポートを実行し、しばらく待つと、各人のサイトが生成されます。これがレポートです。
ただし、ユーザーエージェントの文字列があるため、このログにもユーザーエージェントが表示され、そしてExcelはあなたに「本当に実行しますか? このデータを信用しますか?」と聞いてくるでしょう。
このレポートを作成したあなたは、もちろん信頼しているでしょう。おそらくこれを読まずに、ただ「はい」をクリックするでしょう。それでは、「はい」をクリックした時に何が起こるか見てみましょう。
電卓が開きます。これは何でもあります。電卓かもしれませんし、文字どおりウイルスかもしれません。これがエクスプロイトが動作する仕組みです。さて、プレゼンテーションの続きに戻りましょう。
さて、まとめです。これを防ぐにはどうすればよいでしょうか? 非常にシンプルですが、ユーザー入力をきちんとサニタイズすることです。ユーザーがテキストフィールドに入力する内容だけでなく、ユーザー入力全般に注意を払うべきです。ユーザーが提出できるものは文字どおりすべてが悪意を持っている可能性があるため、注意が必要です。
非常に単純なものであれば、正規表現を使って数文字を削除するだけでよいので、それほど難しくありません。もう1つできることは、セキュリティポリシーが正しく設定されているか確認することです。
ExcelやGoogleスプレッドシートなど、使用しているものに対してセキュリティポリシーを適切に設定してください。なぜなら、これらのものは危険だからです。私自身は、この種の脆弱性をブログ記事から学びました。これは2017年のかなり古いブログ投稿で、基本的にCSVインジェクションの危険性について書かれています。
OWASPのCSVインジェクションに関する記事へのリンクや、Microsoft 365のセキュリティ設定に関する情報も含まれています。プレゼンテーションをダウンロードして後でリンクを確認したい場合は、QRコードを用意したので、ご活用ください。
誰でもスキャンできます。冗談です、冗談です(笑)。心配いりません、今回はCSVインジェクションはありません。
だいたいこれで終わりです。ありがとうございます。こちらが私の「Twitter(現X)」と「Mastodon」です。もうあまりTwitterは使っていないので、連絡を取りたい場合はMastodonかメールをご利用ください。では、お招きいただきありがとうございました。
関連タグ:
2024.12.10
メールのラリー回数でわかる「評価されない人」の特徴 職場での評価を下げる行動5選
2024.12.09
国内の有名ホテルでは、マグロ丼がなんと1杯「24,000円」 「良いものをより安く」を追いすぎた日本にとって値上げが重要な理由
2024.12.09
10点満点中7点の部下に言うべきこと 部下を育成できない上司の特徴トップ5
2024.11.29
「明日までにお願いできますか?」ちょっとカチンとくる一言 頭がいい人に見える上品な言い方に変えるコツ
2024.12.04
いつも遅刻や自慢話…自分勝手な人にイラっとした時の切り返し 不平等な関係を打開する「相手の期待」を裏切る技
2023.03.21
民間宇宙開発で高まる「飛行機とロケットの衝突」の危機...どうやって回避する?
2024.12.06
嫌いな相手の行動が気になって仕方ない… 臨床心理士が教える、人間関係のストレスを軽くする知恵
2024.12.03
職場の同僚にイライラ…ストレスを最小限に抑える方法 臨床心理士が語る、「いい人でいなきゃ」と自分を追い込むタイプへの処方箋
2024.12.05
「今日こそやろう」と決めたのに…自己嫌悪でイライラする日々を変えるには
PR | 2024.12.04
攻撃者はVPNを狙っている ゼロトラストならランサムウェア攻撃を防げる理由と仕組み