Collecter les journaux Skyhigh Secure Web Gateway (anciennement McAfee Web Gateway)
Ce document explique comment ingérer les journaux Skyhigh Secure Web Gateway (anciennement McAfee Web Gateway) dans Google Security Operations à l'aide de Bindplane.
Skyhigh Secure Web Gateway est un dispositif de proxy Web sur site qui protège les entreprises contre les menaces Web en inspectant le trafic HTTP, HTTPS et FTP. Il offre des fonctionnalités de filtrage des URL, d'analyse antimalware, d'inspection SSL, de protection contre la perte de données et de contrôle des applications. L'appliance applique les règles d'accès au Web et fournit une journalisation détaillée de toute l'activité Web pour la conformité et la surveillance de la sécurité.
Avant de commencer
Assurez-vous de remplir les conditions suivantes :
- Une instance Google SecOps.
- Un hôte Windows 2016 ou version ultérieure, ou un hôte Linux avec
systemd. - Si vous exécutez le programme derrière un proxy, assurez-vous que les ports du pare-feu sont ouverts.
- Accès privilégié à la console de gestion Skyhigh Secure Web Gateway.
Obtenir le fichier d'authentification d'ingestion Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres SIEM > Agents de collecte.
- Téléchargez le fichier d'authentification d'ingestion. Enregistrez le fichier de manière sécurisée sur le système sur lequel Bindplane sera installé.
Obtenir l'ID client Google SecOps
- Connectez-vous à la console Google SecOps.
- Accédez à Paramètres SIEM > Profil.
- Copiez et enregistrez le numéro client de la section Informations sur l'organisation.
Installer l'agent Bindplane
Installez l'agent Bindplane sur votre système d'exploitation Windows ou Linux en suivant les instructions ci-dessous.
Installation de fenêtres
- Ouvrez l'invite de commandes ou PowerShell en tant qu'administrateur.
Exécutez la commande suivante :
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Installation de Linux
- Ouvrez un terminal avec les droits root ou sudo.
Exécutez la commande suivante :
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Ressources d'installation supplémentaires
Pour plus d'options d'installation, consultez le guide d'installation.
Configurer l'agent Bindplane pour ingérer Syslog et l'envoyer à Google SecOps
Accédez au fichier de configuration :
- Trouvez le fichier
config.yaml. Il se trouve généralement dans le répertoire/observiq-otel-collector/sous Linux ou dans le répertoire d'installation sous Windows. - Ouvrez le fichier à l'aide d'un éditeur de texte (par exemple,
nano,viou le Bloc-notes).
- Trouvez le fichier
Modifiez le fichier
config.yamlcomme suit :receivers: tcplog: listen_address: "0.0.0.0:514" exporters: chronicle/mcafee_webproxy: compression: gzip creds_file_path: '/path/to/ingestion-authentication-file.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: 'MCAFEE_WEBPROXY' raw_log_field: body ingestion_labels: service: pipelines: logs/mcafee_webproxy_to_chronicle: receivers: - tcplog exporters: - chronicle/mcafee_webproxy
- Remplacez le port et l'adresse IP selon les besoins de votre infrastructure.
- Remplacez
<customer_id>par le numéro client réel. - Mettez à jour
/path/to/ingestion-authentication-file.jsonavec le chemin d'accès où le fichier d'authentification a été enregistré dans la section Obtenir le fichier d'authentification pour l'ingestion Google SecOps.
Redémarrez l'agent Bindplane pour appliquer les modifications.
Pour redémarrer l'agent Bindplane sous Linux :
Exécutez la commande suivante :
sudo systemctl restart observiq-otel-collectorVérifiez que le service est en cours d'exécution :
sudo systemctl status observiq-otel-collectorRecherchez les erreurs dans les journaux :
sudo journalctl -u observiq-otel-collector -f
Pour redémarrer l'agent Bindplane sous Windows :
Choisissez l'une des options suivantes :
- Invite de commande ou PowerShell en tant qu'administrateur :
net stop observiq-otel-collector && net start observiq-otel-collector- Console Services :
- Appuyez sur
Win+R, saisissezservices.msc, puis appuyez sur Entrée. - Localisez le collecteur observIQ OpenTelemetry.
- Effectuez un clic droit, puis sélectionnez Redémarrer.
- Appuyez sur
Vérifiez que le service est en cours d'exécution :
sc query observiq-otel-collectorRecherchez les erreurs dans les journaux :
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
Configurer le transfert syslog sur Skyhigh Secure Web Gateway
- Connectez-vous à la console de gestion Skyhigh Secure Web Gateway.
- Accédez à Règle > Paramètres > Journalisation > Syslog.
- Cliquez sur Ajouter pour créer une destination syslog.
- Fournissez les informations de configuration suivantes :
- Serveur Syslog : saisissez l'adresse IP de l'agent Bindplane (par exemple,
192.168.1.100). - Port : saisissez
514. - Protocole : sélectionnez TCP.
- Niveau de journalisation : sélectionnez le niveau de journalisation souhaité (par exemple, Informationnel ou supérieur).
- Format : sélectionnez Journal d'accès aux bonnes pratiques ou le format de journal souhaité.
- Serveur Syslog : saisissez l'adresse IP de l'agent Bindplane (par exemple,
- Sélectionnez les types de journaux à transférer :
- Journal des accès : enregistre tout le trafic Web transitant par la passerelle.
- Journal des blocages : enregistre les requêtes bloquées.
- Journal d'analyse : enregistre les résultats des analyses anti-malware.
- Cliquez sur Enregistrer les modifications.
Accédez à Dépannage > Confirmer les modifications, puis cliquez sur Enregistrer les modifications pour appliquer la configuration.
Table de mappage UDM
| Champ de journal | Mappage UDM | Logique |
|---|---|---|
entry_format |
about |
Mappé : json_format → about, kv_format1 → about |
deviceNtDomain |
about.administrative_domain |
Renommé/Mappé |
deviceExternalId |
about.asset.asset_id |
Mappé directement |
device_product |
about.asset.asset_id |
Mappé directement |
device_vendor |
about.asset.asset_id |
Mappé directement |
fileHash |
about.file.full_path |
Mappé directement |
filePath |
about.file.full_path |
Renommé/Mappé |
_hash |
about.file.sha256 |
Renommé/Mappé |
fileHash |
about.file.sha256 |
Renommé/Mappé |
fsize |
about.file.size |
Renommé/Mappé |
dvchost |
about.hostname |
Renommé/Mappé |
entry_format |
about.ip |
Mappé : json_format → ips, kv_format1 → ips |
ips |
about.ip |
Fusionné |
dvc_mac |
about.mac |
Mappé : slot → mac_address |
dvcmac |
about.mac |
Fusionné |
entry_format |
about.mac |
Mappé : json_format → mac_address, json_format → dvcmac, kv_format1 → `mac_address... |
mac_address |
about.mac |
Fusionné |
deviceTranslatedAddress |
about.nat_ip |
Fusionné |
entry_format |
about.nat_ip |
Mappé : json_format → deviceTranslatedAddress, kv_format1 → deviceTranslatedAddress |
Emne |
about.process.command_line |
Mappé directement |
Path |
about.process.command_line |
Mappé directement |
Subject |
about.process.command_line |
Mappé directement |
deviceProcessName |
about.process.command_line |
Renommé/Mappé |
dvcpid |
about.process.pid |
Renommé/Mappé |
entry_format |
about.resource.attribute.permissions |
Mappé : json_format → permissions, kv_format1 → permissions |
permissions |
about.resource.attribute.permissions |
Fusionné |
additional_cfp1 |
additional.fields |
Fusionné |
additional_cfp2 |
additional.fields |
Fusionné |
additional_cfp3 |
additional.fields |
Fusionné |
additional_cfp4 |
additional.fields |
Fusionné |
additional_cn1 |
additional.fields |
Fusionné |
additional_cn2 |
additional.fields |
Fusionné |
additional_cn3 |
additional.fields |
Fusionné |
additional_cs1 |
additional.fields |
Fusionné |
additional_cs2 |
additional.fields |
Fusionné |
additional_cs3 |
additional.fields |
Fusionné |
additional_cs4 |
additional.fields |
Fusionné |
additional_cs5 |
additional.fields |
Fusionné |
additional_cs6 |
additional.fields |
Fusionné |
additional_cs7 |
additional.fields |
Fusionné |
additional_devicePayloadId |
additional.fields |
Fusionné |
additional_eventId |
additional.fields |
Fusionné |
additional_flexString1 |
additional.fields |
Fusionné |
additional_fname |
additional.fields |
Fusionné |
application_name_label |
additional.fields |
Fusionné |
block_id_label |
additional.fields |
Fusionné |
cs2 |
additional.fields |
Mappé : arc_test → additional_cs2 |
cs5_label |
additional.fields |
Fusionné |
entry_format |
additional.fields |
Valeurs mappées (43 au total, par exemple json_format → additional_eventId, json_format → "additio... |
facility_label |
additional.fields |
Fusionné |
priority_label |
additional.fields |
Fusionné |
reputation_label |
additional.fields |
Fusionné |
entry_format |
intermediary |
Mappé : json_format → intermediary, kv_format1 → intermediary |
intermediary_hostname |
intermediary.hostname |
Mappé directement |
intermediary_ip |
intermediary.ip |
Fusionné |
json_entry.client_ip |
intermediary.ip |
Fusionné |
_metadata |
metadata |
Renommé/Mappé |
msg |
metadata.description |
Renommé/Mappé |
Generated |
metadata.event_timestamp |
Analysé en tant que yyyy-MM-ddTHH:mm:ss |
Received |
metadata.event_timestamp |
Analysé en tant que yyyy-MM-ddTHH:mm:ss |
_timestamp |
metadata.event_timestamp |
Analysé en tant que RFC 3339 |
rt |
metadata.event_timestamp |
Analysé en tant que yyyy-MM-ddTHH:mm:ssZ |
ts |
metadata.event_timestamp |
Analysé en tant que dd/MM/yyyy:HH:mm:ss Z |
entry_format |
metadata.event_type |
Mappé : json_format → PROCESS_UNCATEGORIZED, json_format → SCAN_UNCATEGORIZED, `kv_f... |
event_name |
metadata.event_type |
Mappé : "LogSpyware","LogPredictiveMachineLearning" → SCAN_UNCATEGORIZED |
event_type |
metadata.event_type |
Mappé directement |
device_event_class_id |
metadata.product_event_type |
Mappé directement |
event_name |
metadata.product_event_type |
Mappé directement |
externalId |
metadata.product_log_id |
Mappé directement |
device_product |
metadata.product_name |
Mappé directement |
device_version |
metadata.product_version |
Mappé directement |
device_vendor |
metadata.vendor_name |
Renommé/Mappé |
_network |
network |
Renommé/Mappé |
app_protocol_output |
network.application_protocol |
Mappé directement |
proto |
network.application_protocol |
Mappé directement |
proto_version |
network.application_protocol_version |
Mappé directement |
deviceDirection |
network.direction |
Mappé : 0 → INBOUND, 1 → OUTBOUND |
entry_format |
network.direction |
Mappé : json_format → INBOUND, json_format → OUTBOUND, kv_format1 → INBOUND, `kv... |
http_method |
network.http.method |
Mappé directement |
requestMethod |
network.http.method |
Renommé/Mappé |
userAgent |
network.http.parsed_user_agent |
Renommé/Mappé |
requestContext |
network.http.referral_url |
Mappé directement |
http_response |
network.http.response_code |
Mappé directement |
requestClientApplication |
network.http.user_agent |
Renommé/Mappé |
userAgent |
network.http.user_agent |
Mappé directement |
ip_protocol_out |
network.ip_protocol |
Mappé directement |
proto |
network.ip_protocol |
Mappé directement |
bytesToClient |
network.received_bytes |
Mappé directement |
entry_format |
network.received_bytes |
Mappé : json_format → uinteger, kv_format1 → uinteger |
in |
network.received_bytes |
Renommé/Mappé |
bytesFromClient |
network.sent_bytes |
Mappé directement |
entry_format |
network.sent_bytes |
Mappé : json_format → uinteger, kv_format1 → uinteger |
out |
network.sent_bytes |
Renommé/Mappé |
_principal |
principal |
Renommé/Mappé |
sntdom |
principal.administrative_domain |
Renommé/Mappé |
sourceServiceName |
principal.application |
Renommé/Mappé |
clientIP |
principal.asset.ip |
Fusionné |
entry_format |
principal.asset.ip |
Mappé : json_format → clientIP, json_format → principal_ip, kv_format1 → `clientIP... |
principal_ip |
principal.asset.ip |
Fusionné |
Group_name |
principal.group.group_display_name |
Mappé directement |
Gruppenavn |
principal.group.group_display_name |
Mappé directement |
Device_name |
principal.hostname |
Mappé directement |
Enhetsnavn |
principal.hostname |
Mappé directement |
principal_hostname |
principal.hostname |
Mappé directement |
shost |
principal.hostname |
Renommé/Mappé |
clientIP |
principal.ip |
Fusionné |
entry_format |
principal.ip |
Valeurs mappées (6 au total, par exemple json_format → principal_ip, json_format → shost, `json_... |
principal_ip |
principal.ip |
Fusionné |
shost |
principal.ip |
Fusionné |
entry_format |
principal.mac |
Mappé : json_format → mac, kv_format1 → mac |
mac |
principal.mac |
Fusionné |
entry_format |
principal.nat_ip |
Mappé : json_format → sourceTranslatedAddress, kv_format1 → sourceTranslatedAddress |
sourceTranslatedAddress |
principal.nat_ip |
Fusionné |
sourceTranslatedPort |
principal.nat_port |
Renommé/Mappé |
spt |
principal.port |
Renommé/Mappé |
sproc |
principal.process.command_line |
Renommé/Mappé |
fileType |
principal.process.file.mime_type |
Mappé directement |
spid |
principal.process.pid |
Renommé/Mappé |
entry_format |
principal.user.attribute.roles |
Mappé : json_format → principal_role, kv_format1 → principal_role |
principal_role |
principal.user.attribute.roles |
Fusionné |
suser |
principal.user.user_display_name |
Mappé directement |
suid |
principal.user.userid |
Renommé/Mappé |
userName |
principal.user.userid |
Mappé directement |
entry_format |
security_result |
Mappé : json_format → security_result, kv_format1 → security_result |
_action |
security_result.action |
Fusionné |
act |
security_result.action |
Mappé : accept → _action, deny → _action |
action |
security_result.action |
Fusionné |
cn1_Label |
security_result.action |
Mappé : Block Reason → action |
entry_format |
security_result.action |
Valeurs mappées (6 au total, par exemple json_format → _action, json_format → action, `json_form... |
security_action |
security_result.action |
Fusionné |
Action_Taken |
security_result.action_details |
Mappé directement |
act |
security_result.action_details |
Mappé directement |
_security_category |
security_result.category |
Fusionné |
entry_format |
security_result.category |
Mappé : json_format → _security_category, kv_format1 → _security_category |
_category_details |
security_result.category_details |
Fusionné |
cat |
security_result.category_details |
Fusionné |
entry_format |
security_result.category_details |
Mappé : json_format → cat, json_format → _category_details, kv_format1 → cat, `k... |
sec_result_category_details |
security_result.category_details |
Fusionné |
Scan_Type |
security_result.description |
Mappé directement |
Type |
security_result.description |
Mappé directement |
msg_data_2 |
security_result.description |
Mappé directement |
entry_format |
security_result.detection_fields |
Valeurs mappées (14 au total, par exemple json_format → operation_label, json_format → `operasjon_... |
infection_channel_label |
security_result.detection_fields |
Fusionné |
operasjon_label |
security_result.detection_fields |
Fusionné |
operation_label |
security_result.detection_fields |
Fusionné |
permission_label |
security_result.detection_fields |
Fusionné |
spyware_Grayware_Type_label |
security_result.detection_fields |
Fusionné |
threat_probability_label |
security_result.detection_fields |
Fusionné |
tillatelse_label |
security_result.detection_fields |
Fusionné |
mwProfile |
security_result.rule_name |
Mappé directement |
policy |
security_result.rule_name |
Mappé directement |
rule_name |
security_result.rule_name |
Mappé directement |
entry_format |
security_result.severity |
Valeurs mappées (8 au total, par exemple json_format → LOW, json_format → MEDIUM, json_format…) |
risk |
security_result.severity |
Mappé : High Risk → HIGH, Medium Risk → MEDIUM |
severity |
security_result.severity |
Mappé : "0", "1", "2", "3", "LOW" → LOW, "4", "5", "6", "MEDIUM", "SUBSTANTIAL", "INFO"… |
risk |
security_result.severity_details |
Mappé directement |
Result |
security_result.summary |
Mappé directement |
appcategory |
security_result.summary |
Mappé directement |
av_status |
security_result.summary |
Mappé directement |
block_reason |
security_result.summary |
Mappé directement |
content |
security_result.summary |
Mappé directement |
icap_status |
security_result.summary |
Mappé directement |
reason |
security_result.summary |
Renommé/Mappé |
summary |
security_result.summary |
Mappé directement |
Spyware |
security_result.threat_name |
Mappé directement |
Unknown_Threat |
security_result.threat_name |
Mappé directement |
Virus_Malware_Name |
security_result.threat_name |
Mappé directement |
oldFilePath |
src.file.full_path |
Renommé/Mappé |
oldFileSize |
src.file.size |
Renommé/Mappé |
entry_format |
src.resource.attribute.permissions |
Mappé : json_format → old_permissions, kv_format1 → old_permissions |
old_permissions |
src.resource.attribute.permissions |
Fusionné |
_target |
target |
Renommé/Mappé |
dntdom |
target.administrative_domain |
Renommé/Mappé |
appname |
target.application |
Mappé directement |
destinationServiceName |
target.application |
Renommé/Mappé |
tar_host |
target.asset.hostname |
Mappé directement |
tar_host |
target.hostname |
Mappé directement |
target_hostname |
target.hostname |
Mappé directement |
temp_dhost |
target.hostname |
Mappé directement |
IPv6_Address |
target.ip |
Fusionné |
dst_ip |
target.ip |
Fusionné |
entry_format |
target.ip |
Mappé : json_format → dst_ip, json_format → IPv6_Address, kv_format1 → dst_ip, `... |
ipv6 |
target.ip |
Mappé : - → IPv6_Address |
entry_format |
target.mac |
Mappé : json_format → mac_address, kv_format1 → mac_address |
mac_address |
target.mac |
Fusionné |
destination_translated_address |
target.nat_ip |
Fusionné |
entry_format |
target.nat_ip |
Mappé : json_format → destination_translated_address, kv_format1 → `destination_transl... |
destinationTranslatedPort |
target.nat_port |
Renommé/Mappé |
dpt |
target.port |
Renommé/Mappé |
tar_port |
target.port |
Mappé directement |
dproc |
target.process.command_line |
Renommé/Mappé |
File_name |
target.process.file.full_path |
Mappé directement |
Infected_Resource |
target.process.file.full_path |
Mappé directement |
Object |
target.process.file.full_path |
Mappé directement |
Objekt |
target.process.file.full_path |
Mappé directement |
dpid |
target.process.pid |
Renommé/Mappé |
entry_format |
target.resource.attribute.labels |
Mappé : json_format → resource_Type_label, kv_format1 → resource_Type_label |
resource_Type_label |
target.resource.attribute.labels |
Fusionné |
request |
target.url |
Mappé directement |
tar_host |
target.url |
Mappé directement |
tar_port |
target.url |
Mappé directement |
entry_format |
target.user.attribute.roles |
Mappé : json_format → target_role, kv_format1 → target_role |
target_role |
target.user.attribute.roles |
Fusionné |
CustomerName |
target.user.user_display_name |
Mappé directement |
temp_duser |
target.user.user_display_name |
Mappé directement |
Bruker |
target.user.userid |
Mappé directement |
User_value |
target.user.userid |
Mappé directement |
temp_duid |
target.user.userid |
Mappé directement |
| N/A | metadata.event_type |
Constante : PROCESS_UNCATEGORIZED |
| N/A | network.direction |
Constante : INBOUND |
| N/A | security_result.severity |
Constante : LOW |
url |
event.idm.read_only_udm.target.url |
Mappé à partir du journal des modifications |
categories |
event.idm.read_only_udm.security_result.category_details |
Mappé à partir du journal des modifications |
rt |
event.idm.read_only_udm.metadata.event_timestamp |
Mappé à partir du journal des modifications |
reputationString |
event.idm.read_only_udm.additional.fields |
Mappé à partir du journal des modifications |
blockID |
event.idm.read_only_udm.additional.fields |
Mappé à partir du journal des modifications |
applicationName |
event.idm.read_only_udm.additional.fields |
Mappé à partir du journal des modifications |
facility |
event.idm.read_only_udm.additional.fields |
Mappé à partir du journal des modifications |
priority |
event.idm.read_only_udm.additional.fields |
Mappé à partir du journal des modifications |
userName |
event.idm.read_only_udm.principal.user.userid |
Mappé à partir du journal des modifications |
appname |
event.idm.read_only_udm.target.application |
Mappé à partir du journal des modifications |
http_method |
event.idm.read_only_udm.network.http.method |
Mappé à partir du journal des modifications |
proto_version |
event.idm.read_only_udm.network.application_protocol_version |
Mappé à partir du journal des modifications |
userAgent |
event.idm.read_only_udm.network.http.user_agent |
Mappé à partir du journal des modifications |
userAgent |
event.idm.read_only_udm.network.http.parsed_user_agent |
Mappé à partir du journal des modifications |
bytesFromClient |
event.idm.read_only_udm.network.sent_bytes |
Mappé à partir du journal des modifications |
bytesToClient |
event.idm.read_only_udm.network.received_bytes |
Mappé à partir du journal des modifications |
clientIP |
event.idm.read_only_udm.principal.ip |
Mappé à partir du journal des modifications |
clientIP |
event.idm.read_only_udm.principal.asset.ip |
Mappé à partir du journal des modifications |
fileType |
event.idm.read_only_udm.principal.process.file.mime_type |
Mappé à partir du journal des modifications |
Type |
event.idm.read_only_udm.target.file.mime_type |
Mappé à partir du journal des modifications |
sr_bytes |
network.send_bytes |
Mappé à partir du journal des modifications |
requested_host" and "requested_path |
target.url |
Mappé à partir du journal des modifications |
username |
principal.user.userid |
Mappé à partir du journal des modifications |
destination_ip |
target.ip |
Mappé à partir du journal des modifications |
destination_port |
target.port |
Mappé à partir du journal des modifications |
target_ip |
target.ip |
Mappé à partir du journal des modifications |
Journal des modifications
Afficher le journal des modifications pour ce parseur
Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.