API on Wheels:危険な脆弱性のロードトリップ

2021年11月30日発行
ピーテル・ダンヒョウ著
ケーススタディ

API on Wheels:危険な脆弱性のロードトリップ

2021年11月30日発行
ピーテル・ダンヒョウ著
リソースを見る
リソースを見る

最後にドライブ旅行をしたのはいつですか?あなたが世界のどこにいるかにもよりますが、最近のことかもしれません。でも、オープンロードで気分転換することほど素晴らしいことはありません。 

もちろん、ソフトウェアの脆弱性でなければの話ですが。

テスラジープはすでにセキュリティ研究者と協力し、早期に発見して迅速に修正しなければ深刻な安全性の問題につながる可能性のある悪用可能なバグを発見しています。また、一般的に、ソフトウェアセキュリティはまだ ワイルドウェストの状態にあると言われています。ソフトウェアはあらゆるところに存在しており、多くのコネクテッドデバイス、自動車、およびその周辺機器では、エンドユーザーの教育や注意をはるかに超えるセキュリティ対策が必要とされています。

APIの脆弱性は特に悪質化しており、悪意のあるAPIトラフィックは過去6カ月間だけで300%以上増加しています。最近の自動車は、基本的に車上のAPIであることを考えると、これはかなり気になります。車は他のアプリケーションと接続されており、非常におしゃべりで、多くの脆弱なエンドポイントの1つとして標的型攻撃に巻き込まれる可能性があります。 

電気自動車の充電器が「多すぎる」と言ったら

コネクテッド・ビークルは、ソフトウェアの安全性が問われていますが、その付属品についてはどうでしょうか。Pen Test Partners社の天才的なスタッフは、6つの家庭用電気自動車充電ブランドと、広く普及している公共の電気自動車充電ネットワークに、コードレベルの脆弱性をいくつか発見しました。

誰が充電器を気にするのか?攻撃者は何を得るのでしょうか?残念ながら、パワフルで高度な技術が私たちのために残業してくれることの弊害として、これらのデバイスは一般的に「TMI」と呼ばれる悪いケースを抱えています。電気自動車の充電器は、クラウドベースの環境で、APIを介してコンパニオン・モバイル・アプリケーションと通信しています。APIは、アプリ間の通信を可能にするものですが、これらのエンドポイントが慎重に設定されていない場合、多くの情報が共有されたり、最悪の場合、脆弱なアプリのバックドアを介してアクセスされたりする可能性があります。

Pen Test Partners社は、数百万台の電気自動車用充電器が乗っ取られる可能性のある非常に危険な脆弱性を発見しました。また、APIの認証に問題があり、アカウントの乗っ取りやリモートコントロール/アクセスが可能なケースが複数あり、さらには複数の電気自動車用機器を同期制御することで電力網を混乱させる可能性もありました。これらの問題はすべて修正されましたが、わずか数行のコードが、攻撃者とコア機能およびサービスインフラの完全な破壊との間に存在していたという事実は、深く憂慮すべきものです。 

それは、マスターマインドの問題でもありません。例えば、WallboxのAPIには2つの安全でない直接オブジェクト参照(IDOR)があり、これを悪用されるとアカウントの乗っ取りが可能になります。IDORは、OWASPの「APIの脆弱性トップ10」で第2位にランクインしている「認証の不備」に該当します。汚れのようにありふれたもので、品質の高いコードの学習と実装に失敗したことを示しています。機密性の高いデバイスやアプリを、無数のバグだらけの通信経路で接続することに固執することはできず、設定が不十分なAPIはまさにそれに該当します。 

自動車用APIを安全に利用するには、教育と忍耐が必要です。

APIセキュリティの不満な点は、それがサイバーセキュリティの新たな災害を軽減するためのものとして宣伝されているにもかかわらず、実際には、ウェブ開発において何十年も前から見られてきた同じ古い問題を新たに設定しているに過ぎないことです。クロスサイトスクリプティング、インジェクション、設定ミスなど、聞き覚えがありませんか?

NISTのような組織が最近発表した指標は有望であり、ソフトウェアセキュリティの規制と標準化が進んでいることを示しています。しかし、日々書き込まれる大量のコードを守るために必要なセキュリティ対策を施すには、必要な専門家の数がまだ十分ではありません。開発者は、セキュリティに関する知識と責任を高める必要がありますが、それは開発者が率先して行うことではありません。家電製品の組み込みシステムや、自動車を誰かの遠隔操作のおもちゃにしてしまうようなAPIを開発しているチームがあれば、彼らが一般的な脆弱性を持ち込まないようにするために必要な知識を身につけさせなければなりません。 

例えば、安全なAPIとXSSによる脆弱性を持つAPIの違いはごくわずかですが、開発者は、劣悪なコーディングパターンと優れたコーディングパターンを区別するニュアンスを示す必要があります。それに加えて、手抜きの開発プロセスでは、APIの設定が通常通りに行われていることが多く、多くの場合、設定されたタスクを実行するための最低限の要件を超える膨大な権限が与えられているため、脅威の表面が非常に多くなり、データが盗まれる可能性があります。これらの要因は、構築時に考慮する必要がありますが、許容できる開発手法に組み込まれていなければ、そのプロセスはリスク要因であり続けるでしょう。

新たな脅威となる人物の出現を防ぐために

脅威となるアクターの標的としてAPIが劇的に増加していることは、注目が低いと思われる果実に移っていることを示しています。そしてこの例では、車両の乗っ取りという形で生命を脅かす可能性があることに加えて、重要な報酬を得るためのパイプラインとなり得るものです。 

APIのセキュリティを放っておくと、後になって問題が発生し、最悪の場合、壊滅的な結果を招く可能性があり、最悪の場合、手直しが必要になったり、パフォーマンスが低下したりすることになります。APIのセキュリティは、ソフトウェアのコミュニケーション・エコシステムの一部として重要視されるべきであり、クラス最高のセキュリティ・プログラムのリストの上位に位置するものでなければならない。そのために重要なのは、それぞれのAPIを人間と同じように扱い、どのようなアクセス権を持つべきかを評価することだ。経理部のジムは、会社全体のすべての重要な法的文書にアクセスする必要があるでしょうか?おそらくそうではないだろう。一般的に、現実世界の人員の場合、アクセスコントロールは正しく決定される。同じことがAPIにも言えます。APIは強力なおしゃべりなので、他のすべてのものと同じようにゼロトラスト方式で設定されていなければ、あなたの秘密を誰にでも知られてしまうということを覚えておくことが大切です。

組織は厳戒態勢を敷かなければなりません。開発者は、このような脆弱な絶望への入り口とは無縁の高品質なコードを作成するために、現場で必要な目となります。今こそ、開発者に、セキュリティを意識したエンジニアとして成長し、活躍する機会を与えるべきです。この目標に向けた正しい考え方と、作成の重要な段階で正しい判断を下すための実践的なスキルを身につけてもらいたいと思います。

リソースを見る
リソースを見る

著者

ピーテル・ダンヒユー

Pieter Danhieuxは、セキュリティコンサルタントとして12年以上の経験を持ち、SANSの主席講師として8年間、組織、システム、個人をターゲットにしてセキュリティの弱点を評価する方法に関する攻撃的なテクニックを教えている、世界的に有名なセキュリティエキスパートです。2016年には、オーストラリアで最もクールな技術者の一人として認められ(Business Insider)、Cyber Security Professional of the Yearを受賞(AISA - Australian Information Security Association)、GSE、CISSP、GCIH、GCFA、GSEC、GPEN、GWAPT、GCIA認定を保有している。

もっと知りたい?

セキュアコーディングに関する最新の知見をブログでご紹介しています。

当社の豊富なリソースライブラリは、安全なコーディングアップスキルに対する人間的なアプローチを強化することを目的としています。

ブログを見る
もっと知りたい?

開発者主導のセキュリティに関する最新の研究成果を入手する

ホワイトペーパーからウェビナーまで、開発者主導のセキュアコーディングを始めるために役立つリソースが満載のリソースライブラリです。今すぐご覧ください。

リソース・ハブ

API on Wheels:危険な脆弱性のロードトリップ

2024年1月22日発行
Pieter Danhieux著

最後にドライブ旅行をしたのはいつですか?あなたが世界のどこにいるかにもよりますが、最近のことかもしれません。でも、オープンロードで気分転換することほど素晴らしいことはありません。 

もちろん、ソフトウェアの脆弱性でなければの話ですが。

テスラジープはすでにセキュリティ研究者と協力し、早期に発見して迅速に修正しなければ深刻な安全性の問題につながる可能性のある悪用可能なバグを発見しています。また、一般的に、ソフトウェアセキュリティはまだ ワイルドウェストの状態にあると言われています。ソフトウェアはあらゆるところに存在しており、多くのコネクテッドデバイス、自動車、およびその周辺機器では、エンドユーザーの教育や注意をはるかに超えるセキュリティ対策が必要とされています。

APIの脆弱性は特に悪質化しており、悪意のあるAPIトラフィックは過去6カ月間だけで300%以上増加しています。最近の自動車は、基本的に車上のAPIであることを考えると、これはかなり気になります。車は他のアプリケーションと接続されており、非常におしゃべりで、多くの脆弱なエンドポイントの1つとして標的型攻撃に巻き込まれる可能性があります。 

電気自動車の充電器が「多すぎる」と言ったら

コネクテッド・ビークルは、ソフトウェアの安全性が問われていますが、その付属品についてはどうでしょうか。Pen Test Partners社の天才的なスタッフは、6つの家庭用電気自動車充電ブランドと、広く普及している公共の電気自動車充電ネットワークに、コードレベルの脆弱性をいくつか発見しました。

誰が充電器を気にするのか?攻撃者は何を得るのでしょうか?残念ながら、パワフルで高度な技術が私たちのために残業してくれることの弊害として、これらのデバイスは一般的に「TMI」と呼ばれる悪いケースを抱えています。電気自動車の充電器は、クラウドベースの環境で、APIを介してコンパニオン・モバイル・アプリケーションと通信しています。APIは、アプリ間の通信を可能にするものですが、これらのエンドポイントが慎重に設定されていない場合、多くの情報が共有されたり、最悪の場合、脆弱なアプリのバックドアを介してアクセスされたりする可能性があります。

Pen Test Partners社は、数百万台の電気自動車用充電器が乗っ取られる可能性のある非常に危険な脆弱性を発見しました。また、APIの認証に問題があり、アカウントの乗っ取りやリモートコントロール/アクセスが可能なケースが複数あり、さらには複数の電気自動車用機器を同期制御することで電力網を混乱させる可能性もありました。これらの問題はすべて修正されましたが、わずか数行のコードが、攻撃者とコア機能およびサービスインフラの完全な破壊との間に存在していたという事実は、深く憂慮すべきものです。 

それは、マスターマインドの問題でもありません。例えば、WallboxのAPIには2つの安全でない直接オブジェクト参照(IDOR)があり、これを悪用されるとアカウントの乗っ取りが可能になります。IDORは、OWASPの「APIの脆弱性トップ10」で第2位にランクインしている「認証の不備」に該当します。汚れのようにありふれたもので、品質の高いコードの学習と実装に失敗したことを示しています。機密性の高いデバイスやアプリを、無数のバグだらけの通信経路で接続することに固執することはできず、設定が不十分なAPIはまさにそれに該当します。 

自動車用APIを安全に利用するには、教育と忍耐が必要です。

APIセキュリティの不満な点は、それがサイバーセキュリティの新たな災害を軽減するためのものとして宣伝されているにもかかわらず、実際には、ウェブ開発において何十年も前から見られてきた同じ古い問題を新たに設定しているに過ぎないことです。クロスサイトスクリプティング、インジェクション、設定ミスなど、聞き覚えがありませんか?

NISTのような組織が最近発表した指標は有望であり、ソフトウェアセキュリティの規制と標準化が進んでいることを示しています。しかし、日々書き込まれる大量のコードを守るために必要なセキュリティ対策を施すには、必要な専門家の数がまだ十分ではありません。開発者は、セキュリティに関する知識と責任を高める必要がありますが、それは開発者が率先して行うことではありません。家電製品の組み込みシステムや、自動車を誰かの遠隔操作のおもちゃにしてしまうようなAPIを開発しているチームがあれば、彼らが一般的な脆弱性を持ち込まないようにするために必要な知識を身につけさせなければなりません。 

例えば、安全なAPIとXSSによる脆弱性を持つAPIの違いはごくわずかですが、開発者は、劣悪なコーディングパターンと優れたコーディングパターンを区別するニュアンスを示す必要があります。それに加えて、手抜きの開発プロセスでは、APIの設定が通常通りに行われていることが多く、多くの場合、設定されたタスクを実行するための最低限の要件を超える膨大な権限が与えられているため、脅威の表面が非常に多くなり、データが盗まれる可能性があります。これらの要因は、構築時に考慮する必要がありますが、許容できる開発手法に組み込まれていなければ、そのプロセスはリスク要因であり続けるでしょう。

新たな脅威となる人物の出現を防ぐために

脅威となるアクターの標的としてAPIが劇的に増加していることは、注目が低いと思われる果実に移っていることを示しています。そしてこの例では、車両の乗っ取りという形で生命を脅かす可能性があることに加えて、重要な報酬を得るためのパイプラインとなり得るものです。 

APIのセキュリティを放っておくと、後になって問題が発生し、最悪の場合、壊滅的な結果を招く可能性があり、最悪の場合、手直しが必要になったり、パフォーマンスが低下したりすることになります。APIのセキュリティは、ソフトウェアのコミュニケーション・エコシステムの一部として重要視されるべきであり、クラス最高のセキュリティ・プログラムのリストの上位に位置するものでなければならない。そのために重要なのは、それぞれのAPIを人間と同じように扱い、どのようなアクセス権を持つべきかを評価することだ。経理部のジムは、会社全体のすべての重要な法的文書にアクセスする必要があるでしょうか?おそらくそうではないだろう。一般的に、現実世界の人員の場合、アクセスコントロールは正しく決定される。同じことがAPIにも言えます。APIは強力なおしゃべりなので、他のすべてのものと同じようにゼロトラスト方式で設定されていなければ、あなたの秘密を誰にでも知られてしまうということを覚えておくことが大切です。

組織は厳戒態勢を敷かなければなりません。開発者は、このような脆弱な絶望への入り口とは無縁の高品質なコードを作成するために、現場で必要な目となります。今こそ、開発者に、セキュリティを意識したエンジニアとして成長し、活躍する機会を与えるべきです。この目標に向けた正しい考え方と、作成の重要な段階で正しい判断を下すための実践的なスキルを身につけてもらいたいと思います。

弊社製品や関連するセキュアコーディングのトピックに関する情報をお送りする許可をお願いします。当社は、お客様の個人情報を細心の注意を払って取り扱い、マーケティング目的で他社に販売することは決してありません。

フォームを送信するには、「Analytics」のCookieを有効にしてください。完了したら、再度無効にしてください。