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

推薦する

アップグレード時にクラッシュします。K8s には LTS バージョンが必要です。

著者 |ヤン・ジェン制作 | 51CTO テクノロジースタック (WeChat ID: blog) ...

2012年の百度の最新アルゴリズムの分析

26日の夜、Baiduが大混乱に陥りました。皆さんもご存知のとおり、大小さまざまなウェブサイトがさま...

有名ブログをレビューした後のまとめと考察

自分のブログを有名にすることは、すべてのブロガーの夢です。ブログが誕生した日から、ブロガーたちはいつ...

Zhihui Huayun: カーネルバイパス技術の紹介と Ceph でのその応用

クラウドコンピューティング事業の急速な発展に伴い、国内外のクラウドコンピューティング企業間の特許紛争...

NFS-Ganesha ソースコード分析

1. NFSv4の概要NFS プロトコル (NFSv2) は、もともと 1984 年に Sun Mi...

Google 画像検索のトラフィックを 35% 増やす方法

近年、多くの企業が検索結果における自社のウェブサイトの外観を制御するために、目を引く 65 ~ 75...

口コミマーケティング:利益の少ないプロモーション、高いリターン

口コミマーケティングとは、その名の通り、消費者の口コミを通じて商品の良い評判を広めることです。「新し...

windowsvps - ドイツ/8 USD/4 GB RAM/160 GB HDD/1 Gbps/データ無制限

windowsvps.host は比較的新しい企業で、主に米国ダラスとヨーロッパのドイツのデータセン...

speedypage: 米国の高性能 VPS、4.83 ドルから、AMD Ryzen 7950X+DDR5+Gen4 NVMe

Speedypage は、米国東海岸の Ashburn データセンターの VPS で、AMD Ryz...

ウェブ検索ランキングにおける投票モデルについての簡単な説明

数日前、「選挙のジレンマ」という本を読みました。ある章では、アメリカの選挙制度から始まり、アメリカの...

かつて18ヶ月で6000万ドルを稼いだDiggは50万ドルで買収された。

ニュース共有ウェブサイト Digg 7月13日、かつて「最初のソーシャルメディアサイト」として知られ...

WeChatパブリックアカウントに接続するSogou WeChat検索が正式にリリースされました!

Sogou は WeChat と提携し、WeChat パブリック プラットフォームと記事検索 (we...

Miyun監視ウェブサイト虚偽宣伝監視ウェブサイト違法行為

これまで、密雲県の企業が運営する商業ウェブサイト1,993件が電子商取引規制「レーダーネットワーク」...

ソフトコンテンツマーケティングは、eコマースの運用プロセス全体にわたって実行されます。

ソフトコンテンツマーケティングは、従来の企業のマーケティングプロセスにおいて大きな役割を果たしてきま...

テンセントクラウド音声合成プラットフォームが全面公開、大幅なアップグレードを実施

9月3日、Tencent Cloud音声合成チームは、すべてのユーザー向けに合成オーディオプラットフ...