GNU/Linux >> Belajar Linux >  >> Linux

WAZUH Mendeteksi dan menghapus malware – Integrasi Total Virus

VirusTotal adalah portal online, milik Google, yang menggunakan banyak mesin antivirus untuk memeriksa virus dan malware. Ini menyediakan layanan API yang digunakan Wazuh untuk memindai hash file, nama domain, alamat IP, atau URL. Untuk integrasi ini kami menggunakan wazuh-integratord komponen yang berjalan pada pengelola Wazuh. Periksa dokumentasi VirusTotal kami untuk informasi lebih lanjut tentang integrasi ini.

Dalam kasus penggunaan ini, kami memantau direktori secara real time dan melakukan pemindaian VirusTotal ke setiap file baru atau yang baru saja dimodifikasi. Jika file diklasifikasikan sebagai berbahaya, respons aktif dipicu dan file akan dihapus.

Mengonfigurasi integrasi VirusTotal

Masukkan kunci API Anda dan aktifkan integrasi VirusTotal pada pengelola Wazuh dengan menambahkan konfigurasi berikut di /var/ossec/etc/ossec.conf .

<ossec_config>
  <integration>
    <name>virustotal</name>
    <api_key>${your_virustotal_api_key}</api_key>
    <rule_id>100200,100201</rule_id>
    <alert_format>json</alert_format>
  </integration>
</ossec_config

Dalam contoh ini, kami membatasi pemindaian pada file baru atau yang baru saja dimodifikasi di /root direktori karena keterbatasan dalam kueri per menit saat menggunakan akun aplikasi gratis. Untuk melakukannya, kami membuat aturan khusus untuk memantau /root direktori dan menggunakannya untuk memicu integrasi VirusTotal.

Tambahkan aturan khusus berikut ke /var/ossec/etc/rules/local_rules.xml .

<group name="syscheck,pci_dss_11.5,nist_800_53_SI.7,">
    <!-- Rules for Linux systems -->
    <rule id="100200" level="7">
        <if_sid>550</if_sid>
        <field name="file">/root</field>
        <description>File modified in /root directory.</description>
    </rule>
        <rule id="100201" level="7">
        <if_sid>554</if_sid>
        <field name="file">/root</field>
        <description>File added to /root directory.</description>
    </rule>
</group>

Mengonfigurasi Respons Aktif untuk menghapus file berbahaya

Setelah VirusTotal mengidentifikasi file sebagai ancaman, Wazuh akan memicu respons aktif untuk menghapus file dari sistem

Mengonfigurasi pengelola Wazuh

Tambahkan blok berikut ke manajer Wazuh /var/ossec/etc/ossec.conf berkas.

<ossec_config>

    <command>
        <name>remove-threat</name>
        <executable>remove-threat.sh</executable>
        <timeout_allowed>no</timeout_allowed>
    </command>

    <active-response>
        <disabled>no</disabled>
        <command>remove-threat</command>
        <location>local</location>
        <rules_id>87105</rules_id>
    </active-response>

</ossec_config>

Respons aktif dipicu oleh aturan 87105 yang di-trip saat VirusTotal mengidentifikasi file sebagai berbahaya.

Tambahkan aturan khusus berikut di /var/ossec/etc/rules/local_rules.xml .

<group name="virustotal,">
  <rule id="100092" level="12">
    <if_sid>657</if_sid>
    <match>Successfully removed threat</match>
    <description>$(parameters.program) removed threat located at $(parameters.alert.data.virustotal.source.file)</description>
  </rule>

  <rule id="100093" level="12">
    <if_sid>657</if_sid>
    <match>Error removing threat</match>
    <description>Error removing threat located at $(parameters.alert.data.virustotal.source.file)</description>
  </rule>
</group>

Aturan ini dipicu saat file berbahaya dihapus oleh respons aktif atau jika terjadi kesalahan saat menghapus file.

Mulai ulang pengelola Wazuh untuk menerapkan perubahan konfigurasi.

systemctl restart wazuh-manager

Mengonfigurasi agen Wazuh untuk VirusTotal

Ubah pengaturan pemantauan integritas file di /var/ossec/etc/ossec.conf untuk memantau /root dalam waktu nyata.

<syscheck>
  <directories whodata="yes">/root</directories>
</syscheck>

Tambahkan skrip respons aktif berikut di /var/ossec/active-response/bin/remove-threat.sh .

#!/bin/bash

LOCAL=`dirname $0`;
cd $LOCAL
cd ../

PWD=`pwd`

read INPUT_JSON
FILENAME=$(echo $INPUT_JSON | jq -r .parameters.alert.data.virustotal.source.file)
COMMAND=$(echo $INPUT_JSON | jq -r .command)
LOG_FILE="${PWD}/../logs/active-responses.log"

#------------------------ Analyze command -------------------------#
if [ ${COMMAND} = "add" ]
then
 # Send control message to execd
 printf '{"version":1,"origin":{"name":"remove-threat","module":"active-response"},"command":"check_keys", "parameters":{"keys":[]}}\n'

 read RESPONSE
 COMMAND2=$(echo $RESPONSE | jq -r .command)
 if [ ${COMMAND2} != "continue" ]
 then
   echo "`date '+%Y/%m/%d %H:%M:%S'` $0: $INPUT_JSON Remove threat active response aborted" >> ${LOG_FILE}
   exit 0;
 fi
fi

# Removing file
rm -f $FILENAME
if [ $? -eq 0 ]; then
 echo "`date '+%Y/%m/%d %H:%M:%S'` $0: $INPUT_JSON Successfully removed threat" >> ${LOG_FILE}
else
 echo "`date '+%Y/%m/%d %H:%M:%S'` $0: $INPUT_JSON Error removing threat" >> ${LOG_FILE}
fi

exit 0;

Skrip ini menerima informasi file berbahaya dari peringatan yang dibuat oleh VirusTotal (87105), menghapus file, dan menulis log respons aktif.

Ubah /var/ossec/active-response/bin/remove-threat.sh pemilik dan izin.

chmod 750 /var/ossec/active-response/bin/remove-threat.sh
chown root:ossec /var/ossec/active-response/bin/remove-threat.sh

Mulai ulang agen Wazuh untuk menerapkan perubahan konfigurasi.

systemctl restart wazuh-agent

Hasilkan peringatan

Ketika file dimodifikasi di bawah direktori yang dipantau /root , ini memicu pemindaian VirusTotal dan menghasilkan peringatan jika terdeteksi sebagai berbahaya. Respons aktif dikonfigurasi untuk menghapus ancaman secara otomatis.

Untuk menguji apakah semuanya berfungsi dengan benar, buat peringatan menggunakan tes EICAR. Hasil yang diharapkan adalah file tersebut terdeteksi sebagai berbahaya dan dihapus secara otomatis oleh respons aktif

cd /root
curl -LO http://www.eicar.org/download/eicar.com


Linux
  1. Cara Memindai Kotak Linux Anda dari Trojan, Malware, dan Virus menggunakan ClamAV

  2. Superblock, Inode, Dentry, dan File?

  3. Proses Substitusi Dan Pipa?

  1. Izin File Dan Menyimpan?

  2. Redirect Dan Output Pipa?

  3. Symlink Cepat Dan Lambat?

  1. Menginstal dan mengonfigurasi vsFTPD

  2. Sistem File yang Didukung dan Direkomendasikan di Linux

  3. Utas dan deskriptor file