איסוף יומנים של Skyhigh Secure Web Gateway (לשעבר McAfee Web Gateway)
במאמר הזה מוסבר איך להטמיע יומנים של Skyhigh Secure Web Gateway (לשעבר McAfee Web Gateway) ב-Google Security Operations באמצעות Bindplane.
Skyhigh Secure Web Gateway הוא מכשיר proxy לאינטרנט שמותקן בשרת מקומי ומגן על ארגונים מפני איומים באינטרנט על ידי בדיקת תנועת HTTP, HTTPS ו-FTP. היא מספקת סינון כתובות URL, סריקה נגד תוכנות זדוניות, בדיקת SSL, מניעת אובדן נתונים ויכולות שליטה באפליקציות. ההתקן אוכף את מדיניות הגישה לאינטרנט ומספק רישום מפורט של כל הפעילות באינטרנט לצורך תאימות וניטור לצורכי אבטחה.
לפני שמתחילים
חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:
- מופע של Google SecOps.
- מארח Windows 2016 ואילך או מארח Linux עם
systemd. - אם מריצים את הכלי מאחורי שרת proxy, מוודאים שהיציאות בחומת האש פתוחות.
- גישה עם הרשאות למסוף הניהול של Skyhigh Secure Web Gateway.
קבלת קובץ אימות להטמעת נתונים ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings (הגדרות SIEM) > Collection Agents (סוכני איסוף).
- מורידים את קובץ האימות להטמעת נתונים. שומרים את הקובץ באופן מאובטח במערכת שבה תותקן Bindplane.
איך מקבלים את מספר הלקוח ב-Google SecOps
- נכנסים למסוף Google SecOps.
- עוברים אל SIEM Settings (הגדרות SIEM) > Profile (פרופיל).
- מעתיקים את מזהה הלקוח מהקטע פרטי הארגון ושומרים אותו.
התקנת סוכן Bindplane
מתקינים את סוכן Bindplane במערכת ההפעלה Windows או Linux לפי ההוראות הבאות.
התקנת Windows
- פותחים את שורת הפקודה או את PowerShell כאדמין.
מריצים את הפקודה הבאה:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
התקנה של Linux
- פותחים טרמינל עם הרשאות root או sudo.
מריצים את הפקודה הבאה:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
מקורות מידע נוספים להתקנה
אפשרויות התקנה נוספות מפורטות במדריך ההתקנה.
הגדרת סוכן Bindplane להטמעה של Syslog ושליחה ל-Google SecOps
ניגשים לקובץ התצורה:
- מאתרים את הקובץ
config.yaml. בדרך כלל, הוא נמצא בספרייה/observiq-otel-collector/ב-Linux או בספריית ההתקנה ב-Windows. - פותחים את הקובץ באמצעות כלי לעריכת טקסט (לדוגמה,
nano,viאו פנקס רשימות).
- מאתרים את הקובץ
עורכים את הקובץ
config.yamlבאופן הבא: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
- מחליפים את היציאה ואת כתובת ה-IP לפי הצורך בתשתית.
- מחליפים את
<customer_id>במזהה הלקוח בפועל. - מעדכנים את
/path/to/ingestion-authentication-file.jsonלנתיב שבו קובץ האימות נשמר בקטע קבלת קובץ אימות להעברה ל-Google SecOps.
מפעילים מחדש את סוכן Bindplane כדי להחיל את השינויים.
כדי להפעיל מחדש את סוכן Bindplane ב-Linux:
מריצים את הפקודה הבאה:
sudo systemctl restart observiq-otel-collectorמוודאים שהשירות פועל:
sudo systemctl status observiq-otel-collectorבודקים אם יש שגיאות ביומנים:
sudo journalctl -u observiq-otel-collector -f
כדי להפעיל מחדש את סוכן Bindplane ב-Windows:
בוחרים אחת מהאפשרויות האלה:
- שורת פקודה או PowerShell כאדמין:
net stop observiq-otel-collector && net start observiq-otel-collector- מסוף השירותים:
- מקישים על
Win+R, מקלידיםservices.mscומקישים על Enter. - מחפשים את observIQ OpenTelemetry Collector.
- לוחצים לחיצה ימנית ובוחרים באפשרות הפעלה מחדש.
- מקישים על
מוודאים שהשירות פועל:
sc query observiq-otel-collectorבודקים אם יש שגיאות ביומנים:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
הגדרת העברת syslog ב-Skyhigh Secure Web Gateway
- נכנסים למסוף הניהול של Skyhigh Secure Web Gateway.
- עוברים אל מדיניות > הגדרות > רישום ביומן > Syslog.
- כדי ליצור יעד חדש של syslog, לוחצים על הוספה.
- מספקים את פרטי ההגדרה הבאים:
- שרת Syslog: מזינים את כתובת ה-IP של סוכן Bindplane (לדוגמה,
192.168.1.100). - יציאה: מזינים
514. - פרוטוקול: בוחרים באפשרות TCP.
- רמת היומן: בוחרים את רמת היומן הרצויה (לדוגמה, Informational או רמה גבוהה יותר).
- פורמט: בוחרים באפשרות יומן גישה של שיטות מומלצות או בפורמט היומן הרצוי.
- שרת Syslog: מזינים את כתובת ה-IP של סוכן Bindplane (לדוגמה,
- בוחרים את סוגי היומנים להעברה:
- יומן גישה – מתעד את כל תעבורת האינטרנט שעוברת דרך השער.
- יומן חסימות – מתעד בקשות חסומות.
- יומן סריקה – מתעד את תוצאות הסריקה של תוכנות נגד תוכנות זדוניות.
- לוחצים על שמירת השינויים.
עוברים אל פתרון בעיות > אישור שינויים ולוחצים על שמירת השינויים כדי להחיל את ההגדרה.
טבלת מיפוי UDM
| שדה היומן | מיפוי UDM | לוגיקה |
|---|---|---|
entry_format |
about |
מיפוי: json_format ← about, kv_format1 ← about |
deviceNtDomain |
about.administrative_domain |
שם שונה/מיפוי |
deviceExternalId |
about.asset.asset_id |
מיפוי ישיר |
device_product |
about.asset.asset_id |
מיפוי ישיר |
device_vendor |
about.asset.asset_id |
מיפוי ישיר |
fileHash |
about.file.full_path |
מיפוי ישיר |
filePath |
about.file.full_path |
שם שונה/מיפוי |
_hash |
about.file.sha256 |
שם שונה/מיפוי |
fileHash |
about.file.sha256 |
שם שונה/מיפוי |
fsize |
about.file.size |
שם שונה/מיפוי |
dvchost |
about.hostname |
שם שונה/מיפוי |
entry_format |
about.ip |
מיפוי: json_format ← ips, kv_format1 ← ips |
ips |
about.ip |
ממוזג |
dvc_mac |
about.mac |
מיפוי: slot ← mac_address |
dvcmac |
about.mac |
ממוזג |
entry_format |
about.mac |
מיפוי: json_format ← mac_address, json_format ← dvcmac, kv_format1 ← `mac_address... |
mac_address |
about.mac |
ממוזג |
deviceTranslatedAddress |
about.nat_ip |
ממוזג |
entry_format |
about.nat_ip |
מיפוי: json_format ← deviceTranslatedAddress, kv_format1 ← deviceTranslatedAddress |
Emne |
about.process.command_line |
מיפוי ישיר |
Path |
about.process.command_line |
מיפוי ישיר |
Subject |
about.process.command_line |
מיפוי ישיר |
deviceProcessName |
about.process.command_line |
שם שונה/מיפוי |
dvcpid |
about.process.pid |
שם שונה/מיפוי |
entry_format |
about.resource.attribute.permissions |
מיפוי: json_format ← permissions, kv_format1 ← permissions |
permissions |
about.resource.attribute.permissions |
ממוזג |
additional_cfp1 |
additional.fields |
ממוזג |
additional_cfp2 |
additional.fields |
ממוזג |
additional_cfp3 |
additional.fields |
ממוזג |
additional_cfp4 |
additional.fields |
ממוזג |
additional_cn1 |
additional.fields |
ממוזג |
additional_cn2 |
additional.fields |
ממוזג |
additional_cn3 |
additional.fields |
ממוזג |
additional_cs1 |
additional.fields |
ממוזג |
additional_cs2 |
additional.fields |
ממוזג |
additional_cs3 |
additional.fields |
ממוזג |
additional_cs4 |
additional.fields |
ממוזג |
additional_cs5 |
additional.fields |
ממוזג |
additional_cs6 |
additional.fields |
ממוזג |
additional_cs7 |
additional.fields |
ממוזג |
additional_devicePayloadId |
additional.fields |
ממוזג |
additional_eventId |
additional.fields |
ממוזג |
additional_flexString1 |
additional.fields |
ממוזג |
additional_fname |
additional.fields |
ממוזג |
application_name_label |
additional.fields |
ממוזג |
block_id_label |
additional.fields |
ממוזג |
cs2 |
additional.fields |
מיפוי: arc_test ← additional_cs2 |
cs5_label |
additional.fields |
ממוזג |
entry_format |
additional.fields |
ערכים ממופים (43 סך הכול, למשל json_format → additional_eventId, json_format → `additio... |
facility_label |
additional.fields |
ממוזג |
priority_label |
additional.fields |
ממוזג |
reputation_label |
additional.fields |
ממוזג |
entry_format |
intermediary |
מיפוי: json_format ← intermediary, kv_format1 ← intermediary |
intermediary_hostname |
intermediary.hostname |
מיפוי ישיר |
intermediary_ip |
intermediary.ip |
ממוזג |
json_entry.client_ip |
intermediary.ip |
ממוזג |
_metadata |
metadata |
שם שונה/מיפוי |
msg |
metadata.description |
שם שונה/מיפוי |
Generated |
metadata.event_timestamp |
הניתוח הוא yyyy-MM-ddTHH:mm:ss |
Received |
metadata.event_timestamp |
הניתוח הוא yyyy-MM-ddTHH:mm:ss |
_timestamp |
metadata.event_timestamp |
הניתוח הוא RFC 3339 |
rt |
metadata.event_timestamp |
הניתוח הוא yyyy-MM-ddTHH:mm:ssZ |
ts |
metadata.event_timestamp |
הניתוח הוא dd/MM/yyyy:HH:mm:ss Z |
entry_format |
metadata.event_type |
מיפוי: json_format ← PROCESS_UNCATEGORIZED, json_format ← SCAN_UNCATEGORIZED, `kv_f... |
event_name |
metadata.event_type |
מיפוי: "LogSpyware","LogPredictiveMachineLearning" ← SCAN_UNCATEGORIZED |
event_type |
metadata.event_type |
מיפוי ישיר |
device_event_class_id |
metadata.product_event_type |
מיפוי ישיר |
event_name |
metadata.product_event_type |
מיפוי ישיר |
externalId |
metadata.product_log_id |
מיפוי ישיר |
device_product |
metadata.product_name |
מיפוי ישיר |
device_version |
metadata.product_version |
מיפוי ישיר |
device_vendor |
metadata.vendor_name |
שם שונה/מיפוי |
_network |
network |
שם שונה/מיפוי |
app_protocol_output |
network.application_protocol |
מיפוי ישיר |
proto |
network.application_protocol |
מיפוי ישיר |
proto_version |
network.application_protocol_version |
מיפוי ישיר |
deviceDirection |
network.direction |
מיפוי: 0 ← INBOUND, 1 ← OUTBOUND |
entry_format |
network.direction |
מיפוי: json_format ← INBOUND, json_format ← OUTBOUND, kv_format1 ← INBOUND, `kv... |
http_method |
network.http.method |
מיפוי ישיר |
requestMethod |
network.http.method |
שם שונה/מיפוי |
userAgent |
network.http.parsed_user_agent |
שם שונה/מיפוי |
requestContext |
network.http.referral_url |
מיפוי ישיר |
http_response |
network.http.response_code |
מיפוי ישיר |
requestClientApplication |
network.http.user_agent |
שם שונה/מיפוי |
userAgent |
network.http.user_agent |
מיפוי ישיר |
ip_protocol_out |
network.ip_protocol |
מיפוי ישיר |
proto |
network.ip_protocol |
מיפוי ישיר |
bytesToClient |
network.received_bytes |
מיפוי ישיר |
entry_format |
network.received_bytes |
מיפוי: json_format ← uinteger, kv_format1 ← uinteger |
in |
network.received_bytes |
שם שונה/מיפוי |
bytesFromClient |
network.sent_bytes |
מיפוי ישיר |
entry_format |
network.sent_bytes |
מיפוי: json_format ← uinteger, kv_format1 ← uinteger |
out |
network.sent_bytes |
שם שונה/מיפוי |
_principal |
principal |
שם שונה/מיפוי |
sntdom |
principal.administrative_domain |
שם שונה/מיפוי |
sourceServiceName |
principal.application |
שם שונה/מיפוי |
clientIP |
principal.asset.ip |
ממוזג |
entry_format |
principal.asset.ip |
מיפוי: json_format ← clientIP, json_format ← principal_ip, kv_format1 ← `clientIP... |
principal_ip |
principal.asset.ip |
ממוזג |
Group_name |
principal.group.group_display_name |
מיפוי ישיר |
Gruppenavn |
principal.group.group_display_name |
מיפוי ישיר |
Device_name |
principal.hostname |
מיפוי ישיר |
Enhetsnavn |
principal.hostname |
מיפוי ישיר |
principal_hostname |
principal.hostname |
מיפוי ישיר |
shost |
principal.hostname |
שם שונה/מיפוי |
clientIP |
principal.ip |
ממוזג |
entry_format |
principal.ip |
ערכים ממופים (6 סך הכול, למשל json_format → principal_ip, json_format → shost, `json_... |
principal_ip |
principal.ip |
ממוזג |
shost |
principal.ip |
ממוזג |
entry_format |
principal.mac |
מיפוי: json_format ← mac, kv_format1 ← mac |
mac |
principal.mac |
ממוזג |
entry_format |
principal.nat_ip |
מיפוי: json_format ← sourceTranslatedAddress, kv_format1 ← sourceTranslatedAddress |
sourceTranslatedAddress |
principal.nat_ip |
ממוזג |
sourceTranslatedPort |
principal.nat_port |
שם שונה/מיפוי |
spt |
principal.port |
שם שונה/מיפוי |
sproc |
principal.process.command_line |
שם שונה/מיפוי |
fileType |
principal.process.file.mime_type |
מיפוי ישיר |
spid |
principal.process.pid |
שם שונה/מיפוי |
entry_format |
principal.user.attribute.roles |
מיפוי: json_format ← principal_role, kv_format1 ← principal_role |
principal_role |
principal.user.attribute.roles |
ממוזג |
suser |
principal.user.user_display_name |
מיפוי ישיר |
suid |
principal.user.userid |
שם שונה/מיפוי |
userName |
principal.user.userid |
מיפוי ישיר |
entry_format |
security_result |
מיפוי: json_format ← security_result, kv_format1 ← security_result |
_action |
security_result.action |
ממוזג |
act |
security_result.action |
מיפוי: accept ← _action, deny ← _action |
action |
security_result.action |
ממוזג |
cn1_Label |
security_result.action |
מיפוי: Block Reason ← action |
entry_format |
security_result.action |
ערכים ממופים (6 סך הכל, למשל json_format → _action, json_format → action, json_form... |
security_action |
security_result.action |
ממוזג |
Action_Taken |
security_result.action_details |
מיפוי ישיר |
act |
security_result.action_details |
מיפוי ישיר |
_security_category |
security_result.category |
ממוזג |
entry_format |
security_result.category |
מיפוי: json_format ← _security_category, kv_format1 ← _security_category |
_category_details |
security_result.category_details |
ממוזג |
cat |
security_result.category_details |
ממוזג |
entry_format |
security_result.category_details |
מיפוי: json_format ← cat, json_format ← _category_details, kv_format1 ← cat, k... |
sec_result_category_details |
security_result.category_details |
ממוזג |
Scan_Type |
security_result.description |
מיפוי ישיר |
Type |
security_result.description |
מיפוי ישיר |
msg_data_2 |
security_result.description |
מיפוי ישיר |
entry_format |
security_result.detection_fields |
ערכים ממופים (14 סך הכול, למשל json_format → operation_label, json_format → `operasjon_... |
infection_channel_label |
security_result.detection_fields |
ממוזג |
operasjon_label |
security_result.detection_fields |
ממוזג |
operation_label |
security_result.detection_fields |
ממוזג |
permission_label |
security_result.detection_fields |
ממוזג |
spyware_Grayware_Type_label |
security_result.detection_fields |
ממוזג |
threat_probability_label |
security_result.detection_fields |
ממוזג |
tillatelse_label |
security_result.detection_fields |
ממוזג |
mwProfile |
security_result.rule_name |
מיפוי ישיר |
policy |
security_result.rule_name |
מיפוי ישיר |
rule_name |
security_result.rule_name |
מיפוי ישיר |
entry_format |
security_result.severity |
ערכים ממופים (8 בסך הכול, למשל json_format ← LOW, json_format ← MEDIUM, json_format ... |
risk |
security_result.severity |
מיפוי: High Risk ← HIGH, Medium Risk ← MEDIUM |
severity |
security_result.severity |
מיפוי: "0", "1", "2", "3", "LOW" → LOW, `"4", "5", "6", "MEDIUM", "SUBSTANTIAL", "INFO"... |
risk |
security_result.severity_details |
מיפוי ישיר |
Result |
security_result.summary |
מיפוי ישיר |
appcategory |
security_result.summary |
מיפוי ישיר |
av_status |
security_result.summary |
מיפוי ישיר |
block_reason |
security_result.summary |
מיפוי ישיר |
content |
security_result.summary |
מיפוי ישיר |
icap_status |
security_result.summary |
מיפוי ישיר |
reason |
security_result.summary |
שם שונה/מיפוי |
summary |
security_result.summary |
מיפוי ישיר |
Spyware |
security_result.threat_name |
מיפוי ישיר |
Unknown_Threat |
security_result.threat_name |
מיפוי ישיר |
Virus_Malware_Name |
security_result.threat_name |
מיפוי ישיר |
oldFilePath |
src.file.full_path |
שם שונה/מיפוי |
oldFileSize |
src.file.size |
שם שונה/מיפוי |
entry_format |
src.resource.attribute.permissions |
מיפוי: json_format ← old_permissions, kv_format1 ← old_permissions |
old_permissions |
src.resource.attribute.permissions |
ממוזג |
_target |
target |
שם שונה/מיפוי |
dntdom |
target.administrative_domain |
שם שונה/מיפוי |
appname |
target.application |
מיפוי ישיר |
destinationServiceName |
target.application |
שם שונה/מיפוי |
tar_host |
target.asset.hostname |
מיפוי ישיר |
tar_host |
target.hostname |
מיפוי ישיר |
target_hostname |
target.hostname |
מיפוי ישיר |
temp_dhost |
target.hostname |
מיפוי ישיר |
IPv6_Address |
target.ip |
ממוזג |
dst_ip |
target.ip |
ממוזג |
entry_format |
target.ip |
מיפוי: json_format → dst_ip, json_format → IPv6_Address, kv_format1 → dst_ip, `... |
ipv6 |
target.ip |
מיפוי: - ← IPv6_Address |
entry_format |
target.mac |
מיפוי: json_format ← mac_address, kv_format1 ← mac_address |
mac_address |
target.mac |
ממוזג |
destination_translated_address |
target.nat_ip |
ממוזג |
entry_format |
target.nat_ip |
מיפוי: json_format ← destination_translated_address, kv_format1 ← `destination_transl... |
destinationTranslatedPort |
target.nat_port |
שם שונה/מיפוי |
dpt |
target.port |
שם שונה/מיפוי |
tar_port |
target.port |
מיפוי ישיר |
dproc |
target.process.command_line |
שם שונה/מיפוי |
File_name |
target.process.file.full_path |
מיפוי ישיר |
Infected_Resource |
target.process.file.full_path |
מיפוי ישיר |
Object |
target.process.file.full_path |
מיפוי ישיר |
Objekt |
target.process.file.full_path |
מיפוי ישיר |
dpid |
target.process.pid |
שם שונה/מיפוי |
entry_format |
target.resource.attribute.labels |
מיפוי: json_format ← resource_Type_label, kv_format1 ← resource_Type_label |
resource_Type_label |
target.resource.attribute.labels |
ממוזג |
request |
target.url |
מיפוי ישיר |
tar_host |
target.url |
מיפוי ישיר |
tar_port |
target.url |
מיפוי ישיר |
entry_format |
target.user.attribute.roles |
מיפוי: json_format ← target_role, kv_format1 ← target_role |
target_role |
target.user.attribute.roles |
ממוזג |
CustomerName |
target.user.user_display_name |
מיפוי ישיר |
temp_duser |
target.user.user_display_name |
מיפוי ישיר |
Bruker |
target.user.userid |
מיפוי ישיר |
User_value |
target.user.userid |
מיפוי ישיר |
temp_duid |
target.user.userid |
מיפוי ישיר |
| לא רלוונטי | metadata.event_type |
קבוע: PROCESS_UNCATEGORIZED |
| לא רלוונטי | network.direction |
קבוע: INBOUND |
| לא רלוונטי | security_result.severity |
קבוע: LOW |
url |
event.idm.read_only_udm.target.url |
מופה מיומן השינויים |
categories |
event.idm.read_only_udm.security_result.category_details |
מופה מיומן השינויים |
rt |
event.idm.read_only_udm.metadata.event_timestamp |
מופה מיומן השינויים |
reputationString |
event.idm.read_only_udm.additional.fields |
מופה מיומן השינויים |
blockID |
event.idm.read_only_udm.additional.fields |
מופה מיומן השינויים |
applicationName |
event.idm.read_only_udm.additional.fields |
מופה מיומן השינויים |
facility |
event.idm.read_only_udm.additional.fields |
מופה מיומן השינויים |
priority |
event.idm.read_only_udm.additional.fields |
מופה מיומן השינויים |
userName |
event.idm.read_only_udm.principal.user.userid |
מופה מיומן השינויים |
appname |
event.idm.read_only_udm.target.application |
מופה מיומן השינויים |
http_method |
event.idm.read_only_udm.network.http.method |
מופה מיומן השינויים |
proto_version |
event.idm.read_only_udm.network.application_protocol_version |
מופה מיומן השינויים |
userAgent |
event.idm.read_only_udm.network.http.user_agent |
מופה מיומן השינויים |
userAgent |
event.idm.read_only_udm.network.http.parsed_user_agent |
מופה מיומן השינויים |
bytesFromClient |
event.idm.read_only_udm.network.sent_bytes |
מופה מיומן השינויים |
bytesToClient |
event.idm.read_only_udm.network.received_bytes |
מופה מיומן השינויים |
clientIP |
event.idm.read_only_udm.principal.ip |
מופה מיומן השינויים |
clientIP |
event.idm.read_only_udm.principal.asset.ip |
מופה מיומן השינויים |
fileType |
event.idm.read_only_udm.principal.process.file.mime_type |
מופה מיומן השינויים |
Type |
event.idm.read_only_udm.target.file.mime_type |
מופה מיומן השינויים |
sr_bytes |
network.send_bytes |
מופה מיומן השינויים |
requested_host" and "requested_path |
target.url |
מופה מיומן השינויים |
username |
principal.user.userid |
מופה מיומן השינויים |
destination_ip |
target.ip |
מופה מיומן השינויים |
destination_port |
target.port |
מופה מיומן השינויים |
target_ip |
target.ip |
מופה מיומן השינויים |
שנה רישום
צפייה ביומן השינויים של כלי הניתוח הזה
הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.