Zadig + Dongtai IAST: 継続的デリバリーへのセキュリティの統合

Zadig + Dongtai IAST: 継続的デリバリーへのセキュリティの統合

IAST は現在注目されているセキュリティテスト技術です。 Zadig のランタイム環境管理機能を使用して、IAST 機能を日常のワークフローに迅速に統合するにはどうすればよいでしょうか?

この記事では、Zadig K8s プロジェクト + Java サービスを例に、Zadig の既存のサービスの IAST 監視サービス脆弱性情報にすばやくアクセスして、サービスのセキュリティを確保する方法について説明します。

IAST と DongTai とは何ですか?

  • IAST: インタラクティブ アプリケーション セキュリティ テストは近年登場した新しいテクノロジであり、ガートナーによって情報セキュリティ分野のトップ 10 テクノロジの 1 つに挙げられています。 SAST と DAST 技術の利点を組み合わせたものです。 IAST はランタイム エージェント アプローチを使用して、テスト フェーズ中にアプリケーションの動作を分析および監視します。
  • DongTai は、動的フックと汚染追跡アルゴリズムを使用して、一般的な脆弱性検出、複数のリクエストに関連する脆弱性検出 (不正な脆弱性や不正アクセスを含むがこれらに限定されない)、サードパーティ コンポーネントの脆弱性検出などを実装するオープン ソースのパッシブ インタラクティブ セキュリティ テスト (IAST) 製品です。現在、Java および Python でのアプリケーション脆弱性検出をサポートしています。

注: これは主に、セキュリティ チェックを実行するために単一のアクセスのみが必要な開発環境とテスト環境で使用されます。同時実行性の高い本番環境には適していません(IASTパフォーマンステストレポート[1]を参照)。

Zadig と IAST の動作図

準備

1. Zadig で IAST 機能を有効にするサービス。以下は、サービス名が demo であるサンプル サービスです。サービスのYAML構成は次のとおりです(Zadigは新しいサービスを作成します[2])。


APIバージョン: アプリ/v1
種類: デプロイメント
メタデータ:
ラベル:
アプリ: dongtai-java-agent-demo
名前: dongtai-java-agent-demo
仕様:
セレクタ:
一致ラベル:
アプリ: dongtai-java-agent-demo
テンプレート:
メタデータ:
ラベル:
アプリ: dongtai-java-agent-demo
仕様:
コンテナ:
- 名前: アプリコンテナ
イメージ: dongtai/dongtai-java-agent-demo:0.0.1

2. DongTai バックエンド サービスを取得するには、次の 2 つの方法があります。

  • 東台が公式に提供するSaaS版を使用する
  • Docker-ComposeまたはKubernetesを使用してプライベートインストールを完了するインストールドキュメント[3]

最初の方法を例に挙げて、Dongtai が提供する SaaS サービスを使用し、アカウントを登録してログインし、プロジェクト管理インターフェイスに入ります。

  • ページの右上隅にある「+エージェントを追加」をクリックします
  • 「プローブのダウンロード」セクションでは、直接ダウンロードするか、ダウンロードリンクを取得できます。

ここでは、取得する接続が次のとおりであると想定します。

 AGENT_URL = http://192.168.2.169:8000/api/v1/agent/download?url=http://192.168.2.169:8000 & 言語= java
AUTH_HEADER = '認証: トークン 88cab3057e199b95cb0780e2a8ab4771c8874acd'

図のシェル スクリプトは次のとおりです。

 curl - ​​​​agent.jar - k

エージェントインジェクションを使用したデモサービスの作成とデプロイ

  • Zadig でテストするサービスの構成をコピーし、既存のサービスとの競合を避けるために、K8s リソース名やラベルとセレクターなどを変更します。
  • 構成に initContainer を追加し、サービスが配置されているコンテナにエージェントを事前にダウンロードします。
  • サービス起動コマンドを変更し、-javaagent:/path/to/agent.jarを追加します。
  • 新しいサービス (サービス名: demo-with-iast) を作成し、変更した構成を貼り付けて保存します。変更されたサービス YAML 構成は次のとおりです。

APIバージョン: アプリ/v1
種類: デプロイメント
メタデータ:
ラベル:
アプリ: dongtai-java-agent-demo-iast
名前: dongtai-java-agent-demo-iast
仕様:
セレクタ:
一致ラベル:
アプリ: dongtai-java-agent-demo-iast
テンプレート:
メタデータ:
ラベル:
アプリ: dongtai-java-agent-demo-iast
仕様:
ボリューム:
- 名前: ドンタイ-iast-エージェント
空ディレクトリ: {}
コンテナの初期化:
- 名前: エージェント初期化コンテナ
画像: curlimages/curl
ボリュームマウント:
- 名前: ドンタイ-iast-エージェント
マウントパス: /tmp
引数:
- 「-k」
- 「-X」
- "得る"
- ${AGENT_URL} # 先ほど取得したAGENT_URLに置き換えます
- 「-H」
- ${AUTH_HEADER} # 先ほど取得したAUTH_HEADERに置き換えます
- 「-o」
- "/tmp/agent.jar"
コンテナ:
- 名前: アプリコンテナ
イメージ: dongtai/dongtai-java-agent-demo:0.0.1
ボリュームマウント:
- 名前: ドンタイ-iast-エージェント
マウントパス: /agent
環境:
- 名前: JAVA_TOOL_OPTIONS
値: "-javaagent:/agent/agent.jar"
  • 新しく作成したサービスdemo-with-iastを環境にデプロイし(Zadigは環境を作成します[4])、対応する環境内のサービスのログを確認します。次のログが表示された場合、エージェントが正常に注入されたことを意味します。

  • 新しく展開された demo-with-iast サービスに基づいて、サービスの自動テストと機能テストを実行し、内部機能/サービスの呼び出しをトリガーすると、エージェントは操作中に脆弱性情報を自動的に収集して報告します。

この時点で、脆弱性情報は収集され、報告されています。取得した Dongtai バックエンドで、現在のサービス脆弱性関連情報を表示できます。

自動化されたワークフローの構成

サービスの脆弱性情報をリアルタイムで追跡したい場合は、IAST を DevOps プロセスに統合する必要があります。以下では、デモサービスにすでにZadigワークフローとビルド構成(Zadigワークフロー構成[5])が備わっていることを前提としています。この場合、わずか 2 つの手順で既存のプロセスに IAST を簡単に追加できます。

  • 先ほど構成したサービス demo-with-iast をデモ サービスのビルドにバインドします。

  • ワークフローを開始し、サービス demo-with-iast を選択し、最新のサービスをデプロイして検証します。

操作効果

バックエンド インターフェイスに戻り、プロジェクトをクリックして、現在のサービスの脆弱性分析を表示します。

これまで、IAST 検出と Zadig 配信プロセスはシームレスに統合されてきました。エンジニアは、ビジネス サービスの更新に対していつでも脆弱性検出を実行し、より安全かつ確実に製品を反復することができます。

公式サイト: https://koderover.com/

github: https://github.com/koderover/zadig

参考リンク:

[1] Dongtai丨JAVA Agent v1.7.0 パフォーマンス テスト

[2] https://docs.koderover.com/zadig/v1.12.0/project/service/k8s/#新しいサービスを作成する

[3] https://doc.dongtai.io/docs/category/server-deploymentガイド

[4] https://docs.koderover.com/zadig/v1.12.0/project/env/k8s/#環境の作成

[5] https://docs.koderover.com/zadig/v1.12.0/project/workflow/#ワークフローの設定

<<:  インベントリ: 2022 年のエッジ コンピューティング インフラストラクチャ管理ソリューション プロバイダーのトップ 10

>>:  Nagarro が数兆ドルのデジタル資産を効率的に管理するために Amazon Web Services を優先クラウド プロバイダーとして選択

推薦する

パンデミック後、企業のクラウドの利用方法やクラウド戦略はどのように変化するのでしょうか?

COVID-19 の影響でリモートワークが可能になり、IT チームはビジネスを円滑に運営するためにク...

百度はソーシャル検索に注目し始めており、SEOに影響を与える可能性がある

Admin5 Webmaster Networkは2月29日、昨日、百度開放型ブランドゾーンがプロモ...

メガレイヤーはどうですか?シンガポールプレミアム最適化ルートレビュー

メガレイヤーはどうですか?メガレイヤーシンガポールはどうですか? Megalayer はシンガポール...

コンテナ クラウド開発、これらの必須知識についてどれくらいご存知ですか?

今日では、「as a service」の時代が到来し、機能がサービス化され、あらゆるものがインフラス...

DNSPodのWu HongshengがTencentの買収とオープンな協力について語る

テンセントのDNSPodは、アリババのHiChinaを抜いて中国でナンバーワンのドメイン名解決(DN...

budgetvm-89 ドルから、DIY サーバー、E3/E5 サーバー/無料 IPMI/4 つのコンピューター ルーム/Alipay

budgetvmは、価格性能比に優れた最低価格89ドルのDIYサーバー2台を正式に発売しました。元の...

オンライン問題レビュー、JVM Fast Throw のストーリー

[[394549]]まず第一に、これは JVM の基盤となる最適化に関するいくつかの知識ポイントに関...

マイクロソフトはソフトウェアとハ​​ードウェアを組み合わせて現代のオフィスを再定義する

テクノロジーの継続的な発展とビジネスモデルの革新により、効率性の向上とコラボレーションの強化を主な特...

それは単に利益が大きいからでしょうか? Google が Web3 を導入する意図は何ですか?

最近、Google は、ブロックチェーン アプリケーションを実行する開発者にバックエンド サービスを...

ウェブサイト分析の運用分析指標の簡単な分析

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています1. 電子...

#黒5# siteground: Google Cloud で稼働する仮想ホスティングと VPS、85% オフ

高品質の海外仮想ホストを使用することを好む多くのユーザーは、おそらくSitegroundを知っている...

ウェブサイトがキーワードを積み重ねることで検索エンジンからのペナルティを回避する理由の分析

いわゆるキーワードスタッフィングとは、ウェブページの記述規則によれば、前後の文脈と明らかに矛盾する、...

7つのキラーDockerコマンド

Docker は、オペレーティング システム レベルの仮想化テクノロジを使用してソフトウェアをコンテ...

SEO 詐欺師が真実を明かさない理由 (パート 1)

この記事では、SEO オペレーターが非倫理的な行為に従事する動機について説明します。これは出産体験を...

SEO共有: ウェブサイトのSEOに影響を与えるいくつかのアクション

現在、多くの初心者は、セクションや機能の追加、URL構造の変更など、Webサイトの関連情報の変更に注...