当前位置:网站首页>Zadig + cave Iast: let safety dissolve in continuous delivery
Zadig + cave Iast: let safety dissolve in continuous delivery
2022-06-24 19:27:00 【Zadig cloud native delivery】

IAST As a kind of security testing technology, it has attracted much attention , How can we make use of Zadig Runtime environmental management capability , Fast will IAST Ability to integrate into our daily workflow ?
IAST As a kind of security testing technology, it has attracted much attention , How can we make use of Zadig Runtime environmental management capability , Fast will IAST Ability to integrate into our daily workflow ? In this paper Zadig K8s project + Java Service as an example , To understand in Zadig How to quickly access existing services in IAST Monitoring service vulnerability information , Escort the service safety .
What is IAST & DongTai?
IAST: Interactive application security testing (Interactive Application Security Testing), It is a new technology rising in recent years , By Gartner The company is listed as a leader in the field of information security Top 10 One of the technologies . It is a blend of SAST and DAST Advantages of Technology ,IAST Use the runtime proxy method to analyze in the test phase & Monitor application behavior .
DongTai Is an open source passive interactive security test (IAST) product , Through dynamic Hook And stain tracking algorithm to achieve universal vulnerability detection 、 Multi request correlation vulnerability detection ( Including but not limited to ultra vires 、 Unauthorized access )、 Third party component vulnerability detection, etc , At present, we support Java、Python Application vulnerability detection of two languages .
️ Be careful : It is mainly used for development environment and Test environment , That is, security detection can be carried out with a single access , It is not suitable for production environments with high concurrency ( Reference resources IAST Performance test report [1])
Zadig & IAST Operating principle diagram

preparation
1. Zadig To be opened IAST Functional services , Here is a sample service , service name :demo , service YAML The configuration is as follows (Zadig New service [2]):
apiVersion: apps/v1kind: Deploymentmetadata: labels: app: dongtai-java-agent-demo name: dongtai-java-agent-demospec: selector: matchLabels: app: dongtai-java-agent-demo template: metadata: labels: app: dongtai-java-agent-demo spec: containers: - name: app-container image: dongtai/dongtai-java-agent-demo:0.0.1
2. obtain DongTai backend service , There are two ways :
- Use the hole state official SaaS edition
- Use Docker-Compose perhaps Kubernetes Complete the privatization installation Installation document [3]
Let's take the first method as an example , Use the hole state official SaaS service , Sign up for a login account , Enter the project management interface :
- Click on the top right corner of the page 「+ Add Agent」
- stay 「 Download probe 」 Part can be downloaded directly or get the download link

Here we assume that the connection we get is :
AGENT_URL= http://192.168.2.169:8000/api/v1/agent/download?url=http://192.168.2.169:8000&language=javaAUTH_HEADER= 'Authorization: Token 88cab3057e199b95cb0780e2a8ab4771c8874acd' The following is the Shell Script :The following is the Shell Script :
curl -X GET "http://192.168.2.169:8000/api/v1/agent/download?url=http://192.168.2.169:8000&language=java" -H 'Authorization: Token 88cab3057e199b95cb0780e2a8ab4771c8874acd' -o agent.jar -k
establish & Deploy Inject Agent Of demo service
- stay Zadig Copy the service configuration to be tested , modify K8s resource name as well as label&selector etc. , Avoid conflicts with existing services .
- Add in configuration initContainer, Advance agent Download to the container where the service is located .
- Modify the service startup command , add to -javaagent:/path/to/agent.jar
- New service , service name :demo-with-iast, Paste the modified configuration and save , The modified service YAML The configuration is as follows :
apiVersion: apps/v1kind: Deploymentmetadata: labels: app: dongtai-java-agent-demo-iast name: dongtai-java-agent-demo-iastspec: selector: matchLabels: app: dongtai-java-agent-demo-iast template: metadata: labels: app: dongtai-java-agent-demo-iast spec: volumes: - name: dongtai-iast-agent emptyDir: {} initContainers: - name: agent-init-container image: curlimages/curl volumeMounts: - name: dongtai-iast-agent mountPath: /tmp args: - "-k" - "-X" - "GET" - ${AGENT_URL} # Replace with the previously obtained AGENT_URL - "-H" - ${AUTH_HEADER} # Replace with the previously obtained AUTH_HEADER - "-o" - "/tmp/agent.jar" containers: - name: app-container image: dongtai/dongtai-java-agent-demo:0.0.1 volumeMounts: - name: dongtai-iast-agent mountPath: /agent env: - name: JAVA_TOOL_OPTIONS value: "-javaagent:/agent/agent.jar"
5. The new service demo-with-iast Deploy to environment (Zadig Create an environment [4]), View the logs of services in the corresponding environment , The following log will mean agent Inject success .

6. Based on newly deployed demo-with-iast service , Automated testing of running services & A functional test , Trigger internal functions / Invocation of service ,agent It will automatically collect and report vulnerability information during operation .
thus , Vulnerability information has been collected and reported , You can get it just now Dongtai backend View information about current service vulnerabilities in .
Configure automated workflows
If we want to track the vulnerability information in the service in real time , We need to IAST Into our DevOps In the process . Let's assume that demo The service already has Zadig workflow & Build configuration (Zadig Workflow configuration [5])), At this time, we only need two steps to easily IAST Join our existing process .
- The service we just configured demo-with-iast And demo Build bindings for services .

2. Start workflow , Choose services demo-with-iast, Deploy and validate our latest services .

Running effect
Go back to the hole backend Interface , Click item , You can see the vulnerability analysis of the current service :

So far we have IAST Testing and Zadig The delivery process is seamlessly integrated , Engineers can detect the vulnerability of business service updates at any time , More secure and reliable iterative products .
Reference link :
[1] Cave state JAVA Agent v1.7.0 Performance testing
[2] https://docs.koderover.com/zadig/v1.12.0/project/service/k8s/# New service
[3] https://doc.dongtai.io/docs/category/server- Deployment Guide
[4] https://docs.koderover.com/zadig/v1.12.0/project/env/k8s/# Create an environment
[5] https://docs.koderover.com/zadig/v1.12.0/project/workflow/# Configure workflow
Zadig, Let engineers focus more on creating !
Welcome to join Make complaints about open source Tucao group
边栏推荐
- PingCAP 入选 2022 Gartner 云数据库“客户之声”,获评“卓越表现者”最高分
- Starring V6 platform development take out point process
- IBPS开源表单设计器有什么功能?
- 8 challenges of BSS application cloud native deployment
- Kubernetes集群部署
- How to protect biological privacy in the AI era? Overview of the latest "privacy enhancement technology in biometrics" of the Autonomous University of Madrid, comprehensively detailing the biometric p
- 想问下 pgsql cdc 账号同一个 多个 task 会有影响吗,我现在3个task 只有一个 有
- 企业网络管理员必备的故障处理系统
- Ask a question. Adbhi supports the retention of 100 databases with the latest IDs. Is this an operation like this
- 敏捷之道 | 敏捷开发真的过时了么?
猜你喜欢

西北工业大学遭黑客攻击?双因素认证改变局面!

three. Basic framework created by JS

This is not safe

Zadig + 洞态 IAST:让安全溶于持续交付

Do you have all the basic embedded knowledge points that novices often ignore?

Starring V6 platform development take out point process

微信小程序轮播图怎么自定义光标位置

通过SCCM SQL生成计算机上一次登录用户账户报告

Tkde2022: Dialogue recommendation system based on knowledge enhanced sampling

Download steps of STM32 firmware library
随机推荐
Introduction and download of nine npp\gpp datasets
Sr-gnn shift robot gnns: overlapping the limitations of localized graph training data
System design idea of time traceability
60 个神级 VS Code 插件!!
实时渲染:实时、离线、云渲染、混合渲染的区别
Huawei machine learning service speech recognition function enables applications to paint "sound" and color
How to deal with the problem that the Flink CDC reads MySQL in full and always reports this error
If the programmer tells the truth during the interview
Northwestern Polytechnic University attacked by hackers? Two factor authentication changes the situation!
Obstacle avoidance sensor module (stm32f103c8t6)
A detailed explanation of the implementation principle of go Distributed Link Tracking
多云模式并非“万能钥匙”
Why are life science enterprises on the cloud in succession?
Generate the last login user account report of the computer through SCCM SQL
An accident caused by a MySQL misoperation cannot be withstood by High Availability!
[leetcode] rotation series (array, matrix, linked list, function, string)
Interpreting harmonyos application and service ecology
Module V
Xiaobai, let me ask you guys, is MySQL binlog extracted by CDC in strict order
Development of NFT dual currency pledge liquidity mining system