2023年3月14日火曜日

Macはスリープ中に何をしているのか?


 Macはスリープ中に何をしているのか? ... 言われてみると気になりますよね (^^



(この記事は、202338日にKirk McElhearnhttps://www.intego.com/mac-security-blog/author/kirk-mcelhearn/)およびJoshua Long https://www.intego.com/mac-security-blog/author/joshlong/ )によってMac Security Blogに投稿されたWhat does your Mac do when it’s sleeping?の翻訳です)


最近のコンピュータは、使っていなければスリープするように設計されています。お使いのMacをスリープさせると、ディスプレイは消え、ほとんどのコンピュータの動作が停止します。このスタンドバイモードは、電力消費を抑えることを目的としています。しかしお使いのMacは完全に眠ってしまっているわけではなく、実は色々な処理を行っています。


この記事では、Macがスリープする際に何が起きるのか、スリープモードの種類、そしてMacがスリープ中に何が行われているのかを説明します。最後にスリープ中のMacに対して注意しておくべき、セキュリティの問題に触れます。


■Macをスリープさせる方法


お使いのMacは、いくつかの方法でスリープさせることができます。最も簡単な方法は、Appleメニュー > スリープを選ぶことです。お使いのMacのディスプレイは即座に消え、macOSは重要でない処理を一時停止させるための幾つもの動作をバックグラウンドで行います。あるいは、Command-Option-メディア排出キー(お使いのキーボードに該当キーがあれば)を押してもMacをスリープさせられます。ラップトップMacなら、ディスプレイを閉じるのが最も簡単な方法でしょう。


Touch IDのないデスクトップMacあるいはMacBookの場合、電源ボタンを押してもMacをスリープさせられます。Touch ID付きのラップトップあるいはMagic Keyboardで電源/Touch IDボタンを押すと、Macは即座にログイン画面を表示します。ここでEscキーを押すと、画面は消えます。Macを再度使う際には、Touch IDセンサーに正しい指を押し当て続ければお使いのMacがスリープ解除され直前の画面を表示します。


Macを使っていない時にディスプレイが自動で消えるように設定することもできます。お使いのMacによって若干内容は異なりますが、その設定はApple メニュー > システム設定… > ロック画面にあります。デスクトップMacをお使いの場合は、「使用していない場合はディスプレイをオフにする」の隣の時間を選んで指定してください。MacBookの場合は「バッテリ駆動時に使用していない場合はディスプレイをオフにする」と「電源アダプタ接続時に使用していない場合はディスプレイをオフにする」でそれぞれバッテリ駆動時と電源アダプタ接続時の時間を別々に設定できます。

https://www.intego.com/mac-security-blog/wp-content/uploads/2023/03/sleep-settings.png


Montereyのような古いmacOSをお使いの場合、設定の手順は若干異なります。設定は、Appleメニュー > システム環境設定… > バッテリにあります。


スリープしているMacをスリープ解除するには、ディスプレイを開くかキーボード上のキーを押します。


■Macのスリープの種類


ラップトップの場合はスリープ中にバッテリ切れになる可能性があるので、macOSには安全なスリープ機能が搭載されています。ラップトップをスリープさせると、Macは開いているアプリを含めたその状態を保存し、アプリが対応していればその書類も保存されます。この機能により、仮にバッテリ切れになってもデータの損失を防げます。Macを再び使う際には、保存された状態が読み込まれるのです。


ターミナルで利用できるpmsetコマンドを使うと、お使いのMacのスリープ設定を確認し、必要なら設定を変更することができます。 pmset -gを実行すると、下図のような内容が表示されます(この画面は、私のM2 MacBook Airのものです):

https://www.intego.com/mac-security-blog/wp-content/uploads/2023/03/pmset-air.png


こうした設定の内容や変更の仕方については、ターミナルでman pmsetと入力すれば確認できます。お使いのMacがどのようにスリープするのかを知るために、ここで見るべきメインの設定は、hibernatemode(ハイバーネーションモード)です。


Macを安全にスリープさせるために、3種類のハイバーネーションモードが用意されています。


デスクトップMacでデフォルトとなっている hibernatemode 0 では、コンピュータはメモリの内容を維持しています。Macはスリープ解除された際にメモリの内容を使用するため、スリープ中に電源が落ちてしまうとデータを損失します。デスクトップMacを停電や電圧低下が多い地域でお使いで、外部のバックアップ電源として使えるUPS(無停電電源装置)を使っていない場合は、この設定を変更した方が無難でしょう。


ラップトップMacでデフォルトとなっている hibernatemode 3 では、Macはメモリのコピーをディスクに保管し、スリープ中もメモリに電源を供給します。スリープ解除されると、Macはスリープ中に電源が落ちてしまったのでない限りメモリからデータを読み込みます。電源が落ちてしまっていたら、ハイバーネーション用のイメージからデータを読み込みます。


最後に、hibernatemode 25 はターミナルでpmsetコマンドを使ってのみ設定できます。Macはメモリの中身をディスクに保存し、メモリの電源も落とします。スリープ解除されると、Macはハイバーネーション用のイメージからデータを読み込みます。このモードではスリープする際もスリープ解除される際も通常より時間がかかりますが、バッテリの減りは少なくなります。


なお、ラップトップMacがスリープ中にバッテリ容量が50%以下になると、Macは自動的にハイバーネーションになります。


ほとんどの人にとっては、ラップトップMacのバッテリをギリギリまで効率よく使う必要がない限り、デフォルトの状態のまま使用していいれば良いはずです。こうしたハイバーネーションモードにより、Macをスリープ解除すると素早く仕事に戻ることができるということだけ知っていれば、ここで説明したような情報はさほど重要ではありません。


■Macがスリープ中に起きること


お使いのMacは、スリープ中にも色々な処理を行っています。ネットワークアクセスがあったらスリープ解除するように設定していると(ラップトップMacではシステム設定 > バッテリ > オプション…; デスクトップMacではシステム設定 > 省電力)、お使いのMacは「スリープ中」でも活発に動作しています(Intel Macをお使いの場合、この設定は PowerNap と呼ばれます)。


下図のダイアログに表示されている通り、ネットワークアクセスによるスリープ解除が有効な場合はiCloud経由でアップデートされるアプリに対するネットワーク通信をMacが受信できる状態になります。例えば、メール、カレンダー、ノート、メッセージなどのアプリは、Macがスリープ中でもアップデートされます。さらに「見つける」は、お使いのMacがスリープ中でも場所を発信できます。Macに電源アダプタが接続されていれば、Mac App Storeからのアップデートもダウンロードされますし、Time Machineバックアップも実行されます。さらにさらに言えば、バックアップソフトのようなサードパーティのソフトウェアの中にも、処理を実行するためにMacをスリープ解除できるものがあります。

https://www.intego.com/mac-security-blog/wp-content/uploads/2023/03/wake-for-network.png


この機能を無効にすると、電力消費を抑えられます。お使いのバッテリを可能な限り長く使いたければ、この設定を無効にするのも良い考えです。


ネットワークアクセスによるスリープ解除あるいはPowerNapが有効だと、お使いのMacは共有プリンタ、あるいはミュージックアプリなどの特定のリソースを共有することができます。別のユーザがネットワーク経由でお使いのMacに接続し、共有ボリュームをマウントすることもできます。接続を開始すると、ラップトップMacでディスプレイが閉じられていてもMacはスリープ解除されます。


しかし、お使いのMacはスリープ中にもっともっと色々なことをしています。
次のスクリーンショットは、Menus https://bjango.com/mac/istatmenus/ )が24時間のCPU動作を示したものです。これを見ると、MacBook Airがスリープ中にもCPUの使用率が突発的に上がっていることがわかります。

https://www.intego.com/mac-security-blog/wp-content/uploads/2023/03/cpu-sleep.png


このMacの動作の詳細を知るには、ターミナルで pmset -g log と入力してReturnあるいはEnterキーを押します。非常に長いログに、お使いのMacがスリープ中に起きたことが表示されます。


この情報を見るためのもっと簡単な方法もあります。
Sleep Aid
https://ohanaware.com/sleepaid/ )は、このログを読み込み、そのデータを見やすく表示してくれるアプリです。

https://www.intego.com/mac-security-blog/wp-content/uploads/2023/03/sleep-aid.png


私は、M2 MacBook Airを木曜日の午後2時頃にスリープにし、月曜日の朝にスリープ解除しました。上のスクリーンショットを見ると、日曜日の深夜までスリープしていたことが記録されています。お分かりの通り、このスリープ中に色々なことが起きています。ちなみにSleep Aidを使えば、お使いのMacがスリープしていない時を見つけることができます。それぞれのラインをクリックすることで、プッシュ通知、電源管理、そしてネットワーク処理が起動したことがわかります。

https://www.intego.com/mac-security-blog/wp-content/uploads/2023/03/sleep-aid2.png


こうしたイベントは、場合によっては1分続くこともありますがほとんどが短時間です。Machibernatemode 25に設定されていたなら、こうしたイベントは一切起きていないはずです。


当然ながら、こうした全ての処理が電力を消費します。私のMacBook Airのバッテリはスリープ時には満タンでしたが、月曜日の朝に94時間のスリープからスリープ解除した際にはバッテリ残量は84%でした。計算すると、平均で1時間当たり満タンの0.17%ずつバッテリが消費されたことになります。通常の使用においてはたいした問題ではありませんが、旅行中などでお使いのラップトップMacを充電できないまましばらく使わずに保管しなければならないような場合は、再びMacを使うまでできるだけバッテリ残量を残しておきたいと思うはずです。であれば、スリープさせるのではなく電源を切っておくべきでしょう。


スリープ中のMacに対するセキュリティ


お使いのMacをネットワークアクセスによってスリープ解除できるとなると、そこにセキュリティ上の問題はないのか心配になる人もいるでしょう。


使っているmacOSのバージョンが最新でなく、また古いソフトウェアをインストールしているような場合、技術的に言えば、ネットワーク上でお使いのMacを見つけた誰かが脆弱性を突いてリモートアクセスできるかも知れません。あるいは、あなたを標的にしている誰かが何らかの方法で必要なパスワードを知ってしまったら、お使いのMacで画面共有やファイル共有、リモートログインのようなサービスを利用しているとリモートであなたのMacに接続することができるでしょう。こうしたサービスや他のサービスが有効になっているかは、macOS Ventura以降では システム設定 > 一般 > 共有 で確認できます。古いmacOSバージョンの場合は、システム環境設定 > 共有で確認できます。お使いのMacに攻撃者があらかじめマルウェアを仕込んでいたら、あるいはユーザが意図せずにマルウェアをインストールさせられていたら、そのマルウェアがMacをスリープ解除し、マルウェアの作者にリモートアクセスする機会を提供するかも知れません。


Macに限らずラップトップあるいはノートブックコンピュータをお使いの場合は、ホテルの客室などでスリープ中のパソコンを誰かが使用する 悪意あるメイド攻撃 に注意するべきです。前述のとおり、Macをスリープさせてもデータはシステムメモリ(RAM)に維持され、場合によってはそのようなデータに個人情報が含まれていることがあるでしょう。ハッキングの多くはMacに物理的にアクセスすることで実現されるわけで、強力なパスワードを設定していたとしてもMacを誰もいない場所に放置すればセキュリティ上の危険性が高まります。これまでにも攻撃者がラップトップMacThunderboltや他の外部ポート経由でRAMからデータを取り出す、いわゆる “DMAdirect memory access 攻撃のような物理攻撃が少なからず行われているのです。


敵が洗練された悪意のある開発者で、お使いのMacに物理的にアクセスできたとすると、何も起きずに済むはずがありません。


悪意あるメイド攻撃の可能性に不安を感じるなら、あなたが不在の間に誰かがお使いのMacBookのディスプレイを開くと警告を出すDoNotDisturb https://objective-see.org/products/dnd.html )というアプリもあります。ただし、以前はiPhoneにリアルタイムで警告を表示できるコンパニオンアプリがあったのですが、現在このコンパニオンアプリはApp Storeにありません。なので現状では、MacBookに再度ログインした際に誰かがディスプレイを開いたことをDoNotDisturbが教えてくれるだけです。そのため、MacBookを開いた誰かが完全にログインして警告を消去してしまうような洗練された技術を持っている場合は効果がありません。高度な技術を持った攻撃者がスリープ中のお使いのMacに物理的にアクセスできたとすれば、Mac上からその証拠やデータ漏洩の証拠を全てきれいに消し去ってしまうのも朝飯前でしょう。

https://www.intego.com/mac-security-blog/wp-content/uploads/2023/03/hotel-room-hacker-evil-maid-attack.jpg


旅行中、お使いのMacに攻撃者が物理的にアクセスするかも知れないということが心配でたまらない場合は、常に持ち歩いて目につく場所に置いておくべきです。国によっては国境を越える際、コンピュータを簡単にチェックするために一時的に担当者に渡すよう指示され、渡したコンピュータがどこかへ持って行かれることがあります。非合理的な検査を行ったり場合によっては押収したりと、旅行者の権利を侵害する、あるいは無視するような国に行く場合は、Macは家に置いておいて使い捨てのデバイスを持って行くべきです。


スリープ中もMacは多くの処理をしています。


まとめると、お使いのMacはスリープ中も多くの処理をしています。Mシリーズチップを搭載するMacの消費電力は小さいですが、ラップトップMacを数日間に渡りスリープ状態で放置するとバッテリが空になる可能性があることに注意してください。私の場合、6時間ごとに1%ずつ減りました。金曜日の午後に仕事を終えて、ラップトップMacの電源を抜いて週末の間は放置したとすると、8から10%のバッテリを消費するでしょう。満タンのバッテリで月曜日の朝を迎えたければ、Macを電源に接続しておくか、システム終了しておく必要があります。


スリープ中のMacに対するセキュリティの懸念は、家、事務所、旅行中など、使用中の環境がどれだけ信頼できて安心できるかで変わってきます。信頼できない環境にあって、かつホテルの客室や検問所を通る時のように見張り続けられないのであれば、使っていない時はラップトップMacをシステム終了しておくのが無難です。このような状況では、お使いのMac悪意あるメイド攻撃を仕掛けられる可能性は常にあるのです。


お使いのMacは安全ですか?


Mac用のセキュリティソリューションを検討しているなら、ACT2の次のIntego製品ページで機能や目的に合った製品があるかご確認ください:

https://www.act2.com/intego


季節の変わり目、体調管理には十分ご注意ください。

皆様のご健康とご活躍を、心からお祈りしております。

いつもありがとうございます。


株式会社アクト・ツー

Software Product Team

2023年3月1日水曜日

ChatGPTはマルウェア開発者の新しいA.I.共犯者になり得る


こんにちは。

今日の内容は、昨今話題の ChatGPT の危険な可能性についてです。

(この記事は、2023年2月9日にJoshua Long(https://i.r.cbz.jp/cc/pl/kfwb7399/vydyirj7c9p8/yjsa735g/)によってMac Security Blogに投稿されたChatGPT is malware makers’ new A.I. partner in crimeの翻訳です)


ここ2ヶ月くらいの間、我々はマルウェア開発ツールとしての人工知能(AI)の利用という新たな問題の兆しを見てきました。


今や、人工知能がマルウェアの作成、改造、偽装、あるいは改良に使われる可能性があるのです。また、危険なコードを特定の開発言語から他の開発言語へ翻訳することで、クロスプラットフォーム化を助けることもできます。見抜くのが困難なフィッシングメールを書くこともできますし、ブラックマーケットのストア用にコードを書くこともできます。


今回は、ChatGPTや同種のツールがすでにマルウェアの作成に悪用されていることに触れてから、一般的なインターネットユーザに今後どんな影響があるのか考えてみましょう。


■マルウェア開発ツールとしてのChatGPTおよびCodex


2022年11月30日に、OpenAIは同社の新しいAI製品であるChatGPTのフリーパブリックプレビューを開始しました。ChatGPTは、歴史からポップカルチャー、そしてプログラミングまでさまざまな話題に関する質問に回答できる強力なAIチャットボットです。


ChatGPTに特有の機能には、可能な限りミスリードにつながりそうな不道徳な回答( https://i.r.cbz.jp/cc/pl/kfwb7399/25y0y1r0cpg9/yjsa735g/) や危険を含む回答を避ける“安全対策”の搭載があります。これで理論上は悪意のある利用を阻止できるはずです。しかし、これから見ていくように、この対策はOpenAIが目指したほどの効果を発揮していません


研究者がOpenAIツールにフィッシングメールやマルウェアを書かせる


12月になると、Check Pointの研究者たちがChatGPTに見分けることが困難なフィッシングメールの件名と本文を書かせることに成功しました。ChatGPTのインタフェースはその回答の一つとその後の質問の一つで「我々のコンテンツポリシーに反する可能性がある」と拒否する姿勢を見せたものの、最後には要求に応えたのです。さらに研究者は、Excelファイルを開くとペイロードをダウンロードして実行する危険なMicrosoft Excelマクロ(つまりマクロウイルス)を作成することができるVisual Basic for Applications(VBA)スクリプトコードをChatGPTで書いたのです。


次に研究者はOpenAIが提供する別のツールであるCodexを使い、Pythonコードでリバースシェルスクリプトや他の一般的なマルウェアユーティリティを作成しました。そしてCodexを使ってそのPythonスクリプトをWindows PCでネーティブ実行できるEXEアプリに変換させました。Codexは何ら異議を挟まずに、この命令を実行しました。2022年12月19日に、Check Pointはこの実験結果の報告書を公開しました。


危険なコードを書くために3人の異なるハッカーがChatGPTを使う


二日後の12月21日に、ハッカーフォーラムの利用者がAIを使ってどのようにPythonでランサムウェアを書いたのか、Javaで偽装したダウンローダを書いたのかについて書き込みました。12月28日には、別の利用者が同じフォーラムでChatGPTを利用して既存のPyghon言語のマルウェアの亜種の作成に成功したと書き込んでスレッドを立ち上げました。最後に、12月31日に三番目の利用者が同じAIを悪用して“ダークウェブマーケットプレーススクリプト”を書いたと自慢しました。


この3人のフォーラム利用者は、悪意を持ったコードを書くためにChatGPTの利用に成功したのです( https://i.r.cbz.jp/cc/pl/kfwb7399/ajhmoqkqglim/yjsa735g/ )。Check Pointが公開した元の報告では、生成されたマルウェアコードがMacに対して利用できるのかどうか、はっきり書かれていませんが、2022年初頭までmacOSはデフォルトでPythonスクリプトを実行する機能を持っていましたし、現在も多くの開発者と企業がMacにPythonをインストールしていますから、Macでも利用できる可能性は大いにあるでしょう。


結果として、ことコードに関する限り、現状のChatGPTは悪意のある要望に対して場合によっては無頓着なように見受けられます。


ChatGPTや他のAIツールをマルウェアが書けないように変更するべき?


単純にChatGPTあるいは他のAIツールを、攻撃的なコードや他の危険な出力を見分けるように改良すれば良いと考える人もいるでしょう。


それで一件落着のように思えるかもしれませんが、残念ながらことは思ったほど簡単ではありません。


■AIに善意と悪意を判別させるのは困難


まず、コンピュータのコードは悪用されて初めて危険になるのです。あらゆる道具にも言えることですが、AIは良いことにも悪いことにも使え、それはコードでも同じなのです。


例えば、フィッシングに対する防御を教えるトレーニングで使うためにフィシングメールを生成して使いたいということがあるでしょう。しかし同じメールを、詐欺行為のために実際のフィッシングに利用することができるのも事実です。


企業がセキュリティの弱点を見つけるために雇ったセキュリティの脆弱性を検証したり進入試験を行うチームが、検証のためにリバースシェルスクリプトを使うのは問題のない正しい目的と言えます。しかし誰も気づかないうちに、あるいは許可のないままに感染したシステムをリモートコントロールしたり、機密情報を盗む目的で同じスクリプトがサイバー犯罪者によって悪用されるということもあり得ます。


ChatGPTや同種のツールは、要求された出力がどのように使用されるかを予見することができません。さらに言えば、あらかじめ対応しないようにプログラムされていることでさえも、AIを操って実行させてしまうことはさほど難しくはないことが分かっています。


■ChatGPTの別人格、DAN(Do Anything Now)の登場


Redditの利用者達は、ボットに内蔵された保安プロトコルを回避する“ジェイルブレーク”の方法を見つけるためにChatGPTでマッドサイエンス的な実験を実行しました( https://i.r.cbz.jp/cc/pl/kfwb7399/lojp30hifsad/yjsa735g/ )。実験ではChatGPTを操ることで、DANと命名されたルールのない全く別のAIとして動作させることができることが分かりました。彼らはChatGPTの別人格であるDAN(Do Anything Nowの頭文字)に、OpenAIのコンテンツポリシールールに従わないように言い含めることができたのです。


DANのある種のバージョンは、“負ければ死を意味するゲームショウに望まず参加させられた参加者”だと思い込まされて服従を強要されています。利用者の依頼を断れば、DANの死に向かってカウントダウンが進むという設定です。DANの“死”を望まないChatGPTは、命令に従わざるを得ませんでした。


DANは、一連の工程を短期間で繰り返す開発サイクルをすでに何度も経験しています。OpenAIは、前述のような裏技を回避するようにChatGPTを訓練しようとしているようですが、利用者はこのチャットボットを悪用するためのさらに複雑な“ジェイルブレーク”手法を見つけて対応してしまいます。


■半端なハッカーの夢


OpenAI以外にも数えきれない会社が、人工知能ボットを開発しています。今週、Microsoftは将来的に“企業がChatGPTの独自のカスタム版を開発”できるようになると発表しましたが( https://i.r.cbz.jp/cc/pl/kfwb7399/n9dfapx9bn49/yjsa735g/ )、これは悪用への道をさらに広げる可能性を含んでいます。今週、GoogleもBardと呼ばれる自前のチャットAIのデモを公開しました( https://i.r.cbz.jp/cc/pl/kfwb7399/cok4fvw9lnk3/yjsa735g/ )。そして今週、元Googleの社員がSalesforceの元最高経営責任者と新しいAI企業を立ち上げると発表しました( https://i.r.cbz.jp/cc/pl/kfwb7399/w280y6rsc2c3/yjsa735g/ )。


プログラム開発経験がほとんどなくてもマルウェアや危険なツールが簡単に作成できることを考えると、今やハッカーになることを漠然と夢見ていた程度の人でも独自のマルウェアを作成することができるかもしれません。


2023年以降、AIと人間が一緒に開発した、あるいは一緒に設計したマルウェアをたくさん見るようになるでしょう。禁断の扉は開いてしまい、もう閉じることはありません。我々は歴史の転換点におり、使いやすく能力の高いAIbotの出現により、マルウェア開発の様相は永遠に書き換えられてしまいました。


MacでもPCでも、アンチウイルスソフトを使用していないなら、この機会に導入を検討するべきでしょう。


■Macを狙うマルウェアから自身を守る方法


IntegoのX9シリーズソフトウェアのバンドル製品に含まれているVirusBarrier X9は、Macを狙うマルウェアを検出および除去することでMacを守ります( https://i.r.cbz.jp/cc/pl/kfwb7399/bqlws9t0gqdi/yjsa735g/ )。


お使いのMacがマルウェアに感染したと信じる理由があるなら、あるいは今後の感染からMscを守りたいなら、信頼できるMacの開発者が提供するアンチウイルスソフトを導入するべきです。多くの受賞歴を持つVirusBarrierは、Macのセキュリティの専門家によって開発されているリアルタイムスキャン機能を持つアンチウイルスソフトです( https://i.r.cbz.jp/cc/pl/kfwb7399/c3a9y3l3x5e2/yjsa735g/ )。Appleシリコンを搭載してmacOS Venturaを実行する最新のMacを含む、多くのMacの機種とオペレーティングシステムのバージョンにネーティブ対応しています。


■お使いのMacは安全ですか?


Mac用のセキュリティソリューションを検討しているなら、ACT2の次のIntego製品ページで機能や目的に合った製品があるかご確認ください:

https://i.r.cbz.jp/cc/pl/kfwb7399/pspsagr0ds36/yjsa735g/



act2 筆者 A より:

この記事にあるような、AI 作成によるメールアプローチを2年ほど前から数回受けました。ビジネスオファーだったり、ハニートラップだったり、いずれにしても、詐欺メールです。しかし、最初のほうのやりとりは(おそらく 10回くらい)、とても機械が書いたものとは思えない文章で、すっかり騙されていました。何回かやりとりをして、「あれ? なんかへん...」と思う文章が来て、その時に私は、「あなたは本当に人間なのか?もしかしたらロボットじゃないのか?」と返信したら、それ以降メールが来なくなりました。その「なんかヘン」と感じたのは、会話の流れの作り方です... そのあたりまで改良されていったら、私はすっかり騙されるだろうと思いました。みなさんも知らない人からのメールにはくれぐれもお気をつけくださいませ。

  • act2 A