Mengumpulkan log Cisco Firepower NGFW
Dokumen ini menjelaskan cara menyerap log Cisco Firepower Next Generation Firewall (NGFW) ke Google Security Operations menggunakan BindPlane. Parser mengekstrak log dari berbagai format (syslog, JSON, dan kombinasinya), menormalisasi stempel waktu, dan memetakan kolom yang relevan ke Model Data Terpadu (UDM). Proses ini menangani pesan syslog konvensional dan payload berformat JSON dalam log, memanfaatkan pola grok dan logika bersyarat untuk mengekstrak kolom seperti ID peristiwa, tingkat keparahan, dan IP klien, lalu memperkaya data dengan label berdasarkan Nama Host dan URI HTTP.
Sebelum memulai
Pastikan Anda memenuhi prasyarat berikut:
- Instance Google SecOps
- Windows 2016 atau yang lebih baru, atau host Linux dengan
systemd
- Jika berjalan di belakang proxy, pastikan port firewall terbuka
- Akses istimewa ke perangkat Cisco Firepower
Mendapatkan file autentikasi penyerapan Google SecOps
- Login ke konsol Google SecOps.
- Buka SIEM Settings > Collection Agents.
- Download file autentikasi penyerapan.
- Simpan file dengan aman di sistem tempat BindPlane akan diinstal.
Mendapatkan ID pelanggan Google SecOps
- Login ke konsol Google SecOps.
- Buka Setelan SIEM > Profil.
- Salin dan simpan ID Pelanggan dari bagian Detail Organisasi.
Menginstal agen Bindplane
Instal agen Bindplane di sistem operasi Windows atau Linux Anda sesuai dengan petunjuk berikut.
Penginstalan Windows
- Buka Command Prompt atau PowerShell sebagai administrator.
Jalankan perintah berikut:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Penginstalan Linux
- Buka terminal dengan hak istimewa root atau sudo.
Jalankan perintah berikut:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Referensi penginstalan tambahan
Untuk opsi penginstalan tambahan, lihat panduan penginstalan.
Mengonfigurasi Agen BindPlane untuk menyerap Syslog dan mengirimkannya ke Google SecOps
- Akses file konfigurasi:
- Cari file
config.yaml
. Biasanya, file ini berada di direktori/etc/bindplane-agent/
di Linux atau di direktori penginstalan di Windows. - Buka file menggunakan editor teks (misalnya,
nano
,vi
, atau Notepad).
- Cari file
Edit file
config.yaml
sebagai berikut:receivers: udplog: # Replace the port and IP address as required listen_address: "0.0.0.0:514" exporters: chronicle/chronicle_w_labels: compression: gzip # Adjust the path to the credentials file you downloaded in Step 1 creds_file_path: '/path/to/ingestion-authentication-file.json' # Replace with your actual customer ID from Step 2 customer_id: <customer_id> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'CISCO_FIREPOWER_FIREWALL' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labels
- Ganti port dan alamat IP sesuai kebutuhan di infrastruktur Anda.
- Ganti
<customer_id>
dengan ID pelanggan yang sebenarnya. - Perbarui
/path/to/ingestion-authentication-file.json
ke jalur tempat file autentikasi disimpan di bagian Dapatkan file autentikasi penyerapan Google SecOps.
Mulai ulang agen Bindplane untuk menerapkan perubahan
Untuk memulai ulang agen Bindplane di Linux, jalankan perintah berikut:
sudo systemctl restart bindplane-agent
Untuk memulai ulang agen Bindplane di Windows, Anda dapat menggunakan konsol Services atau memasukkan perintah berikut:
net stop BindPlaneAgent && net start BindPlaneAgent
Mengonfigurasi Syslog di Perangkat Cisco FirePower
- Login ke UI web Firepower Device Manager.
- Buka Setelan Sistem > Setelan Logging.
- Alihkan tombol Logging Data ke Aktifkan.
- Klik ikon + di bagian Server Syslog.
- Klik Create new Syslog Server. (Atau, Anda dapat membuat Server Syslog di Objects > Syslog Servers).
- Berikan detail konfigurasi berikut:
- Alamat IP: Masukkan alamat IP agen Bindplane.
- Jenis Protokol: Pilih UDP.
- Nomor Port: Masukkan nomor port agen BindPlane.
- Pilih Antarmuka Data atau Antarmuka Pengelolaan.
- Klik Oke.
- Pilih Server syslog yang baru dibuat dari daftar, lalu klik OK.
- Klik Tingkat keparahan untuk memfilter semua peristiwa, lalu pilih tingkat logging Informasional dari daftar.
- Klik Simpan.
- Klik ikon Deploy New Settings > Deploy Now.
- Klik Kebijakan di bagian atas layar.
- Arahkan kursor ke sisi kanan aturan ACP, lalu klik edit Edit.
- Buka tab Logging.
- Pilih Di Akhir Koneksi.
- Buka daftar Select a Syslog Alert Configuration.
- pilih Server Syslog Bindplane.
- Klik Oke.
- Klik ikon Deploy New Settings > Deploy Now.
Tabel pemetaan UDM
Kolom Log | Pemetaan UDM | Logika |
---|---|---|
AccessControlRuleAction |
security_result.action |
Dipetakan langsung dari log mentah. Nilai dinormalisasi ke UDM (ALLOW/BLOCK). |
AccessControlRuleName |
security_result.rule_name |
Dipetakan langsung dari log mentah. |
ACPolicy |
security_result.rule_labels.value |
Dipetakan langsung dari log mentah. Kunci ditetapkan ke "ACPolicy". |
ApplicationProtocol |
network.application_protocol |
Dipetakan langsung dari log mentah. |
Client |
network.http.user_agent |
Dipetakan langsung dari log mentah. |
ClientVersion |
principal.asset.platform_version |
Dipetakan langsung dari log mentah. |
collection_time.nanos |
metadata.event_timestamp.nanos |
Dipetakan langsung dari log mentah. |
collection_time.seconds |
metadata.event_timestamp.seconds |
Dipetakan langsung dari log mentah. |
ConnectionDuration |
network.session_duration.seconds |
Dipetakan langsung dari log mentah, dikonversi ke detik jika perlu (misalnya, dari format durasi). |
data |
metadata.description |
Digunakan bersama dengan eventId untuk membuat deskripsi yang lebih deskriptif. Juga digunakan untuk mengekstrak kolom lain menggunakan grok dan ekspresi reguler. |
deviceId |
metadata.product_log_id |
Dipetakan langsung dari log mentah setelah diganti namanya menjadi device_uuid . |
device_uuid |
metadata.product_log_id |
Dipetakan langsung dari log mentah. |
DstIP |
target.asset.ip , target.ip |
Dipetakan langsung dari log mentah. |
DstPort |
target.port |
Dipetakan langsung dari log mentah. |
EgressInterface |
principal.asset.attribute.labels.value |
Dipetakan langsung dari log mentah. Kunci ditetapkan ke "EgressInterface". |
EgressZone |
target.location.name |
Dipetakan langsung dari log mentah. |
eventId |
metadata.product_event_type |
Dipetakan langsung dari log mentah. Juga digunakan untuk logika bersyarat dan pemfilteran. |
FileAction |
security_result.summary |
Dipetakan langsung dari log mentah. |
FileDirection |
metadata.description |
Dipetakan langsung dari log mentah dan ditambahkan ke deskripsi. |
FileName |
target.file.full_path |
Dipetakan langsung dari log mentah. |
FilePolicy |
security_result.rule_name |
Dipetakan langsung dari log mentah. |
FileSize |
target.file.size |
Dipetakan langsung dari log mentah. |
FileSHA256 |
target.file.sha256 |
Dipetakan langsung dari log mentah. |
FileSandboxStatus |
security_result.description |
Dipetakan langsung dari log mentah. |
HTTPReferer |
network.http.referral_url |
Dipetakan langsung dari log mentah. |
HTTPResponse |
network.http.response_code |
Dipetakan langsung dari log mentah. |
HTTP_Hostname |
target.resource.attribute.labels.value |
Dipetakan langsung dari log mentah. Kunci ditetapkan ke "HTTP_Hostname". |
HTTP_URI |
target.resource.attribute.labels.value |
Dipetakan langsung dari log mentah. Kunci ditetapkan ke "HTTP_URI". |
IngressInterface |
principal.asset.attribute.labels.value |
Dipetakan langsung dari log mentah. Kunci ditetapkan ke "IngressInterface". |
IngressZone |
principal.location.name |
Dipetakan langsung dari log mentah. |
InitiatorBytes |
network.received_bytes |
Dipetakan langsung dari log mentah. |
InlineResult |
security_result.action_details |
Dipetakan langsung dari log mentah. |
IntrusionPolicy |
security_result.rule_name |
Dipetakan langsung dari log mentah. |
log_type |
metadata.log_type |
Dipetakan langsung dari log mentah. |
Message |
security_result.description |
Dipetakan langsung dari log mentah, sering kali diawali dengan "Message : ". |
NAPPolicy |
principal.asset.attribute.labels.value |
Dipetakan langsung dari log mentah. Kunci ditetapkan ke "NAPPolicy". |
Prefilter Policy |
security_result.rule_labels.value |
Dipetakan langsung dari log mentah. Kunci ditetapkan ke "Prefilter Policy". |
Priority |
security_result.priority_details |
Dipetakan langsung dari log mentah. |
priorityId |
security_result.priority_details |
Dipetakan langsung dari log mentah. |
product |
metadata.product_name |
Tetapkan ke "Firepower Firewall". |
Protocol |
network.ip_protocol |
Dipetakan langsung dari log mentah. Nilai dinormalisasi ke UDM (TCP, UDP, ICMP, dll.). |
ResponderBytes |
network.sent_bytes |
Dipetakan langsung dari log mentah. |
Revision |
security_result.about.labels.value |
Dipetakan langsung dari log mentah. Kunci ditetapkan ke "Singnature_Version". |
ruleId |
security_result.rule_id |
Dipetakan langsung dari log mentah. |
security_result.severity |
security_result.severity |
Ditetapkan berdasarkan kolom severity dari log mentah, menggunakan tabel pemetaan untuk pemetaan ke nilai tingkat keparahan UDM. |
security_result.severity_details |
security_result.severity_details |
Ditetapkan berdasarkan kolom severity dari log mentah, menggunakan tabel lookup untuk pemetaan ke detail tingkat keparahan UDM. |
SID |
security_result.threat_id |
Dipetakan langsung dari log mentah. |
SrcIP |
principal.asset.ip , principal.ip |
Dipetakan langsung dari log mentah. |
SrcPort |
principal.port |
Dipetakan langsung dari log mentah. |
syslog_msg_id |
metadata.product_event_type |
Dipetakan langsung dari log mentah setelah dikonversi menjadi string. Digunakan untuk menggantikan eventId jika ada. |
syslog_msg_text |
metadata.description , security_result.description |
Dipetakan langsung dari log mentah, terkadang diawali dengan "Message : ". Digunakan untuk mengganti deskripsi yang dihasilkan dari data dan eventId . |
syslog_severity |
security_result.severity |
Dipetakan langsung dari log mentah setelah dikonversi menjadi string. Digunakan untuk mengganti tingkat keparahan yang berasal dari eventId . Nilai dinormalisasi ke UDM (INFORMATIONAL, WARNING, ERROR, dll.). |
sysloghost |
intermediary.hostname |
Dipetakan langsung dari log mentah. |
ThreatName |
security_result.threat_name |
Dipetakan langsung dari log mentah. |
ts |
metadata.event_timestamp |
Diuraikan dari log mentah menggunakan filter tanggal dan berbagai format. |
ts_year |
metadata.event_timestamp |
Diuraikan dari log mentah menggunakan filter tanggal dan berbagai format. |
URL |
target.url |
Dipetakan langsung dari log mentah. |
URLCategory |
security_result.category_details |
Dipetakan langsung dari log mentah. |
URLReputation |
security_result.confidence_details |
Dipetakan langsung dari log mentah. |
User |
target.user.userid |
Dipetakan langsung dari log mentah. |
UserAgent |
network.http.user_agent |
Dipetakan langsung dari log mentah. |
UserName |
target.user.userid |
Dipetakan langsung dari log mentah. |
user_name |
principal.user.email_addresses |
Dipetakan langsung dari log mentah untuk jenis peristiwa tertentu. |
WebApplication |
target.application |
Dipetakan langsung dari log mentah. |
metadata.event_type ditetapkan ke nilai default NETWORK_CONNECTION dan terkadang diganti berdasarkan eventId atau kolom lainnya. |
||
metadata.vendor_name selalu ditetapkan ke "Cisco". |
Perlu bantuan lain? Dapatkan jawaban dari anggota Komunitas dan profesional Google SecOps.