1. Dalam konfigurasi Logstash saya ada filter kod ruby. Masalahnya, saya tak berapa jelas apa yang kod ini sebenarnya buat. Yang pastinya, apa yang saya perlukan ialah maklumat tambahan berkaitain dengan alamat ip (src_ip). Jadi hantar src_ip ke server, terima maklumat berkaitan.

  2. Contohnya ada pemboleh ubah event dan ia di hantar ke server API. event ini akan diubah ke json dan dihantar ke server dalam pengepala (header) http.

   body_hash = event 
  1. Saya guna tcpdump & wireshark untuk pastikan apa yang kod ini hantar ke server dan dapati event mengandungi semua objek json. Apa yang diperlukan oleh server hanyalah nilai untuk kekunci src_ip. Jadi selama ini kod ini tidak cekap & membazir - masa, proses & bandwidth.
POST /honeyserve/tagger/both HTTP/1.1
Accept-Encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3
Accept: */*
User-Agent: Ruby
Content-Type: application/json
Connection: close
Host: api.server.xyz
Content-Length: 469

{"type":"json","path":"/home/adli/logs/cowrie.json.2018-10-09","timestamp":"2018-10-08T16:00:26.187872Z","protocol":"telnet","session":"a91f37a1e6fa","eventid":"cowrie.session.connect","message":"New connection: x.y.z.w:33990 (a.b.c.d:23) [session: a91f37a1e6fa]","dst_port":23,"src_port":33990,"src_ip":"x.y.z.w","dst_ip":"a.b.c.d","host":"xubuntu-analyst","@version":"1","@timestamp":"2020-12-14T05:05:15.652Z"} 
Location: https://api.server.xyz/honeyserve/tagger/both
Server: Myserver 
Connection: close
Content-Length: 0


  1. Setelah merujuk dokumentasi Elasticsearch berkenaan dengan objek event , saya tukar kan kod kepada yang berikut:
body_hash = { 'src_ip' => event.get('[src_ip]') }

  1. Dalam baris kod di atas, saya gunakan data struktur hash dimana (kekunci) src_ip => nilai src_ip. get digunakan disini untuk capai dan pulangkan nilai dalam objek tertentu.
POST /honeyserve/tagger/both HTTP/1.1
Accept-Encoding: gzip;q=1.0,deflate;q=0.6,identity;q=0.3
Accept: */*
User-Agent: Ruby
Content-Type: application/json
Connection: close
Host: api.server.xyz  
Content-Length: 26

{"src_ip":"x.y.z.w"}
Location: https://api.server.xyz/honeyserve/tagger/both
Server: Myserver
 
Connection: close
Content-Length: 0

  1. Berdasarkan gambarajah librenms kita boleh lihat penururan jumlah keseluruhan trafik yang berkaitan.
trafik rangkaian

trafik rangkaian

adli@rumah