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 を優先クラウド プロバイダーとして選択

推薦する

ウェブサイトの最適化効果の向上に関する簡単な説明

ウェブサイトの最適化に取り組んでいる SEO 担当者は、ウェブサイトの効果を最大限に高めたいと考えて...

ウェブサイトの最適化でトラフィックを増やすためにホットキーワードとコールドキーワードを使用する方法

私の友人の多くは、熱膨張と熱収縮という言葉を聞いたことがあると思います。一般の人にとって、熱膨張と熱...

QQ宇宙ロボットファイルの細かい部分と大きな記事を分析する

QQ Space ロボット ファイルに対する皆さんの印象は、Baidu 検索がブロックされ、Baid...

コンテナが AI を強化 - 360 プライベート クラウド コンテナ サービスにおける人工知能の実践

360プライベートクラウドコンテナサービスチームと人工知能研究所チームは協力して、クラウドでの機械学...

ウェブサイトのデザイン分析:ユーザーの本来の習慣に基づいたデザイン

固有の操作習慣の発達はさまざまな側面から生じますが、最も明白なのは、最も一般的なコントロールからのユ...

プロキシハイジャックとは

PR ハイジャックと同様に、私は、多くの場合、罪のないウェブマスターに大きな損害を与える可能性がある...

ウェブサイトを構築するときは、フォントの選択に注意する必要があります

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

evoxt ドイツの VPS はどうですか? evoxtのドイツVPSの詳細なレビュー

Evoxt の VPS データ センターは、香港、大阪、日本、マレーシア、米国ロサンゼルス、英国ロン...

Dynatrace がガートナーの 2019 年 APM マジック クアドラントで 9 年連続リーダーに選出

エンタープライズ クラウド向けソフトウェア インテリジェンス企業である Dynatrace は本日、...

weloveservers プロモーションは 1 日限定: 1G メモリ/60G ハードディスク/1T トラフィック/年間支払い 25 ドル

Weloveservers のプロモーションは 1 日限定で、元の 512M メモリの VPS リソ...

成功するウェブサイト運営の3つのポイント

この間、張立と彼の友人である恵州SEOブロガーの葉建輝は新しいウェブサイトを立ち上げる計画を立ててい...

inmotionhosting-$119/I3 2120/4g メモリ/500g ハードディスク/6T トラフィック/ロサンゼルス

役に立つ情報が見つからなかったので、今日は inmotionhosting のサーバーを紹介したいと...

SEOと職場のルールの共通点

最近昇進しました。実は昇進というほどのものではありません。もう少しやらなければならないことがいくつか...

企業ウェブサイトの最適化に関する3つの提案の簡単な分析

移民労働者は長い間、SEOに関する記事を書いていません。最近オンラインマーケティングを勉強し始めたの...