♊️ GemiNews 🗞️ (dev)

Demo 1: Embeddings + Recommendation Demo 2: Bella RAGa Demo 3: NewRetriever Demo 4: Assistant function calling

🗞️Secure Together — Federated Learning for Decentralized Security on GCP

🗿Semantically Similar Articles (by :title_embedding)

Secure Together — Federated Learning for Decentralized Security on GCP

2024-03-28 - Imran Roshan (from Google Cloud - Medium)

Secure Together — Federated Learning for Decentralized Security on GCPIntegrating security mechanisms to enhance organization posture with FLAs I might have emphasized enough, I am not a machine learning guy, neither am I able to be the AI boss around people talking deep about models and other jargons that I am falling short of even talking about it right now. But you, you can be rest assured that if you’re reading this article to learn, you’ll be able to because if I could, you can as well.Federated Learning (FL) enables cooperative training on decentralized data. By maintaining sensitive data on individual devices or inside organizational silos, this strategy promotes security and privacy in security-sensitive applications. Google Cloud is a desirable choice for developing decentralized security solutions because it provides a stable platform for implementing FL workflows.This article explores the fundamental ideas of Federated Learning (FL), looks at how it can help with decentralized security on Google Cloud, and presents use cases along with tools and code samples.Understanding FLLarge volumes of data must frequently be centrally located in order for traditional machine learning algorithms to be trained. Privacy issues are brought up by this method, particularly when handling sensitive data such as medical records or financial transactions. Federated learning presents a strong substitute.In FL, the training procedure is managed by a central coordinator who does not have direct access to each individual data point. The workflow is broken down as follows:Model Distribution: To enable devices or organizations to participate, the coordinator distributes a preliminary global model to them.Local Training: Using their own data, each participant trains the model locally. Privacy is guaranteed by this localized training because the raw data never leaves the device or silo.Model Updates: In contrast to sending raw data, participants send the coordinator only the model updates, or gradients, greatly cutting down on communication overhead.Aggregation of the Global Model: The coordinator compiles the updates that are received and applies them to enhance the global model.Iteration: The global model is improved iteratively without jeopardizing data privacy by repeating steps 1–4 for a number of rounds.So what are the benefits?FL offers a number of benefits for developing private-preserving and safe security solutions on Google Cloud:Enhanced Data Privacy: FL reduces the possibility of data breaches and unauthorized access by maintaining data decentralization. Organizations handling sensitive security data, such as threat intelligence or user behavior patterns, will especially benefit from this.Enhanced Regulatory Compliance: By reducing data collection and sharing, FL can assist businesses in complying with stringent data privacy laws like the California Consumer Privacy Act and the General Data Protection Regulation.Collaborative Threat Intelligence Sharing: FL allows security teams from different organizations to securely collaborate with one another. Without disclosing their unique threat intelligence datasets, they can jointly train a threat detection model. This promotes a more thorough comprehension of the changing threat environment.On-Device Security Training: FL enables security model training on user devices directly. This protects user privacy while enabling real-time, personalized threat detection and anomaly identification.Federated Learning for Secure Multi-party Computation (SMC): To conduct secure computations on sensitive data dispersed among several parties, FL can be coupled with SMC methodologies. This creates opportunities for sophisticated analytics in security applications that protect privacy.Getting to workLet’s talk about some of the ways we can use FL for securing posturesCollaborative Malware DetectionConventional methods of malware detection frequently rely on signature-based techniques. These techniques compare files with known malicious patterns to identify malware. On the other hand, zero-day attacks — attackers who employ novel tactics — are difficult for signature-based methods to identify.This restriction is addressed by collaborative malware detection, which shares threat intelligence amongst various systems. This knowledge may consist of:File hashes of known malware: Systems can swiftly recognize malware that has already been encountered by exchanging file hashes.Data from behavioral analysis: Exchanging information about how files work with the system makes it easier to spot questionable patterns of behavior.Compromise Indicators (IOCs): Collective defense is strengthened when information related to malware campaigns, such as URLs, IP addresses, and domain names, are shared.Collaborative detection systems are better able to recognize new malware variants and emerging threats by pooling this shared intelligence.Prepping ourselvesCollect Data: Compile a wide range of benign and malware samples, such as PE and APK files. Online public malware datasets are accessible, but make sure to observe ethical and legal requirements.import apache_beam as beamclass IngestMalware(beam.DoFn): def process(self, element): # element: Malware sample metadata (e.g., filename, source) file_name = element['filename'] # Download malware sample from source based on metadata download_and_save_malware(file_name) yield {'filePath': f'gs://your-bucket/{file_name}'} # Upload to GCSwith beam.Pipeline() as pipeline: malware_data = ( pipeline | 'ReadMetadata' >> beam.io.ReadFromText('path/to/metadata.csv') | 'IngestMalware' >> beam.ParDo(IngestMalware()) )Data Labeling: Assign a malicious or benign label to every file. Crowdsourcing platforms or security experts can perform this manually.Data Preprocessing: Prepare and clean the data in accordance with the specifications of the selected machine learning model. This could entail formatting, normalization, and feature extraction.import kfp.components as comp# Download and pre-process internal security datadownload_security_data = comp....(source="internal_security_logs")preprocess_security_data = comp....(inputs=[download_security_data.outputs["data"]])# Download and pre-process public threat intelligence datadownload_threat_intel = comp....(source="public_threat_feed_url")preprocess_threat_intel = comp....(inputs=[download_threat_intel.outputs["data"]])# Merge both pre-processed datasetsmerged_data = comp....(inputs=[preprocess_security_data.outputs["data"], preprocess_threat_intel.outputs["data"]])# Create a Vertex AI Pipeline with these componentstraining_pipeline = comp.pipeline( name="data_preprocessing_pipeline", description="Preprocesses data for malware detection model training", components=[ download_security_data, preprocess_security_data, download_threat_intel, preprocess_threat_intel, merged_data, ],)I know you guys are professionals so we won’t delve deeper into this with code. Moving On!Training Our ModelSelect a Model: Depending on the format of your data, choose an appropriate machine learning model (e.g., image classification for executables, NLP for scripts). Scikit-learn models and TensorFlow are popular options.Create a Training Script: To load, preprocess, and train the model using your labeled data, write a Python script. For resource management and dispersed training, use Vertex AI Training.from google.cloud importaiplatformproject = "your-project-id"location = "us-central1"endpoint = aiplatform.Endpoint.create( display_name="malware-detection-endpoint", project=project, location=location,)dataset = aiplatform.Dataset.create( display_name="malware-dataset", project=project, location=location,)# Define training and validation splitstrain_split = 0.8training_job = aiplatform.TrainingJob.create( display_name="malware-detection-training", project=project, location=location, dataset=dataset, split=train_split, machine_type="n1-standard-4", # Adjust machine type as needed target_rotation_period="30d", # Periodic retraining to stay up-to-date encryption_spec_key_name="your-encryption-key", # Optional encryption)# Monitor training job progress using aiplatform.TrainingJob.get(training_job.name)Alert generationThis sample of code shows how a Cloud Function is started by a Pub/Sub message that contains a malware detection from Vertex AI. Based on collaborative detection results, the function determines the threat type of the finding and, if it indicates malware, generates an alert.import jsondef analyze_malware_finding(data, context): # Access the Pub/Sub message data payload = json.loads(data.pubsubj) finding = payload["finding"] # Check if the finding indicates malware based on collaborative detection results if finding["threat_type"] == "MALWARE": # Generate an alert with details from the finding alert_message = f"Potential Malware Detected: {finding['file_hash']}" # Send the alert using a notification service (e.g., Cloud Monitoring)Alert Integration (Cloud Monitoring API)from google.cloud import monitoring_v3alerts_service = monitoring_v3.AlertingPolicyServiceClient()# Define the alert policy detailsalert_policy = monitoring_v3.AlertPolicy( name=f"projects/{project}/locations/{location}/alertPolicies/malware_detection_alert", # ... other policy configuration options)# Create the alert policyalerts_service.CreateAlertPolicy(request={"parent": parent, "alert_policy": alert_policy})Note: This is a simplified overview. You’ll need to fill in the details based on your specific requirements and chosen tools. Refer to the Vertex AI and Cloud Monitoring documentation for comprehensive instructions and code examples.ResourcesVertex AI Pipelines: https://cloud.google.com/vertex-ai/docs/pipelines/introductionCustom Training in Vertex AI: https://cloud.google.com/vertex-ai/docs/training/overviewCloud Monitoring Metrics: https://cloud.google.com/monitoring/api/metrics_gcpAlerting Policies in Cloud Monitoring: https://cloud.google.com/monitoring/alertshttps://federated.withgoogle.com/Get in Touch?Imran RoshanSecure Together — Federated Learning for Decentralized Security on GCP was originally published in Google Cloud - Community on Medium, where people are continuing the conversation by highlighting and responding to this story.

[Blogs] 🌎 https://medium.com/google-cloud/secure-together-federated-learning-for-decentralized-security-on-gcp-4c6219ba8f09?source=rss----e52cf94d98af---4 [🧠] [v2] article_embedding_description: {:llm_project_id=>"Unavailable", :llm_dimensions=>nil, :article_size=>13168, :llm_embeddings_model_name=>"textembedding-gecko"}
[🧠] [v1/3] title_embedding_description: {:ricc_notes=>"[embed-v3] Fixed on 9oct24. Only seems incompatible at first glance with embed v1.", :llm_project_id=>"unavailable possibly not using Vertex", :llm_dimensions=>nil, :article_size=>13168, :poly_field=>"title", :llm_embeddings_model_name=>"textembedding-gecko"}
[🧠] [v1/3] summary_embedding_description:
[🧠] As per bug https://github.com/palladius/gemini-news-crawler/issues/4 we can state this article belongs to titile/summary version: v3 (very few articles updated on 9oct24)

🗿article.to_s

------------------------------
Title: Secure  Together — Federated Learning for Decentralized Security on GCP
[content]
Secure Together — Federated Learning for Decentralized Security on GCPIntegrating security mechanisms to enhance organization posture with FLAs I might have emphasized enough, I am not a machine learning guy, neither am I able to be the AI boss around people talking deep about models and other jargons that I am falling short of even talking about it right now. But you, you can be rest assured that if you’re reading this article to learn, you’ll be able to because if I could, you can as well.Federated Learning (FL) enables cooperative training on decentralized data. By maintaining sensitive data on individual devices or inside organizational silos, this strategy promotes security and privacy in security-sensitive applications. Google Cloud is a desirable choice for developing decentralized security solutions because it provides a stable platform for implementing FL workflows.This article explores the fundamental ideas of Federated Learning (FL), looks at how it can help with decentralized security on Google Cloud, and presents use cases along with tools and code samples.Understanding FLLarge volumes of data must frequently be centrally located in order for traditional machine learning algorithms to be trained. Privacy issues are brought up by this method, particularly when handling sensitive data such as medical records or financial transactions. Federated learning presents a strong substitute.In FL, the training procedure is managed by a central coordinator who does not have direct access to each individual data point. The workflow is broken down as follows:Model Distribution: To enable devices or organizations to participate, the coordinator distributes a preliminary global model to them.Local Training: Using their own data, each participant trains the model locally. Privacy is guaranteed by this localized training because the raw data never leaves the device or silo.Model Updates: In contrast to sending raw data, participants send the coordinator only the model updates, or gradients, greatly cutting down on communication overhead.Aggregation of the Global Model: The coordinator compiles the updates that are received and applies them to enhance the global model.Iteration: The global model is improved iteratively without jeopardizing data privacy by repeating steps 1–4 for a number of rounds.So what are the benefits?FL offers a number of benefits for developing private-preserving and safe security solutions on Google Cloud:Enhanced Data Privacy: FL reduces the possibility of data breaches and unauthorized access by maintaining data decentralization. Organizations handling sensitive security data, such as threat intelligence or user behavior patterns, will especially benefit from this.Enhanced Regulatory Compliance: By reducing data collection and sharing, FL can assist businesses in complying with stringent data privacy laws like the California Consumer Privacy Act and the General Data Protection Regulation.Collaborative Threat Intelligence Sharing: FL allows security teams from different organizations to securely collaborate with one another. Without disclosing their unique threat intelligence datasets, they can jointly train a threat detection model. This promotes a more thorough comprehension of the changing threat environment.On-Device Security Training: FL enables security model training on user devices directly. This protects user privacy while enabling real-time, personalized threat detection and anomaly identification.Federated Learning for Secure Multi-party Computation (SMC): To conduct secure computations on sensitive data dispersed among several parties, FL can be coupled with SMC methodologies. This creates opportunities for sophisticated analytics in security applications that protect privacy.Getting to workLet’s talk about some of the ways we can use FL for securing posturesCollaborative Malware DetectionConventional methods of malware detection frequently rely on signature-based techniques. These techniques compare files with known malicious patterns to identify malware. On the other hand, zero-day attacks — attackers who employ novel tactics — are difficult for signature-based methods to identify.This restriction is addressed by collaborative malware detection, which shares threat intelligence amongst various systems. This knowledge may consist of:File hashes of known malware: Systems can swiftly recognize malware that has already been encountered by exchanging file hashes.Data from behavioral analysis: Exchanging information about how files work with the system makes it easier to spot questionable patterns of behavior.Compromise Indicators (IOCs): Collective defense is strengthened when information related to malware campaigns, such as URLs, IP addresses, and domain names, are shared.Collaborative detection systems are better able to recognize new malware variants and emerging threats by pooling this shared intelligence.Prepping ourselvesCollect Data: Compile a wide range of benign and malware samples, such as PE and APK files. Online public malware datasets are accessible, but make sure to observe ethical and legal requirements.import apache_beam as beamclass IngestMalware(beam.DoFn):    def process(self, element):        # element: Malware sample metadata (e.g., filename, source)        file_name = element['filename']        # Download malware sample from source based on metadata        download_and_save_malware(file_name)        yield {'filePath': f'gs://your-bucket/{file_name}'}  # Upload to GCSwith beam.Pipeline() as pipeline:    malware_data = (        pipeline        | 'ReadMetadata' >> beam.io.ReadFromText('path/to/metadata.csv')        | 'IngestMalware' >> beam.ParDo(IngestMalware())    )Data Labeling: Assign a malicious or benign label to every file. Crowdsourcing platforms or security experts can perform this manually.Data Preprocessing: Prepare and clean the data in accordance with the specifications of the selected machine learning model. This could entail formatting, normalization, and feature extraction.import kfp.components as comp# Download and pre-process internal security datadownload_security_data = comp....(source="internal_security_logs")preprocess_security_data = comp....(inputs=[download_security_data.outputs["data"]])# Download and pre-process public threat intelligence datadownload_threat_intel = comp....(source="public_threat_feed_url")preprocess_threat_intel = comp....(inputs=[download_threat_intel.outputs["data"]])# Merge both pre-processed datasetsmerged_data = comp....(inputs=[preprocess_security_data.outputs["data"], preprocess_threat_intel.outputs["data"]])# Create a Vertex AI Pipeline with these componentstraining_pipeline = comp.pipeline(    name="data_preprocessing_pipeline",    description="Preprocesses data for malware detection model training",    components=[        download_security_data,        preprocess_security_data,        download_threat_intel,        preprocess_threat_intel,        merged_data,    ],)I know you guys are professionals so we won’t delve deeper into this with code. Moving On!Training Our ModelSelect a Model: Depending on the format of your data, choose an appropriate machine learning model (e.g., image classification for executables, NLP for scripts). Scikit-learn models and TensorFlow are popular options.Create a Training Script: To load, preprocess, and train the model using your labeled data, write a Python script. For resource management and dispersed training, use Vertex AI Training.from google.cloud importaiplatformproject = "your-project-id"location = "us-central1"endpoint = aiplatform.Endpoint.create(    display_name="malware-detection-endpoint",    project=project,    location=location,)dataset = aiplatform.Dataset.create(    display_name="malware-dataset",    project=project,    location=location,)# Define training and validation splitstrain_split = 0.8training_job = aiplatform.TrainingJob.create(    display_name="malware-detection-training",    project=project,    location=location,    dataset=dataset,    split=train_split,    machine_type="n1-standard-4",  # Adjust machine type as needed    target_rotation_period="30d",  # Periodic retraining to stay up-to-date    encryption_spec_key_name="your-encryption-key",  # Optional encryption)# Monitor training job progress using aiplatform.TrainingJob.get(training_job.name)Alert generationThis sample of code shows how a Cloud Function is started by a Pub/Sub message that contains a malware detection from Vertex AI. Based on collaborative detection results, the function determines the threat type of the finding and, if it indicates malware, generates an alert.import jsondef analyze_malware_finding(data, context):  # Access the Pub/Sub message data  payload = json.loads(data.pubsubj)  finding = payload["finding"]  # Check if the finding indicates malware based on collaborative detection results  if finding["threat_type"] == "MALWARE":    # Generate an alert with details from the finding    alert_message = f"Potential Malware Detected: {finding['file_hash']}"    # Send the alert using a notification service (e.g., Cloud Monitoring)Alert Integration (Cloud Monitoring API)from google.cloud import monitoring_v3alerts_service = monitoring_v3.AlertingPolicyServiceClient()# Define the alert policy detailsalert_policy = monitoring_v3.AlertPolicy(    name=f"projects/{project}/locations/{location}/alertPolicies/malware_detection_alert",    # ... other policy configuration options)# Create the alert policyalerts_service.CreateAlertPolicy(request={"parent": parent, "alert_policy": alert_policy})Note: This is a simplified overview. You’ll need to fill in the details based on your specific requirements and chosen tools. Refer to the Vertex AI and Cloud Monitoring documentation for comprehensive instructions and code examples.ResourcesVertex AI Pipelines: https://cloud.google.com/vertex-ai/docs/pipelines/introductionCustom Training in Vertex AI: https://cloud.google.com/vertex-ai/docs/training/overviewCloud Monitoring Metrics: https://cloud.google.com/monitoring/api/metrics_gcpAlerting Policies in Cloud Monitoring: https://cloud.google.com/monitoring/alertshttps://federated.withgoogle.com/Get in Touch?Imran RoshanSecure  Together — Federated Learning for Decentralized Security on GCP was originally published in Google Cloud - Community on Medium, where people are continuing the conversation by highlighting and responding to this story.
[/content]

Author: Imran Roshan
PublishedDate: 2024-03-28
Category: Blogs
NewsPaper: Google Cloud - Medium
Tags: technology, ai, google-cloud-platform, machine-learning, python
{"id"=>1232,
"title"=>"Secure Together — Federated Learning for Decentralized Security on GCP",
"summary"=>nil,
"content"=>"

Secure Together — Federated Learning for Decentralized Security on GCP

Integrating security mechanisms to enhance organization posture with FL

\"\"

As I might have emphasized enough, I am not a machine learning guy, neither am I able to be the AI boss around people talking deep about models and other jargons that I am falling short of even talking about it right now. But you, you can be rest assured that if you’re reading this article to learn, you’ll be able to because if I could, you can as well.

Federated Learning (FL) enables cooperative training on decentralized data. By maintaining sensitive data on individual devices or inside organizational silos, this strategy promotes security and privacy in security-sensitive applications. Google Cloud is a desirable choice for developing decentralized security solutions because it provides a stable platform for implementing FL workflows.

This article explores the fundamental ideas of Federated Learning (FL), looks at how it can help with decentralized security on Google Cloud, and presents use cases along with tools and code samples.

Understanding FL

\"\"

Large volumes of data must frequently be centrally located in order for traditional machine learning algorithms to be trained. Privacy issues are brought up by this method, particularly when handling sensitive data such as medical records or financial transactions. Federated learning presents a strong substitute.

In FL, the training procedure is managed by a central coordinator who does not have direct access to each individual data point. The workflow is broken down as follows:

  • Model Distribution: To enable devices or organizations to participate, the coordinator distributes a preliminary global model to them.
  • Local Training: Using their own data, each participant trains the model locally. Privacy is guaranteed by this localized training because the raw data never leaves the device or silo.
  • Model Updates: In contrast to sending raw data, participants send the coordinator only the model updates, or gradients, greatly cutting down on communication overhead.
  • Aggregation of the Global Model: The coordinator compiles the updates that are received and applies them to enhance the global model.
  • Iteration: The global model is improved iteratively without jeopardizing data privacy by repeating steps 1–4 for a number of rounds.

So what are the benefits?

\"\"

FL offers a number of benefits for developing private-preserving and safe security solutions on Google Cloud:

  • Enhanced Data Privacy: FL reduces the possibility of data breaches and unauthorized access by maintaining data decentralization. Organizations handling sensitive security data, such as threat intelligence or user behavior patterns, will especially benefit from this.
  • Enhanced Regulatory Compliance: By reducing data collection and sharing, FL can assist businesses in complying with stringent data privacy laws like the California Consumer Privacy Act and the General Data Protection Regulation.
  • Collaborative Threat Intelligence Sharing: FL allows security teams from different organizations to securely collaborate with one another. Without disclosing their unique threat intelligence datasets, they can jointly train a threat detection model. This promotes a more thorough comprehension of the changing threat environment.
  • On-Device Security Training: FL enables security model training on user devices directly. This protects user privacy while enabling real-time, personalized threat detection and anomaly identification.
  • Federated Learning for Secure Multi-party Computation (SMC): To conduct secure computations on sensitive data dispersed among several parties, FL can be coupled with SMC methodologies. This creates opportunities for sophisticated analytics in security applications that protect privacy.

Getting to work

\"\"

Let’s talk about some of the ways we can use FL for securing postures

Collaborative Malware Detection

Conventional methods of malware detection frequently rely on signature-based techniques. These techniques compare files with known malicious patterns to identify malware. On the other hand, zero-day attacks — attackers who employ novel tactics — are difficult for signature-based methods to identify.

This restriction is addressed by collaborative malware detection, which shares threat intelligence amongst various systems. This knowledge may consist of:

  • File hashes of known malware: Systems can swiftly recognize malware that has already been encountered by exchanging file hashes.
  • Data from behavioral analysis: Exchanging information about how files work with the system makes it easier to spot questionable patterns of behavior.
  • Compromise Indicators (IOCs): Collective defense is strengthened when information related to malware campaigns, such as URLs, IP addresses, and domain names, are shared.

Collaborative detection systems are better able to recognize new malware variants and emerging threats by pooling this shared intelligence.

Prepping ourselves

  • Collect Data: Compile a wide range of benign and malware samples, such as PE and APK files. Online public malware datasets are accessible, but make sure to observe ethical and legal requirements.
import apache_beam as beam

class IngestMalware(beam.DoFn):
def process(self, element):
# element: Malware sample metadata (e.g., filename, source)
file_name = element['filename']
# Download malware sample from source based on metadata
download_and_save_malware(file_name)
yield {'filePath': f'gs://your-bucket/{file_name}'} # Upload to GCS

with beam.Pipeline() as pipeline:
malware_data = (
pipeline
| 'ReadMetadata' >> beam.io.ReadFromText('path/to/metadata.csv')
| 'IngestMalware' >> beam.ParDo(IngestMalware())
)
  • Data Labeling: Assign a malicious or benign label to every file. Crowdsourcing platforms or security experts can perform this manually.
  • Data Preprocessing: Prepare and clean the data in accordance with the specifications of the selected machine learning model. This could entail formatting, normalization, and feature extraction.
import kfp.components as comp

# Download and pre-process internal security data
download_security_data = comp....(source="internal_security_logs")
preprocess_security_data = comp....(inputs=[download_security_data.outputs["data"]])

# Download and pre-process public threat intelligence data
download_threat_intel = comp....(source="public_threat_feed_url")
preprocess_threat_intel = comp....(inputs=[download_threat_intel.outputs["data"]])

# Merge both pre-processed datasets
merged_data = comp....(inputs=[preprocess_security_data.outputs["data"], preprocess_threat_intel.outputs["data"]])

# Create a Vertex AI Pipeline with these components
training_pipeline = comp.pipeline(
name="data_preprocessing_pipeline",
description="Preprocesses data for malware detection model training",
components=[
download_security_data,
preprocess_security_data,
download_threat_intel,
preprocess_threat_intel,
merged_data,
],
)

I know you guys are professionals so we won’t delve deeper into this with code. Moving On!

Training Our Model

  • Select a Model: Depending on the format of your data, choose an appropriate machine learning model (e.g., image classification for executables, NLP for scripts). Scikit-learn models and TensorFlow are popular options.
  • Create a Training Script: To load, preprocess, and train the model using your labeled data, write a Python script. For resource management and dispersed training, use Vertex AI Training.
from google.cloud importaiplatform

project = "your-project-id"
location = "us-central1"

endpoint = aiplatform.Endpoint.create(
display_name="malware-detection-endpoint",
project=project,
location=location,
)

dataset = aiplatform.Dataset.create(
display_name="malware-dataset",
project=project,
location=location,
)

# Define training and validation splits
train_split = 0.8

training_job = aiplatform.TrainingJob.create(
display_name="malware-detection-training",
project=project,
location=location,
dataset=dataset,
split=train_split,
machine_type="n1-standard-4", # Adjust machine type as needed
target_rotation_period="30d", # Periodic retraining to stay up-to-date
encryption_spec_key_name="your-encryption-key", # Optional encryption
)

# Monitor training job progress using aiplatform.TrainingJob.get(training_job.name)

Alert generation

This sample of code shows how a Cloud Function is started by a Pub/Sub message that contains a malware detection from Vertex AI. Based on collaborative detection results, the function determines the threat type of the finding and, if it indicates malware, generates an alert.

import json

def analyze_malware_finding(data, context):
# Access the Pub/Sub message data
payload = json.loads(data.pubsubj)
finding = payload["finding"]

# Check if the finding indicates malware based on collaborative detection results
if finding["threat_type"] == "MALWARE":
# Generate an alert with details from the finding
alert_message = f"Potential Malware Detected: {finding['file_hash']}"
# Send the alert using a notification service (e.g., Cloud Monitoring)

Alert Integration (Cloud Monitoring API)

from google.cloud import monitoring_v3

alerts_service = monitoring_v3.AlertingPolicyServiceClient()

# Define the alert policy details
alert_policy = monitoring_v3.AlertPolicy(
name=f"projects/{project}/locations/{location}/alertPolicies/malware_detection_alert",
# ... other policy configuration options
)

# Create the alert policy
alerts_service.CreateAlertPolicy(request={"parent": parent, "alert_policy": alert_policy})

Note: This is a simplified overview. You’ll need to fill in the details based on your specific requirements and chosen tools. Refer to the Vertex AI and Cloud Monitoring documentation for comprehensive instructions and code examples.

Resources

Get in Touch?

Imran Roshan

\"\"

Secure Together — Federated Learning for Decentralized Security on GCP was originally published in Google Cloud - Community on Medium, where people are continuing the conversation by highlighting and responding to this story.

",
"author"=>"Imran Roshan",
"link"=>"https://medium.com/google-cloud/secure-together-federated-learning-for-decentralized-security-on-gcp-4c6219ba8f09?source=rss----e52cf94d98af---4",
"published_date"=>Thu, 28 Mar 2024 10:20:14.000000000 UTC +00:00,
"image_url"=>nil,
"feed_url"=>"https://medium.com/google-cloud/secure-together-federated-learning-for-decentralized-security-on-gcp-4c6219ba8f09?source=rss----e52cf94d98af---4",
"language"=>nil,
"active"=>true,
"ricc_source"=>"feedjira::v1",
"created_at"=>Sun, 31 Mar 2024 20:53:32.024939000 UTC +00:00,
"updated_at"=>Mon, 21 Oct 2024 16:56:24.353171000 UTC +00:00,
"newspaper"=>"Google Cloud - Medium",
"macro_region"=>"Blogs"}
Edit this article
Back to articles