Tuesday, August 25, 2015

Log Management Dengan Graylog2, MongoDB, Elasticsearch, Kibana (2)

Wihartoyo     Tuesday, August 25, 2015    
Bagian 2 dari 3 tulisan
Pada bagian ini diuraikan konfigurasi input dan ekstraktor serta menghubungkan Suricata ke Graylog2

Melanjutkan tulisan sebelumnya Log Management Dengan Graylog2, MongoDB, Elasticsearch, Kibana (1), pada tulisan ini akna sedikit menguraikan tentang beberapa konfigurasi dan pemanfaatannya.  Tentunya masih menggunakan Graylog2.

Input.

Konfiguras Input sangat penting mengingat ini adalah item konfigurasi yang memungkinkan Graylog2 untuk membuka port menangkap kiriman log. Ada beberapa jenis input.  Namun untuk sementara kita hanya menggunakan “Syslog TCP”  dan “Syslog UDP”.  Dan karena input nanti akan berhubungan dengan extractors, maka sebaiknya input dibuat spesifik untuk mesin log yang spesifik juga.  Misalkan kita akan menangkap log dari Suricata, kita buatkan 1 input khusus dengan protocol UDP misalnya, dan listening pada port 6160 misalkan.

Langkah pembuatan input

Untuk membuat input, setelah kita bisa memasuki interface Graylog2, silakan klik pada "System--Input" sebagaimana terlihat pada gambar:

System-->Input
Setelah kita klik input, maka kita akan dibawa ke layar berikut:

Layar Konfigurasi Input.
Dan, perhatikan gambar berikut:




Langkah-langkah:
  1. Pilih Syslog-UDP dan klik "Launch new Input" sehingga muncul pop-up.  Perhatikan judul pop-up harus sesuai dengan yang kita pilih.
  2. Tentukan nama Input
  3. Tentukan pada port berapa input akan dipasang (contoh 6061)
  4. Tentukan bind address (pada contoh 0.0.0.0 alias semua IP yang aktif)
  5. Klik "Launch"
Setelah kita klik Launch, maka input object aru akan di list pada layar Input dalam kondisi belum aktif. Untuk mengaktifkannya kita bisa klik "Start Input".


Namun, sebelum kita buatkan ekstraktorynya, ada baiknya jangan kita start dulu inputnya, karena ekstraktor berjalan saat ada log stream diterima oleh input.  Jadi bila input tidak dilengkapi oleh ektraktor, maka log stream yang disimpan adalah log stream apa adanya.

Manage Extractors

Untuk memanage ekstraktor, pada boks input kita klik tomnbol "Manage Extractors" sehingga kita akan dibawa ke layar berikut:
Layar Manage Extractors
Pada gambar, kita lihat belum ada satupun ektraktor yang bisa digunakan.  Untuk menambahkan, klik "Action" dan pilih "Impor Extractors". Dan masukkan text berikut (modifikasi ekstraktor untuk menghandle Log Suricata, sesuai kebutuhan saya).
#----------------------------------------------------------

{
  "extractors": [
    {
      "condition_type": "none",
      "condition_value": "event_type",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"event_type\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "event_type",
      "title": "suricata Event Type"
    },
    {
      "condition_type": "none",
      "condition_value": "src_ip",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"src_ip\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "src_ip",
      "title": "Source IP"
    },
    {
      "condition_type": "none",
      "condition_value": "src_port",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"src_port\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "src_port",
      "title": "Soource Port"
    },
    {
      "condition_type": "none",
      "condition_value": "dest_ip",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"dest_ip\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "dest_ip",
      "title": "Destination IP"
    },
    {
      "condition_type": "none",
      "condition_value": "dest_port",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"dest_port\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "dest_port",
      "title": "Destination Port"
    },
    {
      "condition_type": "none",
      "condition_value": "hostname",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"hostname\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "hostname",
      "title": "Destination Host name"
    },
    {
      "condition_type": "none",
      "condition_value": "url",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"url\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "url",
      "title": "URL"
    },
    {
      "condition_type": "none",
      "condition_value": "http_user_agent",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"http_user_agent\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "http_user_agent",
      "title": "HTTP User Agent"
    },
    {
      "condition_type": "none",
      "condition_value": "http_content_type",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"http_content_type\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "http_content_type",
      "title": "HTTP Content Type"
    },
    {
      "condition_type": "none",
      "condition_value": "http_method",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"http_method\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "http_method",
      "title": "HTTP Method"
    },
    {
      "condition_type": "none",
      "condition_value": "signature",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"signature\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "signature",
      "title": "Signature"
    },
    {
      "condition_type": "none",
      "condition_value": "payload",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"payload\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "payload",
      "title": "Payload"
    },
    {
      "condition_type": "none",
      "condition_value": "payload_printable",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"payload_printable\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "payload_printable",
      "title": "Payload Printable"
    },
    {
      "condition_type": "none",
      "condition_value": "severity",
      "converters": [
        {
          "config": {},
          "type": "numeric"
        }
      ],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\\\"severity\\\"[:]([^\\}|\\]]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "severity",
      "title": "Severity"
    },
    {
      "condition_type": "none",
      "condition_value": "signature_id",
      "converters": [],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"signature_id\"[:]([^,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "signature_id",
      "title": "Signature ID"
    },
    {
      "condition_type": "none",
      "condition_value": "bytes_toclient",
      "converters": [
        {
          "config": {},
          "type": "numeric"
        }
      ],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\\\"bytes_toclient\\\"[:]([^\\,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "bytes_toclient",
      "title": "Bytes to Client"
    },
    {
      "condition_type": "none",
      "condition_value": "bytes_toserver",
      "converters": [
        {
          "config": {},
          "type": "numeric"
        }
      ],
      "cursor_strategy": "copy",
      "extractor_config": {
        "regex_value": "\"bytes_toserver\"[:]([^\\,]+)"
      },
      "extractor_type": "regex",
      "order": 1,
      "source_field": "message",
      "target_field": "bytes_toserver",
      "title": "Bytes to Server"
    }
  ],
  "version": "1.1.6 (2e264c2)"
}
#----------------------------------------------------------

Copy text di atas, dan paste ke layar berikut:


Setelah selesai, klik "Add extractors to input" dan kita akan dibawa ke layar berikut:

Daftar Ekstrator yang terbentuk
Penyesuaian Konfigurasi Syslog mesin Suricata

Pada tulisan Install Suricata IDS Pada Ubuntu 14.04, telah diuraikan tentang konfigurasi Suricata agar menuliskan outputnya ke syslog.  Di sini kita akan merubah konfigurasi syslog agar log dari suricata bisa di'lempar' ke Graylog2 pada protokol UDP dengna port 6061.

Pada Ubuntu 14.04, kita merubah konfigura syslog pada /etc/rsyslog.d/50-default.conf, sedangkan pada Centos 7.0 kita sesuaikan file /etc/rsyslog.conf dengan menambahkan baris berikut pada baris terakhir.

suricata                                 @graylog2-host:6061
Catatan: @@ menunjukkan penggunaan protokol TCP, @ menunjukkan penggunaan protokol UDP
Kemudian restart service rsyslog dengan perintah.


[root@suricatahost~]#service rsyslog restart


Setelah syslognya aktif, kita jalankan input pada graylog.  Tunggu beberapa saat sampai cukup log item untuk ditampilkan.

Setelah kira-kira akumulasi event dirasa cukup, maka kita bisa coba dengan klik "Seacrh" dan memasukkan "source:[suricatahost]" (dengan kurung siku menandakan variable, misal suricatahost = surids, maka
querynya adalah "source:surids").  Setelah menuliskan query dengan benar, tekan enter.

Layar "Search" untuk meng-query event.
Kita bisa melakukan analisa instan melalui box fields. Dalam contoh berikut kita ingin detil signature dengan mengklik "Quick View" di bawah signature.

Interaktif screen pada menu "Search"

Ok, sekarang suricata sudah ngobrol dengan Graylog2. Silakan dieksplore lebih lanjut, termasuk pembentukan Dashboard.  Dan, karena data tersimpan dalam elasticsearch, maka syntax untuk searching atau filtering data harus mengikuti kaidah yang berlaku pada elasticsearch.

Error Yum Install

Wihartoyo     Tuesday, August 25, 2015    

Mungkin kita pernah mengalami kegagalan install pada Centos kita. Ketika kita menginstall sesuatu mungkin kita akan mendapatkan respon yang seperti ini:

[root@tc nginx]# yum install apache2-utils
error: rpmdb: BDB0113 Thread/process 28314/139730797770560 failed: BDB1507 Thread died in Berkeley DB library
error: db5 error(-30973) from dbenv->failchk: BDB0087 DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db5 - (-30973)
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:

Error: rpmdb open failed


Gak usah kuatir, jalankan ini aja:


[root@tc nginx]# rm -rf /var/lib/rpm/__db*
[root@tc nginx]# yum update




Kalo udah, jalanin lagi proses installnya.....

Friday, August 21, 2015

Log Management dengan Graylog2, MongoDB, Elasticsearch, Kibana (1)

Wihartoyo     Friday, August 21, 2015    
Pada  bagian pertama ini  baru membahas installasi MongoDB, Elasticsearch, dan Graylog2.

System log adalah object penting dalam pengamanan informasi karena bergantung pada level logingnya, system log akan mencatat detail dari aktifitas yang terjadi pada suatu system komputer baik pada level OS maupun masing-masing aplikasi. Untuk itu, management penyimpanan log juga menjadi sangat penting artinya.  Karena, log tidak cuma untuk dicopy ke disk/tape kemudian disimpan ditempat yang aman, tapi sesuai dengan peruntukkannya, file log juga harus bisa dibaca.  Tidak cuma sampai bisa dibaca, sebenarnya. Mengingat, item yang dicatat yang sangat banyak, ukuran filenya juga sangat besar. Jadi, sudah seharusnya, log yang disimpan harus bisa dpanggil dan dibaca dengan mudah. Lebih jauh lagi bisa dengan mudah dianalisa untuk dilakukan review.
Ada beberapa pilihan utama software log management, dan yang paling umum adalah Splunk. Tapi splunk adalah proprietary software dan harganya sungguh mahal.  Sebagai contoh (per 21 Agustus 2015), license perpetual untuk 100GB/day data, mereka memasang harga US$ 3000.  Sementara Annual nya adalah US$ 1200. Sementara untuk 5GB/day perpetual US$ 5000 dan Annual US$ 2000 masing-masing dengan discount untuk volume purchase.  Memang, splunk telah dibuat sedemikian rupa sehingga memudahkan kita untuk melakukan penyimpanan dan tertuamanya adalah analisis mengingat bahwa splunk menyediakan slot untuk plugins dan sudah banyak penyedia aplikasi plugins nya. Untuk itu, saya tidak akan membahas tentang splunk di sini. Ahlinya di splunk lebih berkompeten dan tentunya menjadi andalan mereka juga.
Di sini saya akan mencoba alternatifnya yang free yakni kombinasi:
Graylog2 yang terdiri dari komponen, Graylog2 Server, MongoDB, Elasticsearch, dan Graylog2 Web Interface.
Kibana, sebagai pengganti dashboard Graylog2 web interface.

Setiap kita menginstall Graylog2-server dari repository, tidak otomatis kita akan menginstall MongoDB dan Elasticsearch, meskipun kedua aplikasi ini adalah prerequisite dari Graylog2-server. Graylog-web-interface sendiri adalah aplikasi terpisah tetapi membutuhkan graylog2-server sebagai prerequisite nya.   Pada dasarnya, graylog2-server dengan Kibana sudah cukup untuk melakukan analisis log.  Namun, karena fungsi graylog2-web-interface bukan sekedar untuk analisis dan reporting, namun juga melakukan konfigurasi, maka graylog2-web-interface juga menjadi harus diinstall. Dan, pada beberapa kasus, elasticsearch seharusnya diinstall secara terpisah (mandiri), bukan sebagai bawaan dari installasi graylog.
Gambar berikut mungkin akan menjelaskan lebih jauh mengenai hubungan Graylog-server, Graylog-web-interface, mongoDB, elasticseach, dan Kibana.

Interaksi MongoDB, Graylog2-server, elasticsearch, dan Graylog2-web-interface.

Installasi Graylog2 di Centos 7.

Mungkin ini untuk pertamakali saya menggunakan selain Ubuntu. Centos dan dalam hal ini adalah Centos 7 memang telah mencuri perhatian saya untuk menggunakannya sebgai server. Graylog server ini adalah server kedua yang saya install dengan menggunakan Centos 7 sebagai OS nya.

Install Elasticsearch
Untuk langkah pertama, kita install Elasticsearch dengan menambahkan informasi yum repository.
Perintah-perintah berikut dijalankan sebagai root.  Untuk menambahkan yum repo elasticsearch,  kita install public signing key untuk elasticsearh terlebih dahulu.


root@kumputersaya:~#rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch

Kemudian buat buat file /etc/yum.repost.d/elasticsearch.repo dan isikan konten berikut ke dalamnya.


[elasticsearch-1.7]
name=Elasticsearch repository for 1.7.x packages
baseurl=http://packages.elastic.co/elasticsearch/1.7/centos
gpgcheck=1
gpgkey=http://packages.elastic.co/GPG-KEY-elasticsearch
enabled=1

Update yum dengan menjalankan perintah 'yum update' dilanjutkan dengan install elasticseacrh melalui perintah berikut, "yum install elasticsearch". Elasticsearch bisa dienablekan dengan menjalankan,


root@elasticsearch:~#systemctl enable elasticsearh.service


Elasticearch siap menjalankan tugas.

Install MongoDB
Setelah elasticsearch berhasil kita install, langkah selanjutnya adalah menginstall mongoDB yang aka berfungsi sebagai tempat untuk menyimpan metadata dari Graylog.

Seperti pada installasi elasticsearch, langkah pertama adalah mempersiapkan repo untuk mongoDB. Pertama kita buatkan file /etc/yum.repos.d/mongodb.repo yang dilanjutkan dengan 'yum update'

Setelah persiapan selesai, kita jalankan proses installasi mongodb dengan menjalankan perintah berikut:


saya@kumputersaya:~#sudo yum install mongo-10gen-2.2.3 mongo-10gen-server-2.2.3


Sedangkan untuk menjalankan mongodb silakan jalankan perintah berikut


saya@kumputersaya:~#sudo systemctl enable mongos.service
saya@kumputersaya:~#sudo service start mongod


Ok, MongoDB sudah efektif.

Install Graylog
Selanjutnya kita install Graylog2.  Sama seperti yang lain, pertama kita persiapkan repo untuk installasi Graylog. Tapi berbeda dengan yang lain, persiapan reponya cukup dilakukan dengan langkah berikut:

root@kumputersaya:~#rpm -Uhv https://packages.graylog2.org/repo/packages/graylog-1.1-repository-el7_latest.rpm

Selanjutnya, jalankan 'yum update' untuk mengupdate repo yum.  Kemudian jalankan perintah berikut untuk menginstall graylog.


root@kumputersaya:~# yum install graylog-server graylog-web


Untuk mengaktifkan service, kita bisa jalankan melalui systemctl


root@kumputersaya:~#systemctl enable graylog-server.service
root@kumputersaya:~#systemctl enable graylog-web.service

Yap.. graylog sudah terinstall.

Penyesuaian Konfigurasi

Penyesuaian konfigurasi perlu dilakukan agar aplikasi yang telah terinstall bisa saling berinteraksi. File konfigurasi terinstall pada directoty :


  1. MongoDB /etc/monod.conf
  2. Elasticsearch /etc/elasticsearch/elasticsearch.yml
  3. Graylog-server /etc/graylog/server/server.conf
  4. Graylog-web /etc/graylog/web/graylog-web.conf

Hal hal yang perlu diperhatikan:

Pada MongoDB:

  • Parameter konfigurasi dbpath pada mongoDB harus diarahkan ke filesystem dengan volume terbesar.


Pada Elasticsearch:

  • Parameter konfigurasi cluster.name pada elasticsearch harus  sama dengan parameter konfigurasi  elasticsearch_cluster_name pada /etc/graylog/server.conf 
  • Parameter konfigurasi node.name pada elasticsearch harus sama dengan parameter konfigurasi elasticsearch_node_name pada /etc/graylog/server.conf

Pada Graylog-server

  • Parameter password_secret harus diisi dengan string output hasil aplikasi pwgen dengan perintah 'pwgen -N 1 -s 96'
  • Parameter root_password_sha2 harus diisi dengan hasil dari perintah 'echo -n passworanda | shasum -a 256'
  • Parameter elasticsearh_discovery_zen_ping_multicast_enabled diisi dengan false.
  • Parameter rest_transport_uri harus diperhatikan dan harus sama dengan yang diisikan ke graylog.server.uris pada graylog-web-interfaces.


Pada Graylog-Web-Interface
Parameter application.secret harus diisi dengan string output hasil aplikasi pwgen dengan perintah 'pwgen -N 1 -s 96'

Setelah server direstart, kita bisa buka web-interface dari graylog.  Bila tampilan seperti di bawah ini, maka berarti installasi sudah bisa dianggap berhasil.


(Bersambung)

Install Suricata IDS Pada Ubuntu 14.04

Wihartoyo     Friday, August 21, 2015    
Binatang Suricata
Udah lama gak bahas peralatan pengamanan informasi ternyata kita.  Dan, udah lama kita gak nengok Suricata, dan udahlama pula kita tidak tahu bahwa Suricata sekarang sudah semakin lucu.  Yang paling menggemaskan, Suricata, ternyata, sekarang sudah support json untuk menyimpan event log nya. Menggemaskan, kan?

Oke, kalo setuju bahwa Suricata memang menggemaskan, maka mari kita coba install Suricata.
Yang pertama kita install dulu pre-requisite nya.
saya@kumputersaya:~#sudo apt-get install libpcap-dev libpcap0.8 libpcap0.8-dev coccinelle libmagic-dev \
>libjansson4 libjansson-dev python-simplejson libdumbnet-dev libnfnetlink-dev libnfnetlink0 \
>ibnetfilter-queue-dev libgnetfilter-log-dev libprelude-dev liblua5.2-dev libua5.1-0 liblua5.1-0-dev
Kemudian kita ambil source suricata 2.1 beta 4 (terakhir per 21 Agustus 2015).
saya@kumputersaya:~#mkdir scata
saya@kumputersaya:~#cd scata
saya@kumputersaya:scata#wget http://www.openinfosecfoundation.org/download/suricata-2.1beta4.tar.gz
..
--2015-08-21 11:00:00--  (try: 2)  http://www.openinfosecfoundation.org/download/suricata-2.1beta4.tar.gz
Connecting to www.openinfosecfoundation.org (www.openinfosecfoundation.org)|96.43.130.5|:80... connected.
HTTP request sent, awaiting response... 206 Partial Content
Length: 3232615 (3.1M), 619367 (605K) remaining [application/x-gzip]
Saving to: ‘suricata-2.1beta4.tar.gz’
100%[++++++++++++++++++++++++++++++=============>] 3,232,615    125KB/s   in 5.5s

Kemudian kita extract
saya@kumputer:scata#tar -xzvf  suricata-2.1beta4.tar.gz
..
..
..
..
suricata-2.1beta4/contrib/file_processor/Processor/Malwr.pm
suricata-2.1beta4/contrib/file_processor/Processor/ThreatExpert.pm
suricata-2.1beta4/contrib/file_processor/Processor/Makefile.in
suricata-2.1beta4/contrib/file_processor/Processor/Anubis.pm
suricata-2.1beta4/contrib/file_processor/Processor/ShadowServer.pm
suricata-2.1beta4/contrib/file_processor/Processor/Makefile.am
suricata-2.1beta4/contrib/file_processor/Processor/VirusTotal.pm
suricata-2.1beta4/contrib/file_processor/LICENSE
suricata-2.1beta4/contrib/file_processor/Makefile.am
suricata-2.1beta4/contrib/Makefile.in
suricata-2.1beta4/contrib/Makefile.am
suricata-2.1beta4/contrib/suri-graphite

Setalah kita ekstrak, kemudian kita lanjut dengan menjalankan ./configure
saya@kumputersaya:scata#cd suricata-2.1beta4
saya@kumputersaya:scata/suricata-2.1beta4#./configure --prefix=/opt/suricatab1 --sysconfdir=/opt/suricatab1/etc --localstatedir=/opt/suricatab1/var --enable-nfqueue --enable-nflog --enable-lua --enable-luajit --enable-unix-socket --enable-prelude

Sorry gak nampilin sampel response nya.  Bila konfigurasi telah selesai, langkah bisa dilanjutkan dengan 'make all' dan 'make install-full'
saya@kumputersaya:scata/suricata-2.1beta4#sudo make all
[ :::::
... Tampilan proses/progress dari proses make
::::]

Bila proses make juga tidak mengalami kegagalan maka silakan dilanjtu dengan 'make instll-full'

saya@kumputersaya:scata/suricata-2.1beta4#sudo make install-full
[ :::::
... Tampilan proses/progress dari proses make
::::]

Sebelum menjalankan suricata, maka kita edit terlebih dahulu file konfigurasinya yang terletak di '/opt/suricatab1/etc/suricata' dengan namafile suricata.yaml

Untuk memanfaatkan fitur json maka kita langsung point ke 'eve-log'

  - eve-log:
      enabled: yes
      filetype: syslog #regular|syslog|unix_dgram|unix_stream
      filename: eve.json
      # the following are valid when type: syslog above
      identity: "suricata"
      facility: local5
      level: Info ## possible levels: Emergency, Alert, Critical,
                   ## Error, Warning, Notice, Info, Debug
      types:
        - alert:
            payload: yes           # enable dumping payload in Base64
            payload-printable: yes # enable dumping payload in printable (lossy) format
            packet: yes            # enable dumping of packet (without stream segments)
            http: yes              # enable dumping of http fields
            # HTTP X-Forwarded-For support by adding an extra field or overwriting
            # the source or destination IP address (depending on flow direction)
            # with the one reported in the X-Forwarded-For HTTP header. This is
            # helpful when reviewing alerts for traffic that is being reverse
            # or forward proxied.
            xff:
              enabled: no
              # Two operation modes are available, "extra-data" and "overwrite".
              mode: extra-data
              # Two proxy deployments are supported, "reverse" and "forward". In
              # a "reverse" deployment the IP address used is the last one, in a
              # "forward" deployment the first IP address is used.
              deployment: reverse
              # Header name where the actual IP address will be reported, if more
              # than one IP address is present, the last IP address will be the
              # one taken into consideration.
              header: X-Forwarded-For
        - http:
            extended: yes     # enable this for extended logging information
            # custom allows additional http fields to be included in eve-log
            # the example below adds three additional fields when uncommented
            #custom: [Accept-Encoding, Accept-Language, Authorization]
        - dns
        - tls:
            extended: yes     # enable this for extended logging information
        - files:
            force-magic: no   # force logging magic on all logged files
            force-md5: no     # force logging of md5 checksums
        #- drop:
       #    alerts: no       # log alerts that caused drops
        - smtp
        - ssh
        # bi-directional flows
        #- flow
        # uni-directional flows
        #- newflow

Sebaiknya output yang lain didisabe ("enable: no") untuk menghemat space pada hardisk. Dan, perhatikan pula bagian yang di-bold. Kita focus ke situ. Kita meng-enable-kan output eve-log dengan target syslog. Syslog dipilih agar event log yang dihasilkan bisa kita redirect ke log server pada mesin lain. Perhatikan juga bahwa kita meng-enable-kan payload baik yang base64 maupun yang printable. Ini penting untuk melakukan analisis.

Setelah semua siap, jalankan dengan perintah ini:

LD_LIBRARY_PATH=/opt/suricatab1/lib /opt/suricatab1/bin/suricata -c /opt/suricatab1/etc/suricata//suricata.yaml -i eth1 -D

-i eth1 bila sniffing mau dilakukan melalui eth1.  Pada kasus kami eth1 berasal dari mikrotik yang dimirror dengan kabel trunk dari seluruh vlan yang ada.


Monday, August 3, 2015

Perhatikan Apa yang Kau Install, Windows 10 atau Ransomware?????

Wihartoyo     Monday, August 03, 2015    
Yang satu ini memang benar-benar bedebah, kata beberapa lembaga pengamanan. 

Tidak semua orang mempunyai kesabaran yang cukup untuk menunggu dalam antrian untuk mendapatkan update Windows 10. Hal ini dimanfaatkan betul oleh pemasok ransomware untuk memperdaya orang-orang yang sedang mengantri update Windows 10.

Team pengamanan dari Cisco telah memberikan peringatan tentanga adanya penyebaran spam yang akan menyebarkan Critoni a.k.a. CTB-Locker a.k.a. Cryptolocker, sebuah ransomware yang akan melakukan enkripsi terhadap semua dokumen kita dan kemudian meminta sejumlah imbalan untuk melakukan dekripsi.
Penyebaran spam ini dilakukan dengan pengiriman spam yang mengaku dari Microsoft dan memberitahukan kepada target bahwa mereka telah diperkenankan untuk melakukan update Windows 10. E-mail ini benar-benar menyerupai dengan pesan yang berasal dari Windows 10 dengan alamat palsu pengirim update@microsoft.com namun dengan beberapa kesalahan pada text content. Dan bila di-trace-back akan ketahuan bahwa alamat IP pengirim berasal dari Thailand. Namun jangan terkecoh bila ini e-mail ngakunya sudah bebas virus dan dibersihkan dengan Mailscanner. 


Attachment yang berukuran 734KB yang mengklaim dirinya sebagai Windows 10 installer, sejatinya adalah ransomware yang siap untuk mengencrypt seluruh dokumen, file-file multimedia, dan apapun yang secara umum adalah file kerja ketika seseorang korban melakukan double-click terhadapnya. Dan penggunaan algoritma enkripsi asimetrik menjadi tantangan tersendiri bagi para peneliti pengamanan dan kemalangan tersendiri juga bagi para korban. Dan, sepertinya virus ini pandai memilih jenis dokumen yang dianggap penting oleh yang empunya dokumen.

Ransomware umumnya akan meminta korban untuk merespon dalam 96 jam dan berkomunikasi melalui jaringan TOR (The Onion Router). 

Mirip dengan Cryptolocker, CTB-Locker akan meyakinkan kepada para korban bahwa bila mereka bilang mereka bisa melakukan dan mengarahkan korban agar mereka memutuskan untuk membayar melalui bitcoin untuk mendapatkan kembali dokumen-dokumen yang telah dienkrip.

Sejauh ini Cisco telah melakukan suatu tindakan pencegahan dan beberapa vendor antivirus juga telah melengkapi antivirusnya dengan signature dari spam ini untuk melakukan pemblokiran. Sementara ini penyebaran virus ini memang masih relatif kecil, namun bila beberapa korban terperangkap untuk memberikan sejumlah pembayaran, maka tidak menutup kemungkinan bahwa para pengembang virus ini akan memperbesar skalanya.


Sumber: http://www.theregister.co.uk/2015/07/31/windows_10_download_ransomware/

Recommended