今すぐ聞く
下の音波をクリックしてドラッグし、任意のポイントにスキップします。 あなたもすることができます 直接聞く Soundcloudで。
ダグ・アーモスとポール・ダックリンと。 イントロとアウトロの音楽 エディスマッジ.
あなたは私たちに聞くことができます Soundcloud, Apple Podcasts, Googleポッドキャスト, Spotifyは, 縫い合わせます そして、その良いポッドキャストが見つかるところならどこでも。 または単にドロップします RSSフィードのURL お気に入りのポッドキャッチャーに。
トランスクリプトを読む
ダグ・アーモス。 JavaScript、NetUSB、Log4Shell、FTC…
それ以上:それはNakedSecurityポッドキャストです。
【ミュージックモデム】
皆さん、ポッドキャストへようこそ。
私はポールです。 彼はダグです…
ポール・ダックリン。 [笑い]あなたはそこで本物の間違いを犯したと思いますね。
ダグ。 やった。
アヒル。 それは実際には冗談ではありませんでした。
ダグ。 *私は*ダグです…ショーの最初のXNUMX分間は、いつものように自動操縦を行っています。
アヒル。 さて、私たちはたくさんのソフトウェアのバグについて話します…その種の間違いを犯すのは簡単です。
ダグ。 話し合うことがたくさんあるので、それについて説明します。
今日はちょっとした稲妻のようなものがあります。 カバーする物語がたくさん。
ご存知のように、私たちはショーを 楽しい事実:XNUMX日の金曜日について迷信を持っているなら、ギリシャ、スペイン、またはイタリアに住んでいない限り、あなたは一人ではありません。
ギリシャとスペインは、XNUMX日火曜日を最も不運な日と見なしています。 イタリア人は金曜日のセブンティースに警戒している。 そしてポール、あなたが知っているように、私たちはこれを 今週の技術史 ショーの後半のセグメント。
アヒル。 Triskaidekaphobia!
ダグ。 いくつかの場所で書かれているのを見たことがありますが、聞いたことがなければ読むのはほとんど不可能なので、大声で言ってくれてうれしいです…
アヒル。 Τρισκαίδεκα…それはただの古代ギリシャ語です 13、恐れの言葉で。
だから実際には、それは必ずしもXNUMX日の金曜日ではなくXNUMXの恐怖ですが、彼らは一種の一緒に行きます。
ダグ。 不気味で奇妙なことが起こる日。
そして、不気味で奇妙な話をすると、この「JavaScript開発者」の話はワイルドです!
アヒル。 不気味かどうかはわかりませんが、奇妙です。 おそらく少し悲しい。
ダグ。 では、ここで何が起こったのでしょうか。
アヒル。 それは、サプライチェーン攻撃と呼ばれるものでした。JavaScriptで記述されたコードを、NPM、GitHub、または取得した場所から、さまざまなプロジェクトの負荷によって消費されるオープンソースモジュールからプロジェクトに吸い込みます。 MITオープンソースライセンスの下で。
したがって、それが自分のものであると主張しない限り、自由に使用できます。商用コードで使用することもできます。
そして、そのようなXNUMXつのプロジェクト、faker.jsとcolors.jsの開発者は、突然、十分だと判断しました。
彼は、数年前に、このすべての仕事をするのに少しうんざりしていて、給料がもらえないといういくつかの兆候を示していました…
…有名なXKCDの漫画、ダグのように。
ダグ。 [笑い]
アヒル。 「プログラムのこの細い小さな柱によってすべてが支えられ、2003年以来ネブラスカのランダムな人によってたゆまず維持されています」– *その* XKCD漫画.
ダグ。 はい。
アヒル。 この男は明らかに「まあ、私は十分だ」と決めました。
したがって、faker.jsの場合、彼は基本的にすべてのプラグを抜いただけで、すべてのソースコードを削除しました。
彼は、必要に応じて、ソースコードを含まないプロジェクトの最終バージョンを作成しました。 コメント「エンドゲーム」があります。 READMEには、「アーロン・シュワルツはどうなったのか」と書かれています。
彼は有名なハクティビストであり、大量のファイルを取得したことで逮捕された後、非常に悲しいことに自殺しました。彼がファイアウォールの背後にあるべきではないと感じた学術論文ですが、法律はそうではないと感じました。
それが彼がこのfaker.jsでしたことです
そして、それはプログラムの奇妙な名前ですが、それはあなたのために偽のデータを作成するので、実際に持っていることは非常に便利なものでした。
最近のポッドキャストでそれについて話しましたね、ダグ?
プライバシーの問題に巻き込まれないように、実際のデータを使用しないことの重要性について。
ええと、彼はそのプラグを引っ張ったので、あなたが最新バージョンにアップデートした場合、それはすべてなくなっています。
更新する必要はありません–法的に古いものを使用し続けることが許可されています–しかし、明らかに、彼はドッジシティから出る時が来たと判断しました。
しかし、colors.jsでは…悲しいことに、彼は無限ループを含む新しいバージョンを発行し、実行時に色を追加するのではなく、基本的に奇妙に見えるゴミを印刷するという点で、理解しにくいアプローチを取りました。コンソール出力。
ERROR、WARNINGなどの単語を強調するために色が好きな人がいることをご存知でしょう。
しかし、サプライチェーンと呼ばれるものの一部としてこの更新を自動的に受け入れた場合、プログラムは開始値666から実行されるこのループに入るため、突然サービス拒否攻撃を受けます…
ダグ。 [笑い]
アヒル。 …JavaScript値Infinityまでですが、含まれていません。
このループは、大量のガベージを追加して「テスト、テスト、テスト、テスト、テスト」を出力します。
それはあまり良いことではなかったと言えますが、新しいバージョンを受け入れる必要はなく、コードはそこにあり、表示されていました。それは決して隠されていませんでした。
それはあなたが行ってそれをレビューすることができるオープンソースです。
とにかく、何人かの人々が殴られて古いバージョンに戻らなければならなかった、そしてこれは彼のGitHubアカウントへのコメントの連鎖全体を始めた。
彼はおそらく当然のことながら、彼のGitHubアカウントから締め出されていると思いますが、そこには何百ものコメントがあります。
「ええ、私はあなたと一緒です、仲間」と行く人もいます。 私はあなたがどこから来ているのかわかります」と他の人々は言います、「あなたは何を知っていますか? おそらく一歩遠すぎます。」
ダグ。 このようなものに依存している商用ソフトウェアパッケージの数を考えてみてください…
アヒル。 ダグ、あなたはほとんどLog4jと言っていました。
ダグ。 [笑い]それについては少し後で話しましょう。
アヒル。 さて、これのタイミングはおそらくLog4jをめぐる騒ぎによって引き起こされたのではないかと思います>
たぶんそれがこのチャップを引き起こしたのですか?
私の理解では、彼はfaker.jsツールキットを商品化しようとしました。これは非常に便利です。 あらゆる種類の現実的なデータを作成できるかなりの量のコード。
彼はそれを商品化しようと試み、彼に支払いをしたい人々が彼に支払うことができるオンラインサービスを作成しましたが、それは彼にとってうまくいかなかったようで、それは本当に持続可能ではありませんでした。
それで彼はそのプラグを引っ張った。
しかし残念ながら、彼は他のプロジェクトで井戸を毒を盛って、それが私たちの立場です。
ダグ。 これは、 ソフトウェア部品表、またはあなたがそうするなら、あなたのソフトウェアを購入しようとしている消費者または人々のための成分リスト…
…それで、彼らはそれが持っているオープンソースコンポーネントの数、またはすべてがどこから来ているのかを知ることができます。
アヒル。 はい、多分それはこれの銀の裏地です。
Log4jは根本的な問題を解決しませんでした:その機能は4年にLog2013jに追加されましたか?
そして今まで誰もそれに気づかなかった、そして彼らが気づいたとき、「ああ、なんて勇気があるの?」
さて、あなたは何年も前にこの問題があることに気付かずにコードをソフトウェアに取り入れました、そしてあなたはそれに対してお金を払っていませんでした。 多分それはあなたが捕らえられたので、それが誰かのせいであるがあなた自身のせいであったことを示唆することは少し上を超えています。
つまり、銀色の裏地は、少し幼稚なことだったと言えますが、あなたが言うように、私たち全員が受け入れるのに役立つかもしれません。 ソフトウェア部品表 –「リストされた成分」。
多分それは良い考えです。
ダグ。 さて、そこではたくさんの良い議論があります。
その話は呼ばれます JavaScript開発者は、サプライチェーンの「レッスン」で自分のプロジェクトを破棄します nakedsecurity.sophos.comで
だから、あなたはそこに向かい、読んで意見を述べることができます。
次に、NetUSBについて説明します。
何年も前に、USB経由でプリンターをホームルーターに直接接続して、「わあ、できました! テクノロジーはついに頂点に達しました!」
アヒル。 NetUSBは、台湾のKcodesという会社からライセンスを取得できる製品です。
彼らはマーケティング資料で、世界中のネットワークデバイスの20%以上がKcodesコードを埋め込んでいると主張しているので、かなり成功しているようです。
また、NetUSBは、必要に応じて、汎用USB仮想化機能です。
つまり、集中型のハードドライブやNAS、またはプリンターを接続できるというだけではありません。
NetUSBは、TVチューナー、オーディオデバイス、あらゆる種類のものなど、他のものを一元的に処理できます。
つまり、ネットワーク上、コンピューターと(残念ながら)ルーター上の特別なカーネルドライバーの間を走る一種の仮想USBケーブルがあります…
…理論的には、ほとんどすべての人がルーターを乗っ取ることができるバグが見つかったドライバー。
まあ。
ダグ。 ああ、確かに。
アヒル。 そのため、そのバグはセンチネルワンのマックスヴァンアメロンゲンと呼ばれる研究者によって発見されました。
どうやら、彼は2年のPwn2021OwnIoTハッキング競争に参加することを検討していたようです。
彼は、Netgearにデバイスがリストに含まれているのを見て、次のように考えました。 見せてください。"
彼は、TCPポート20005でリッスンしているカーネルドライバがあることを発見しました…その数は任意であるように思われるので、この問題があることを示す信頼できる指標ではありませんが、ポートスキャンの方法を知っている場合は出発点になる可能性があります。
そして、マックスは次のように考えました。「ねえ、すべてのネットワークインターフェイス(ローカルホスト、LAN、WAN)にカーネルドライバーがリストされていますか? そこに脆弱性がある場合、それはリモートで悪用される可能性があります。 それが私が焦点を合わせ始めるところです。」
そして彼はそこでコードを掘り下げました。
ご想像のとおり、NetUSBのようなもの–サポートするさまざまな機能があります。
HTTPについて考えると、GET、POST、HEAD、OPTIONなどの数十のコマンドがありますが、NetUSBのように、数十の異なるタイプのデバイスと数十の異なる機能を備えたものは、おそらく数百の異なるコマンドをサポートします。
そして彼は、コマンド0x805F –それは任意だと思います。32863…
そのコマンドは、送信されるデータを処理するときに、番号17を含む厄介な小さなバグDouglasを持っていました。
基本的に、バグはこのようになります。
このコマンドを実行する場合–コマンドはメッセージと関係があります。 コマンド自体ではなく、実際に問題を引き起こすのは前処理であるため、コマンドが何をするのかわかりません…
…カーネルドライバが最初に行うことは、「OK、あなたからのデータが必要になります。 送信するデータの量を教えてください。」と、XNUMXバイトの値を受け入れます。 (これがどこに向かっているのかわかります…)
次に、その量のメモリを割り当てます。
さて、それは長さチェックを行わないので、それは悪いように聞こえます。
その人が「ああ、XNUMXギガのRAMを割り当てたい」と言ったらどうしますか? [笑い]
さて、あなたは、平均的なホームルーターでは、それが機能しないだけで、正常に失敗することを想像します。
問題は、「4GBからXNUMXバイトを引いたものが欲しい」、つまりXNUMX進数のFFFFFFFFです。
次に、その数のバイトを割り当てようとする代わりに、32ビットルーターには4GBのRAMがないため、明らかに機能しません。
…コードが何をするか、それは言うでしょう、「まあ、あなたがそれを使わなくても、あなたがそれを必要とする場合に備えて、私はあなたが望むだけ多くのメモリを割り当てるつもりです。 そして、私自身の一時的な使用のために17バイト余分に必要です。」
したがって、非常に大きな正の符号なし整数*と17バイト*のメモリが割り当てられます。
これは、XNUMX年問題や車の走行距離計のスタイルをラップアラウンドします。
そのため、攻撃者は「4GB〜1バイトのRAMを割り当ててほしい。これは、将来、その量までの任意のサイズのメッセージを送信できることを意味する」と言う可能性があります。
しかし、整数のオーバーフローのために、カーネルは16バイトのバッファのみを割り当てます。
次に、カーネルは「そうです、データを送ってください」と言うでしょう、そしてあなたはそれを好きなだけ送ってください…
もちろん、16バイトを超えて送信すると、誤ってすべてが割り当てられてしまい、カーネル内にバッファオーバーフローが発生します。
来ていただきありがとうございます; ゲームオーバー。
ダグ。 OK、ファームウェアの更新を待つ必要があるようです。
アヒル。 まあ、良いニュースはこれが責任を持って開示されたことです。
2021年半ばに作業が行われたにもかかわらず、今年についてのみ書かれた理由は、これがNetUSB製品を製造している会社に、そしてライセンスを取得している可能性のあるすべてのベンダーに責任を持って開示されたためです。製品。
そのため、彼らは全員、このバグがあり、それを修正する必要があることを認識していました。
そのため、責任を持って開示され、パッチが利用可能です。
唯一の問題は、自分が脆弱かどうかをどうやって見つけるかということです。
先に述べたように、Nmapなどのプログラム、ポートスキャナーを使用して、ルーターでポート20005が開いているかどうかを確認することができます。これは、このようなものがある可能性があることを示す良いヒントです。研究者はそもそもそれを見つけました。
しかし、もちろん、それは単なる症状です。そのポートを開いているか閉じているかは、バグがあるかどうかを意味するわけではありません。
したがって、このNetUSB機能をサポートするルーターをお持ちの場合は、プリンターだけでなくほとんどすべてのUSBデバイスを一元的に接続できるので、ルーターのベンダーのWebサイトにアクセスして、更新があるかどうかを確認してください。
ダグ。 OK、そして私たちは将来そのような不正行為を軽減するのを助けることができるいくつかの他のアドバイスを持っています。
アヒル。 はい、私たちが記事に書いた他のアドバイスは、危険にさらされている可能性のあるホームルーターのユーザーに対するものではありませんでした。 利用可能なパッチがあるかどうかを確認してください。」
私たちはプログラマーにいくつかのアドバイスをしました:XNUMXつの簡単なこと。
まず、本当に必要な場合を除いて、デフォルトですべてのネットワークインターフェイスをリッスンしないでください。
次に、特にメモリ割り当てに関連する場合は、整数演算の結果を常に確認してください。
そしてXNUMX番目のヒントは、整数のアンダーフローと整数のオーバーフローをチェックすることです。
古い学校の車の走行距離計を逆方向に実行することを想像すると、車の走行距離計は負の数を実行できないため、000000より前の数値は-999999ではなく1です。
「17バイトのスペアがあるはずだ」とは思わないでください。ないかもしれないので…
…ユーザーが確認する必要があります。
ダグ。 [OK]をクリックします。
記事は次のとおりです。 NetUSBをサポートするホームルーターには、重大なカーネルホールが存在する可能性があります、nakedsecurity.sophos.com
今がその時です 今週の技術史!
ショーの前半でXNUMX日の金曜日について話しました…。
アヒル。 私はこれがどこに向かっているのかを知っています、そしてそれはコンピュータウイルス、ダグに関係していると思います。 [笑い]
それが私の疑いです…
ダグ。 どうやって知ったの? [笑い]
今週、13年1989月XNUMX日金曜日、XNUMX日の金曜日に英国全土のコンピューターにウイルスが感染しました。
これは1988日の金曜日の最初のウイルスではなく、1989月XNUMX日の金曜日から発病するように設定された時限爆弾ウイルスである、いわゆるエルサレムウイルスの亜種である場合とそうでない場合があります。 XNUMX年。XNUMX年XNUMX月のXNUMX日の金曜日でした。
どちらのウイルスもマシンの速度を低下させましたが、COMMAND.COMはそのままにしました。
そしてポール、あなたはそれを生き抜いたので、これらすべてのものについていくつかの素晴らしい色を持っています。 「あなたはそこにいました、男。」
アヒル。 歴史はどのように繰り返されますか。
当時から多くの教訓を学ぶことができますが、COMMAND.COMに関する教訓は非常に興味深いものです。
メモリから、DOSの世界でウイルスに感染する最も初期のファイルのXNUMXつ(米国のリーハイウイルスであった可能性があります)は、COMMAND.COMファイルに感染したときに、 COMMAND.COM、そして何人かの人々はそのファイルのサイズを覚えていました。
それで、すぐに言葉が広まりました。「ねえ、このウイルスビジネスは簡単に対処できます。 COMMAND.COMのサイズを監視するだけで、サイズが変わるとウイルスに感染します。」
したがって、人々が作成するように招待された推論は次のとおりです。それが*変更されない*場合、あなたはウイルスに感染していません。
では、ウイルス作成者はほとんどすぐに何を始めたのでしょうか。
ダグ。 [笑い]
アヒル。 COMMAND.COMを除くすべてのファイルに感染しました。これは、COMMAND.COMが誰もが注目しているファイルだったためです。
しかし、これは別の時代であったことを示しています…ウイルスが非常に少ないために同じ場所から別のウイルスになる可能性があると仮定して、*都市*全体にちなんでウイルスに名前を付けることができたとき。
ダグ。 はい、時代は変わりますが、常に良いとは限りません。
時代の変化と言えば、ホンダは独自の2年問題を抱えているか、タイムマシンのように機能するものをうっかり作ってしまったようです。
アヒル。 ダグ、そこでのあなたの仕事が大好きです–それはとても良いセグエです。
ダグ。 ありがとうございました!
アヒル。私は次に何が来るかを知っていました、そして私はそれを予測しませんでした。
はい、ホンダのタイムマシン。
間違いなく 過去に戻る、そうではありませんか? いいえ バック·トゥ·ザ·フューチャー.
どうやら、特定の年齢のホンダ車の所有者-真新しいものでも、真古いものでもありません。 車は明らかにXNUMX年ほど前のものでなければなりません…
…2022年の元日、人々が車を始動するとき、しばらくすると、時計は01年2002月XNUMX日の真夜中頃に戻りました。
残酷なことなので、言うべきではありませんが、2002年を思い出せないなら…
ダグ。 ああ、いや、いや、noooooooooooo…。
アヒル。 できますか?
ダグ。 違う!
アヒル。 ちっぽけなオーストラリアのポップスター、カイリー・ミノーグの「ラ・ラ・ラ、ラ・ラ・ラ・ラ、ラ・ラ・ラ・ラ・ラ・ラ・ラ」という歌詞の曲がチャートにあったとしましょう。はるか昔に行った。
そして、誰もその理由をまったく知りませんでした。
これまでのところ、これはGPSロールオーバーと呼ばれるものに関連していると思われます。これは、19年問題が人々の行動によって引き起こされたのと同じです。 XNUMXを推測し、年にXNUMX桁を使用します。」
もちろん、GPSは1970年代に発明されたものであり、これらの遠方の衛星からの帯域幅は非常に限られています。
そして、彼らは、私たちが行うことは、数年ではなく1024週間の間隔で実行することだと考えました。
つまり、「週番号」があり、週番号に使用できるビットは10ビットだけです。
したがって、1024週間ごとに、古い学校のGPSデバイスはDayZeroと呼ばれるものに戻ります。
私はそれらを「kiloweekaries」と呼んでいます、そしてそれらのkilowwekariesは1980年から1999年まで行きます。 1999年から2019年; そして2019年から2039年。
さて、06年2019月1999日に悪名高いキロウィークリーリセットがありました。そこでは、古いGPS受信機を持っている人々が「XNUMX年に戻るのだろうか」と疑問に思っていました。
した人もいなかった人もいます。
しかしもちろん、XNUMX年問題のように、*正確なロールオーバー期間*でのみこれに見舞われる必要はありません。
ご存知のように、50年問題では、多くのソフトウェアが行ったことは、XNUMXが実際に次のXNUMX年を参照する前に何かを想定することでした。
したがって、50は1950を意味しますが、49は2049を意味します。したがって、ミレニアムバグはまだありますが、少しシフトします。
ダグ。 未来の世代がそれに対処しましょう!
アヒル。 絶対に。
もちろん、GPSロールオーバーでそれを行うことができ、それは多くのソフトウェアが行うことです。
使用する開始日をどのように知っていますか? それを行うための明白な方法は、GPSデバイスで現在実行されているソフトウェアをコンパイルする時間、日付、または年を使用することです。これは、元に戻すことはできないためです。
したがって、次のような比較を行うことができます。「このソフトウェアが、たとえば2003年より前に機能することは期待していません。したがって、2003年より前の年が表示された場合は、私は範囲。"
そして、あなたがしていることは、GPS 1024週間の期間の開始から数日、数週間、数ヶ月、数年、つまりおよそ20年に取り組んでいるということです。 19年XNUMXヶ月半…。
…基本的に数日かかり、現在のキロウィークリー期間の終わりにシフトします。
そして提案はそれがホンダをここで捕らえたものであったかもしれないということです。
そうだと思うのは、英国で人気のIT出版物であるThe Registerの読者が、この影響を受けたホンダCR-Vを持っていて、車を始動するたびにコメントしたからだと思います。 、時計が何をすべきかわからないかのように、時刻は01年2002月XNUMX日に戻ります。
そのため、デフォルトとして年の初めを選択しています。 (ただし、もちろん、時計はGPSによって供給されるため、手動で設定することはできません。)
この場合、正しい時刻はわかっているように見えますが、何年かはわからないため、「深夜から始めます。多かれ少なかれ、プラスマイナスです。あなたがいると思うタイムゾーンは何でも。」
どうやら、この男は、彼のGPSが2002年1024月、ほぼ正確にXNUMX週間前であると考えていたことを発見しました。これが、これがGPSロールオーバーのようなにおいであると彼に思わせた理由です。
ダグ。 面白い。
アヒル。 そして、これがどのように起こったかについて私が思いつくことができた最良の推測です:それはミレニアムバグのようなものによって引き起こされますが、当然のことながら、1970年代にGPSに組み込まれた制限に関連しています。宇宙を通して確実にそれを取得する必要があります。
それで、ダグ、何が起こったのか誰が知っていますか?
しかし、今日コードを書いているときに、「今日私がクランクアウトしているコードが2042年でもまだ使用されている可能性はどのくらいあるのか」と考えるプログラマーにとっては、これは兆候です。
…答えは*おそらく*そうではありませんが、非常に*おそらく*可能性があります。
ダグ。 あなたは、決して知らない!
アヒル。 したがって、今日あなたが下す決定は、はるか先の人々に本当に影響を与える可能性があります。
ダグ。 「子供たちのことを考えてください」私が何を意味するか知っていますか?
アヒル。 まさに!
20年問題が証明したように; このようなバグが証明するように、コンピュータソフトウェアの寿命に関しては、XNUMX年は非常に長い時間ですが、非常に短い時間でもあります。
ダグ。 絶対に。
わかりました、それは魅力的な話です–いくつかの良いコメントが進行中ですので、来てそれについてすべて読んでください: 2002年にフラッシュバックしたホンダの車–「頭から離れられない」.
そして今、私はそのイヤーワームを持っています…。
アヒル。 あなたがそう言った! 私は実際にそれらの言葉を使ったとは思いません。
私はちょうど言った、[歌、徐々に消えていく]「ラ・ラ・ラ、ラ・ラ・ラ・ラ/ラ・ラ・ラ、ラ・ラ…」
ダグ。 ここでがっかりするのは好きではありませんが、残念ながらAppleのバグはありません…
アヒル。 [不安]私は自分自身を耳にした!
ダグ。 あなたは自分自身を耳にしたのですか?
今週はAppleのバグストーリーはありませんが、Log4Shellストーリーを提供することはできません。
だから多分それは私たちの新しいアップルバブルの話です-私たちはそれらのいくつかを持っています。
アヒル。 私は本当に自分自身を耳にしたので、Log4jが私の頭からその歌を揺さぶることを望んでいます、ダグ、そして私は本当に文句を言うことができませんか?
ダグ。 いいえ!
アヒル。 Aaaaargh。
さて、それは完全にLog4jではありませんが、重要なリマインダーです。
先週のポッドキャストでご存知のように、米国の公共部門がどのように布告したかについて話しました。 放置しないでください。 今日それをしなさい。 それはそれ自身の一致でなくなることはないでしょう。」
さて、新年が来ます。 連邦取引委員会がやってくる– FTCは基本的に米国の消費者権利団体であり、米国の管轄区域で事業を行っている企業に対して、非常にパンチの効いた、箱型の小さなリマインダーが出てきました。
あなたがサイバー犯罪の被害者であるとしても、パッチを当てることでそれを防ぐことができ、そうすることを期待するのが合理的であれば、あなた自身も責任を負う可能性があります。
彼らは彼らが言ったことにかなりパンチがあり、警告にはこれらの言葉が含まれています、ダグ: 「FTCは、Log4jまたは同様の既知の脆弱性の結果として、消費者データを露出から保護するための合理的な措置を講じることができない企業を追跡するために、その完全な法的権限を使用する予定です。」
ダグ。 おっと!
アヒル。 Naked Securityが「早くパッチを当て、頻繁にパッチを当てる」と言っているだけではありません。
FTCは、同情はこれまでのところしか進んでおらず、同じ理由、つまりパッチを適用していないために、サイバー犯罪の被害者とコミッターの両方になる可能性があることを思い出させます。
それは詐欺師を入れます、そして私たちはあなたにそれを気の毒に思います。
しかし、率直に言って他の誰もがそうであった予防策を講じることによって、あなたが合理的に彼らを締め出すことが期待されたかもしれない場所に詐欺師を許すなら、多分あなたはそのいくつかのために缶を運ばなければならないでしょう。
ダグ。 さて、彼らが「Log4jまたは同様の既知の脆弱性の将来」と言ったとき、それほど遠くないところに、このH2バグと同様の脆弱性がありました。
アヒル。 はい、驚くべきことにLog4Shellに似ています。
そして実際、そもそもLog4Shellの脆弱性につながる同様の種類のプログラミングについてJavaコードを調べていた研究者によって発見されました。
このバグ、CVE-2021-42392は、JFrogと呼ばれるサプライチェーン管理会社によって発見されました。
彼らは、「ねえ、このJNDIのものの同様の使用を含む可能性のあるすべてのJavaコードを調べてみましょう」と決定しました–これ Javaネーミングおよびディレクトリインターフェイス Log4jのバグで悪用可能であることが判明しました。
そして、JNDIを覚えているなら、それはあなたが実際に言うことです。「ねえ、私はあなたにこのデータを調べてほしい。 ああ、私はデータを持っていませんが、いくつかのデータのURLをお送りします。 実際、プログラムのURLをお送りします。プログラムを実行して、それが何を示しているかを確認してください。」
JFrogは、このJNDI名検索機能を使用したり、多分使いすぎたりする可能性のあるコードの部分が他にいくつあるのか疑問に思っていたと思います。
残念ながら、彼らはH2と呼ばれる人気のあるJavaSQLデータベースエンジンですぐに見つけました。
さて、正直に言うと、ダグ、H2のことは聞いたことがありませんでした。
ダグ。 いいえ、私もです。
アヒル。 MySQL、PostgreSQL、SQLite、すべてのNo-SQLデータベースのものについて聞いたことがあります。
しかし、Log2jについて実際に聞いたことがなかったのと同じ理由で、H4について聞いたことがありませんでした。その名声は、たとえば、MySQLやMicrosoft SQLとは異なり、十分にコンパクトなものだったということです。サーバーとそれに接続します–ねえ、あなたはそれをあなたのアプリケーションに吸い込むことができます、あなたのアプリケーションの一部としてH2を持っています。
ダグ。 かっこいい、イケてる!
アヒル。 これは、インストールした可能性のあるアプリケーションのもう4つのものです。JavaアプリがLogXNUMXjをプルしたのと同じように、アプリケーションがこれをプルした可能性があります。
悪いニュースは、バグがLog4Shellの脆弱性とほぼ同じように機能することです。このJNDIを取得し、ローカルルックアップを実行する代わりに、「ねえ、あなたは何を知っていますか? ルックアップのために、ここにURLがあります。 このJavaクラスファイルを取得して実行してください。」
つまり、悪用可能性につながるのは同じ一連のイベントです。
それは悪いニュースです。
幸いなことに、私が知る限り、攻撃者がこれを悪用できる唯一の現実的な方法は、ネットワーク内のコンピューターの2つにあるこのHXNUMXコンポーネントの構成ファイルに侵入して変更できる場合です。
言い換えれば、これは、リモートでコードが実行されるというよりも、特権の昇格または横方向の移動のトリックです。
なぜなら、穴が開いていればリモートコード実行に使用できますが、私が何を意味するかを知っていれば、リモートアクセスのために全体を開くためにローカルアクセスを取得する必要があります。
ダグ。 はい。
アヒル。 つまり、ネットワークに侵入できるようにするには、ネットワークに侵入する必要があります。
ただし、Log4Shellの問題と同じように、誤って存在していた機能であるため、パッチを適用する必要があります。
したがって、それはまだパッチのバグです。 Log4Shellで見られたのは、リモートでコードが実行される可能性のある大惨事ではありません。
ダグ。 OK、アドバイスがあります。
H2データベースエンジンを実行しているアプリがあることがわかっている場合は、バージョン2.0.206にアップグレードできます。 または、わからない場合は、ネットワーク上のH2コードのインスタンスを検索できます。
アヒル。 はい、それはLog4jの問題に少し似ていますね。
人々がそれについて考えるのをやめたとき、彼らは実際に、Javaにあるアプリの数を最初から知らなかったことに気づきました。 そして、彼らはそれらのうちどれだけがLog4jを含んでいたかを知りませんでした。
彼らが探しに行ったとき、彼らは「ゴリー、私たちが思っていたよりもはるかに多くのJavaアプリがあり、それらの多くはたまたまLog4jを持っていた」と気づきました。
このH2と同じです。気付かないうちに、アプリの動作に含まれる可能性があります。
ダグ。 その部品表が再びあります-その部品表が必要です!
アヒル。 まさに!
つまり、Log4jで行ったように、log4jDASHを探していました…
…ここでは、h2 DASH STAR DOTjarと呼ばれるファイルを探すことができます。これがJavaアーカイブです。
それらのファイルが表示されたら、もしあれば、おそらくh2 DASH two DOT zero DOT somenumberまたは他のDOTjarのようなものを思い付くでしょう。
そして、あなたが言ったように、ダグ、あなたが探しているのは2.0.206以降です。
ダグ。 OK、みんな、それに飛び乗って!
それは呼ばれています 人気のあるJavaSQLデータベースエンジンH4に見られるLog2Shellのようなセキュリティホール、nakedsecurity.sophos.comで。
アヒル。 そして、あなたがそれに飛び乗らなければならないということを私たちから奪わないでください。 FTCからそれを取ってください!
ダグ。 はい、真剣に! [笑い]
アヒル。 彼らが人々を脅迫しているとは言いたくありませんが、彼らは「それは重要です」と言っています。
ダグ。 彼らは「強く促している」。
そして、nakedsecurity.sophos.comでその詳細を読むことができます。 FTCは、パッチが適用されていないLog4jおよびその他の脆弱性に対する法的措置を脅かしています.
そして、ショーの締めくくりとして、 ああ! 番号! その週の。
RedditユーザーLordDragon24Aug965、書き込み…
アヒル。 それが全体の名前ですか?
ダグ。 それが完全な名前です、はい。
アヒル。 もう一度やり直してください、私はそれをすべて捕まえませんでした…
ダグ。 LordDragon24年1965月XNUMX日…
アヒル。 [皮肉]それは彼の誕生日ではないでしょうか?
ダグ。 それは、彼が「昔に戻って…」と言うことから始めたからかもしれません[笑い]
私は、コンピュータ雑誌で宣伝していたユビキタスPCクローンハウスのXNUMXつで唯一の電話サポート技術者でした。
私たちはソフトウェア会社に200台のコンピューターを販売し、最初のコンピューターは会社のVPに直接行って、残りの注文を作成しながらテストしました。
店を出る前にテストしたマシンは電源が入らないと、営業担当者はパニックに陥りました。
マシンにライトがまったくないというVPに電話しました。
私は彼らに後ろを見て、当時唯一のファンであった電源ファンが回転しているかどうかを確認するように依頼しました。
彼は私にちょっと待ってと言った–彼は電気をつけなければならなかった。
知らないの?
彼はそれをスイッチ付きのコンセントに差し込んでいた。
そしてポール、私はこれがあなたにとっても理にかなっているのかどうか知りたいです…。
最後に、「営業担当者は、手数料を節約するために昼食を買ってくれました」と言います。
森の首に「スイッチ付きコンセント」の概念さえありますか?
アヒル。 実際、私はこれまですべての管轄区域で人生を生きてきたと思います…
…*スイッチが入っていない*コンセントの現象は発生していません。
ダグ。 ああ、そうです、そうです!
アヒル。 安全上の理由から、スイッチをオフにして、スイッチをオフにしてみませんか?
これは、リングメインを使用する英国で特に関係があります。XNUMXつのコンセントが稼働している場合、それらはすべて稼働しています。
ですから、私が理解しているように、法律によって切り替えられるアウトレットがあります。
私たちが持っている奇妙なこと-私が住んでいたXNUMXつの国では、規制があります-米国ではそれがないと思います-バスルーム内の電灯のスイッチは許可されていません。
ダグ。 面白い。
アヒル。 浴室の外に通常の電灯のスイッチが必要です。または、最も一般的には英国では、スイッチが天井にあり、電気を通さない紐で操作されるプルスイッチがあります。
ただし、バスルームにスイッチ(またはコンセント)を設置することは許可されていません。
ダグ。 面白い!
さて、今日はたくさんのことを学びました。これと私たちが話し合った他のすべてのことについて私に教えてくれてありがとう。
そして、あなたが持っている場合 ああ! 番号! 送信したい場合は、ポッドキャストで読んでください。
メールでtips@sophos.comに送信できます。 あなたは私たちの記事のいずれかにコメントすることができます。 または、social @NakedSecurityに連絡してください。
それが今日の私たちのショーです–聞いてくれてありがとう。
ポール・ダックリンの場合、私はダグ・アーモスです。次回まで、次のことを思い出させてくれます…
どちらも。 安全を確保してください!
【ミュージックモデム】