איסוף יומנים של Appian Cloud

גרסת כלי הניתוח: 4.0

נתמך ב:

במאמר הזה מוסבר איך להטמיע יומנים של Appian Cloud ב-Google Security Operations באמצעות סוכן Bindplane.

‫Appian Cloud היא פלטפורמת אוטומציה עם תכנות מינימלי שמאפשרת לארגונים ליצור אפליקציות ותהליכי עבודה ארגוניים. הזרמת יומנים מספקת יומני ביקורת ואירועי אבטחה מסביבת Appian Cloud דרך חיבור IPsec VPN.

לפני שמתחילים

חשוב לוודא שמתקיימות הדרישות המוקדמות הבאות:

  • מופע של Google SecOps
  • ‫Windows Server 2016 ואילך, או מארח Linux עם systemd
  • אם מריצים מאחורי שרת proxy, מוודאים שיציאות חומת האש פתוחות בהתאם לדרישות של סוכן Bindplane
  • רישיון Professional או Signature עם Appian Cloud
  • תיעוד של כתובות ה-URL של סביבת Appian
  • ‫IPsec VPN בין Appian Cloud לבין הסביבה שבה יופעל סוכן Bindplane

קבלת קובץ אימות להטמעת נתונים ב-Google SecOps

  1. נכנסים למסוף Google SecOps.
  2. עוברים אל SIEM Settings > Collection Agents.
  3. מורידים את קובץ האימות להטמעת נתונים.
  4. שומרים את הקובץ בצורה מאובטחת במערכת שבה יותקן סוכן Bindplane.

איך מוצאים את מספר הלקוח ב-Google SecOps

  1. נכנסים למסוף Google SecOps.
  2. עוברים אל SIEM Settings > Profile (הגדרות SIEM > פרופיל).
  3. מעתיקים את מזהה הלקוח מהקטע פרטי הארגון ושומרים אותו.

התקנת סוכן Bindplane

מתקינים את סוכן Bindplane במערכת ההפעלה Windows או Linux לפי ההוראות הבאות.

התקנה ב-Windows

  1. פותחים את שורת הפקודה או את PowerShell כאדמין.
  2. מריצים את הפקודה הבאה:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    
  3. מחכים שההתקנה תסתיים.

  4. כדי לוודא שההתקנה בוצעה, מריצים את הפקודה:

    sc query observiq-otel-collector
    

    השירות צריך להופיע עם הערך RUNNING.

התקנה ב-Linux

  1. פותחים טרמינל עם הרשאות root או sudo.
  2. מריצים את הפקודה הבאה:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    
  3. מחכים שההתקנה תסתיים.

  4. כדי לוודא שההתקנה בוצעה, מריצים את הפקודה:

    sudo systemctl status observiq-otel-collector
    

    השירות צריך להופיע כפעיל (פועל).

מקורות מידע נוספים להתקנה

אפשרויות התקנה נוספות ופתרון בעיות מפורטים במדריך להתקנת סוכן Bindplane.

הגדרה של סוכן Bindplane להטמעה של syslog ושליחה אל Google SecOps

איתור קובץ ההגדרות

  • ‫Linux:

    sudo nano /etc/bindplane-agent/config.yaml
    
  • ‫Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

עריכת קובץ ההגדרות

  • מחליפים את כל התוכן של config.yaml בהגדרה הבאה:

    receivers:
        tcplog:
            listen_address: "0.0.0.0:6514"
    
    exporters:
        chronicle/appian_cloud:
            compression: gzip
            creds_file_path: '/etc/bindplane-agent/ingestion-auth.json'
            customer_id: '<customer_id>'
            endpoint: malachiteingestion-pa.googleapis.com
            log_type: APPIAN_CLOUD
            raw_log_field: body
    
    service:
        pipelines:
            logs/appian_to_chronicle:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/appian_cloud
    

פרמטרים להגדרה

מחליפים את ה-placeholders הבאים:

  • הגדרת מקלט:

    • ‫listen_address: כתובת ה-IP והיציאה להאזנה:
      • ‫0.0.0.0 כדי להאזין בכל הממשקים (מומלץ)
      • יציאה 6514 היא היציאה המומלצת להזרמת יומנים של Appian Cloud
  • הגדרת כלי הייצוא:

    • ‫creds_file_path: הנתיב המלא לקובץ האימות להטמעת נתונים:
      • ‫Linux: /etc/bindplane-agent/ingestion-auth.json
      • ‫Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
    • ‫customer_id: מספר הלקוח שהועתק ממסוף Google SecOps
    • ‫endpoint: כתובת ה-URL של נקודת הקצה האזורית:
      • ארה"ב: malachiteingestion-pa.googleapis.com
      • אירופה: europe-malachiteingestion-pa.googleapis.com
      • אסיה: asia-southeast1-malachiteingestion-pa.googleapis.com
      • רשימה מלאה מופיעה במאמר בנושא נקודות קצה אזוריות.

שמירת קובץ ההגדרות

  • אחרי שמסיימים לערוך, שומרים את הקובץ:
    • ‫Linux: מקישים על Ctrl+O, אחר כך על Enter ואז על Ctrl+X.
    • ‫Windows: לוחצים על קובץ > שמירה.

מפעילים מחדש את סוכן Bindplane כדי להחיל את השינויים.

  • כדי להפעיל מחדש את סוכן Bindplane ב-Linux, מריצים את הפקודה הבאה:

    sudo systemctl restart observiq-otel-collector
    
    1. מוודאים שהשירות פועל:

      sudo systemctl status observiq-otel-collector
      
    2. בודקים אם יש שגיאות ביומנים:

      sudo journalctl -u observiq-otel-collector -f
      
  • כדי להפעיל מחדש את סוכן Bindplane ב-Windows, בוחרים באחת מהאפשרויות הבאות:

    • שורת הפקודה או PowerShell כאדמין:

      net stop observiq-otel-collector && net start observiq-otel-collector
      
    • מסוף השירותים:

      1. מקישים על Win+R, מקלידים services.msc ומקישים על Enter.
      2. מחפשים את observIQ OpenTelemetry Collector.
      3. לוחצים לחיצה ימנית ובוחרים באפשרות הפעלה מחדש.
      4. מוודאים שהשירות פועל:

        sc query observiq-otel-collector
        
      5. בודקים אם יש שגיאות ביומנים:

        type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
        

הפעלת סטרימינג של יומנים ב-Appian Cloud

  1. פותחים בקשת תמיכה ב-Appian בנושא הפעלת סטרימינג של יומנים, וכוללים את הפרטים הבאים:
    • כתובות URL של סביבות
    • נתיב הרשת הרצוי, כ-IPsec VPN
    • כתובת ה-IP של סוכן Bindplane
    • מספר יציאת TCP של סוכן Bindplane (לדוגמה, 6514)
  2. צוות התמיכה של Appian מתזמן חלון זמן לתחזוקה ומבצע את הפריסה של ההגדרה.

טבלת מיפוי UDM

שדה ביומן מיפוי UDM היגיון
available_heap_space_label additional.fields ממוזג
cpu_core_count_label additional.fields ממוזג
daemon_thread_count_label additional.fields ממוזג
data_store_label additional.fields ממוזג
devicetimestamp_label additional.fields ממוזג
entity_label additional.fields ממוזג
execute_time_label additional.fields ממוזג
load_average_label additional.fields ממוזג
operation_name_label additional.fields ממוזג
operation_type_label additional.fields ממוזג
permanent_generation_available_label additional.fields ממוזג
permanent_generation_used_label additional.fields ממוזג
prepare_time_label additional.fields ממוזג
retcode_label additional.fields ממוזג
session_count_label additional.fields ממוזג
tenured_collection_count_label additional.fields ממוזג
tenured_collection_time_label additional.fields ממוזג
tenured_generation_available_label additional.fields ממוזג
tenured_generation_usage_after_collection_label additional.fields ממוזג
tenured_generation_used_label additional.fields ממוזג
thread_label additional.fields ממוזג
total_swap_space_label additional.fields ממוזג
total_system_memory_label additional.fields ממוזג
total_thread_count_label additional.fields ממוזג
transform_time_label additional.fields ממוזג
used_heap_space_label additional.fields ממוזג
used_swap_space_label additional.fields ממוזג
used_system_memory_label additional.fields ממוזג
young_cllection_time_label additional.fields ממוזג
young_collection_count_label additional.fields ממוזג
has_principal_user extensions.auth.type מיפוי: true → AUTHTYPE_UNSPECIFIED
src_host intermediary.hostname מיפוי ישיר
src_ip intermediary.ip ממוזג
time metadata.event_timestamp ניתוח הכתובות שברשימה: yyyy-MM-dd HH:mm:ss
event_type metadata.event_type מיפוי ישיר
device metadata.product_event_type מיפוי ישיר
product_type metadata.product_event_type מיפוי ישיר
http_method network.http.method מיפוי ישיר
useragent network.http.parsed_user_agent שם שונה/מיפוי
useragent network.http.user_agent מיפוי ישיר
connectionid network.session_id מיפוי ישיר
sessionID network.session_id מיפוי ישיר
session_id network.session_id מיפוי ישיר
domain principal.administrative_domain מיפוי ישיר
application principal.application מיפוי ישיר
host principal.asset.hostname מיפוי ישיר
hostname principal.asset.hostname מיפוי ישיר
IpAddress principal.asset.ip ממוזג
host principal.hostname מיפוי ישיר
hostname principal.hostname מיפוי ישיר
IpAddress principal.ip ממוזג
src_port principal.port מיפוי ישיר
process_id principal.process.pid מיפוי ישיר
url principal.url מיפוי ישיר
roles principal.user.attribute.roles ממוזג
companyname principal.user.company_name מיפוי ישיר
email principal.user.email_addresses ממוזג
user_id principal.user.email_addresses מיפוי: N/A → user_id
modified_by_uuid principal.user.product_object_id מיפוי ישיר
user principal.user.product_object_id מיפוי ישיר
modified_by_username principal.user.userid מיפוי ישיר
userId principal.user.userid מיפוי ישיר
user_id principal.user.userid מיפוי ישיר
username2 principal.user.userid מיפוי ישיר
versionDetails security_result.about.platform_version מיפוי ישיר
outcome_result security_result.action ממוזג
security_result_action security_result.action ממוזג
act security_result.action_details מיפוי ישיר
status security_result.action_details מיפוי ישיר
sec_result_category security_result.category ממוזג
category security_result.category_details ממוזג
desc security_result.description מיפוי ישיר
details security_result.description מיפוי ישיר
details_label security_result.detection_fields ממוזג
endpoint_label security_result.detection_fields ממוזג
execution_count_label security_result.detection_fields ממוזג
maximum_execution_time_label security_result.detection_fields ממוזג
maximum_response_size_label security_result.detection_fields ממוזג
maximum_response_time_label security_result.detection_fields ממוזג
mean_execution_time_label security_result.detection_fields ממוזג
mean_response_size_label security_result.detection_fields ממוזג
minimum_execution_time_label security_result.detection_fields ממוזג
minimum_response_size_label security_result.detection_fields ממוזג
model_label security_result.detection_fields ממוזג
rolesAllow_label security_result.detection_fields ממוזג
sqlcmd_label security_result.detection_fields ממוזג
status_code_1xx_count_label security_result.detection_fields ממוזג
status_code_2xx_count_label security_result.detection_fields ממוזג
status_code_3xx_count_label security_result.detection_fields ממוזג
status_code_4xx_count_label security_result.detection_fields ממוזג
status_code_5xx_count_label security_result.detection_fields ממוזג
type_label security_result.detection_fields ממוזג
uuid_label security_result.detection_fields ממוזג
severity security_result.severity מיפוי: "INFORMATIONAL","INFORMATION","INFO" ← INFORMATIONAL, "WARNING", "MEDIUM" ← `M...
detail security_result.severity_details מיפוי ישיר
action1 security_result.summary מיפוי ישיר
msg security_result.summary מיפוי ישיר
object security_result.summary מיפוי ישיר
operation_detail security_result.summary מיפוי ישיר
reason security_result.summary מיפוי ישיר
summary security_result.summary מיפוי ישיר
server_host target.asset.hostname מיפוי ישיר
tar_host target.asset.hostname מיפוי ישיר
src_ip1 target.asset.ip ממוזג
hash target.file.md5 מיפוי ישיר
document_name target.file.names ממוזג
server_host target.hostname מיפוי ישיר
tar_host target.hostname מיפוי ישיר
src_ip1 target.ip ממוזג
commandline target.process.command_line מיפוי ישיר
action_label target.resource.attribute.labels ממוזג
environment_label target.resource.attribute.labels ממוזג
filters_label target.resource.attribute.labels ממוזג
new_value_label target.resource.attribute.labels ממוזג
original_value_label target.resource.attribute.labels ממוזג
page_group_invoved_label target.resource.attribute.labels ממוזג
page_involved_label target.resource.attribute.labels ממוזג
record_identifier_label target.resource.attribute.labels ממוזג
record_type_name_label target.resource.attribute.labels ממוזג
record_type_url_stub_label target.resource.attribute.labels ממוזג
setting_new_value_label target.resource.attribute.labels ממוזג
setting_old_value_label target.resource.attribute.labels ממוזג
site_involved_label target.resource.attribute.labels ממוזג
site_url_stub_label target.resource.attribute.labels ממוזג
view_label target.resource.attribute.labels ממוזג
database target.resource.name מיפוי ישיר
property target.resource.name מיפוי ישיר
record_type_name target.resource.name מיפוי ישיר
resourcename target.resource.name מיפוי ישיר
site_involved target.resource.name מיפוי ישיר
id target.resource.product_object_id מיפוי ישיר
oid target.resource.product_object_id מיפוי ישיר
queryid target.resource.product_object_id מיפוי ישיר
sessionID target.resource.product_object_id מיפוי ישיר
transactionId target.resource.product_object_id מיפוי ישיר
action target.resource.resource_subtype מיפוי ישיר
name target.resource.resource_subtype מיפוי ישיר
user_uuid target.user.product_object_id מיפוי ישיר
username1 target.user.userid מיפוי ישיר
לא רלוונטי extensions.auth.type קבוע: AUTHTYPE_UNSPECIFIED
לא רלוונטי metadata.event_type קבוע: GENERIC_EVENT
לא רלוונטי metadata.log_type קבוע: APPIAN_CLOUD
לא רלוונטי metadata.product_name קבוע: Cloud Platform
לא רלוונטי metadata.vendor_name קבוע: Appian
לא רלוונטי security_result.severity קבוע: INFORMATIONAL
sessionID event.idm.read_only_udm.network.session_id מופה מיומן השינויים
transactionId event.idm.read_only_udm.target.resource.product_object_id מופה מיומן השינויים
versionDetails event.idm.read_only_udm.security_result.about.platform_version מופה מיומן השינויים
application event.idm.read_only_udm.principal.application מופה מיומן השינויים
IpAddress event.idm.read_only_udm.principal.ip מופה מיומן השינויים
IpAddress event.idm.read_only_udm.principal.asset.ip מופה מיומן השינויים
userId event.idm.read_only_udm.principal.user.userid מופה מיומן השינויים
rolesAllow event.idm.read_only_udm.additional.fields מופה מיומן השינויים
userRole event.idm.read_only_udm.additional.fields מופה מיומן השינויים
status event.idm.read_only_udm.section_result.action_details מופה מיומן השינויים
resourcename event.idm.read_only_udm.target.resource.name מופה מיומן השינויים
commandline event.idm.read_only_udm.target.process.command_line מופה מיומן השינויים
devicetimestamp event.idm.read_only_udm.additional.fields מופה מיומן השינויים
email event.idm.read_only_udm.principal.user.email_addresses מופה מיומן השינויים
document_name target.files.names מופה מיומן השינויים
msg" and "reason security_result.summary מופה מיומן השינויים
original_value", "setting_new_value", "setting_old_value", and "new_value target.resource.attribute.labels מופה מיומן השינויים
page_involved", "site_involved", and "page_group_involved target.resource.attribute.labels מופה מיומן השינויים
total_thread_count", "daemon_thread_count", used_heap_space", "available_heap_space", "tenured_generation_usage_after_collection", "tenured_generation_used", "tenured_generation_available", "permanent_generation_used", and "permanent_generation_available additional.fields מופה מיומן השינויים
young_collection_count", "young_cllection_time", "tenured_collection_count", "tenured_collection_time", "cpu_core_count", "total_system_memory", "used_system_memory", "total_swap_space", "used_swap_space", "load_average", and "session_count additional.fields מופה מיומן השינויים
record_identifier", "record_type_url_stub", "view", "filters", "environment", and "site_url_stub target.resource.attribute.labels מופה מיומן השינויים
data_store", "entity", and "operation_type additional.fields מופה מיומן השינויים
operation_name", "prepare_time", "transform_time", and "execute_time additional.fields מופה מיומן השינויים
connectionid network.session.id מופה מיומן השינויים
minimum_execution_time", "execution_count", "status_code_1xx_count", "status_code_2xx_count", "status_code_3xx_count", "status_code_4xx_count", "status_code_5xx_count", "minimum_response_size", "maximum_response_time", "maximum_response_size", "mean_execution_time", and "maximum_response_size security_result.detection_fields מופה מיומן השינויים

יומן שינויים

צפייה ביומן השינויים של מנתח התוכן הזה

הבעיה עדיין לא נפתרה? קבלת תשובות מחברי הקהילה וממומחי Google SecOps.