OprekanMarch 12, 2011 4:56 pm

SSH brute force merupakan salah cara yang umum dipakai oleh orang-orang jahil agar dapat masuk ke dalam server kita. Orang - orang jahil tersebut akan berusaha masuk ke dalam server kita dengan cara menebak-nebak user dan password yang ada di dalam server. Bisa dibilang SSH brute force ini cara yang untung-untungan. Berhasil masuk ya alhamdulillah, ga berhasil masuk ya dicoba terus nge-brute force :P

Berikut tips yang saya ambil dari halaman http://home.earthlink.net/~valiantsoul/pf.html akan menjelaskan bagaimana caranya mengeblok IP address tersangka SSH brutefoce. Tips tersebut sudah saya coba dan berhasil. Server tempat saya nyoba menggunakan OS FreeBSD 8.0-RELEASE  dan menggunakan firewall PF

Enable firewall PF di FreeBSD

Secara default, firewall PF di disable. Untuk menyalakan firewall yang harus dilakukan adalah me-load module kernel pf.ko dengan cara mengetikkan perintah (sebagai user root) :

 # kldload pf.ko

Agar PF selalu nyala setiap kali booting, tambahkan baris berikut di /etc/rc.conf

pf_enable="YES"

pf_rules="/etc/pf.conf"

 

Konfigurasi file /etc/pf.conf

Tambahkan baris berikut di /etc/pf.conf

table <bruteforce> persist file "/var/db/blacklist"
block quick from <bruteforce>
pass in quick on em0 proto tcp from any to any port 22 keep state

em0 ini merupakan network interface server saya. jadi kalo misalnya network interface anda bukan em0 ya disesuaikan aja konfigurasi pf.conf nya

 

Buat tabel bruteforce

Buat file bruteforce di direktori /var/db/ dan set permissionnya jadi 644

#touch /var/db/bruteforce

#chmod 644 /var/db/bruteforce

 

Skrip untuk nge-blok IP address 'nakal'

Buatlah file, misalnya dengan nama blok.pl di direktori yang diinginkan, misalnya di /etc/

Masukkan skrip berikut ke dalam file /etc/blok.pl

#!/usr/bin/perl

use strict;

my @assholes = ();

open (IN, "/var/log/auth.log");
while (<IN>) {
        if ($_ =~ /Invalid user.*from ([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/) {
                push(@assholes, $1);
        }
        if ($_ =~ /Did not receive identification string from ([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/) {
                push(@assholes, $1);
        }
}
close (IN);

@assholes = sort {lc($a) cmp lc($b)} @assholes;

my @allowedIPs = ();
open (IN, "/var/db/allowed-ips");
while (<IN>) {
        if ($_ =~ /[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+/) {
                push(@allowedIPs, $_);
        }
}
close (IN);

chop(@allowedIPs);

my $tmp = "";
foreach my $asshole (@assholes) {
        if ($asshole eq $tmp) {
                $asshole = "";
        } else {
                if ($asshole =~ /127\.0\.0\.1/) {
                        $asshole = "";
                }
                if ($asshole =~ /192\.168\.[0-9]+\.[0-9]+/) {
                        $asshole = "";
                }
                foreach my $allowedIP (@allowedIPs) {
                        if ($asshole =~ /$allowedIP/) {
                                $asshole = "";
                        }
                }
                $tmp = $asshole;
        }
}

@assholes = sort {lc($b) cmp lc($a)} @assholes;

my $popCount = 0;
foreach my $asshole (reverse @assholes) {
        if ($asshole eq "") {
                $popCount++;
        }
}

for (my $i = 0; $i < $popCount; $i++) {
        pop (@assholes);
}

my $list = "";
foreach my $asshole (@assholes) {
        $list = $list . $asshole . " ";
}

exec "/sbin/pfctl -t bruteforce -T add $list";

 

Edit file /etc/syslog.conf

Ganti baris :

auth.info;authpriv.info                                /var/log/auth.log

dengan :

auth.info;authpriv.info                         | exec /usr/bin/perl   /etc/blok.pl

Setelah itu restart syslogd dengan cara :

# /etc/rc.d/syslogd  restart

 

 

Selesai dehhhh....:D

 

untuk melihat IP mana saja yang sudah di blok, jalankan perintah berikut :

# pfctl -t bruteforce -T show

 

Saat saya menulis ini, output dari perintah diatas adalah sebagai berikut :

No ALTQ support in kernel
ALTQ related functions disabled
   118.129.170.103
   221.7.196.68

 

 Artinya sudah ada 2 IP address yang diblok untuk akses ssh ke server saya :D

 

 

OprekanMarch 5, 2011 4:40 pm

Tulisan berikut saya ambil dari artikel yang saya tulis di web Amateur Radio Club (ARC-ITB)

Artikel berikut ini akan menjelaskan tentang metode untuk menjalankan Juniper JunOS dengan menggunakan VMWare. JunOS yang akan dijalankan adalah JunOS 10.2R3.10 untuk router Juniper M-series, MX-series dan T-series.

INSTALASI

ALAT/SOFTWARE Yang Dibutuhkan :

  1. FreeBSD. FreeBSD ini berfungsi untuk menjalankan JunOS. FreeBSD yang digunakan dalam artikel ini adalah FreeBSD 4.11 mini-inst ISO yang bisa di download di ( ftp://ftp-archive.freebsd.org/pub/FreeBSD-Archive/old-releases/i386/ISO-IMAGES/4.11/4.11-RELEASE-i386-miniinst.iso ). FreeBSD versi 6 atau 7 juga bisa digunakan.
  2. Package dari JunOS itu sendiri. Silahkan cari sendiri, atau download dari situs resminya juniper kalo punya akunnya :P
  3. VMWare Workstation. Jangan pake VMWare ESXi soalnya ga bakalan bisa. Di artikel ini menggunakan VMWare Workstation versi  7.0.1 build-227600.

LANGKAH PERTAMA

Install VMWare Workstationnya. Gampang lah nginstall software ini. Tinggal next..next…beres. Jadi instalasi VMWare ini ga perlu dijelaskan yaa…:P

LANGKAH KEDUA

1.       Buka VMWare Workstation

2.       Buat virtual machine baru dengan cara klik “ New Virtual Machine”. Setelah muncul jendela “ New Virtual Machine Wizard” kemudian klik “Next”. Pilih opsi “installer disc image file (iso)” kemudian tekan tombol “next” terus sampai “finish”

3.       Setelah selesai, nyalakan virtual machine tadi dan mulai langkah – langkah untuk instalasi FreeBSD.

LANGKAH KETIGA ( INSTALASI FREEBSD )

Setelah virtual machine tadi dinyalakan, maka virtual machine tadi akan booting ke FreeBSD melalui disc image tadi. Setelah booting selesai, maka yang akan keluar “ Kernel Configuration Menu”. Pilih opsi yang pertama yaitu “Skip kernel configuration and continue with installation”.

Setelah itu, akan muncul opsi untuk instalasi FreeBSD, pilih “Standard” :

Setelah muncul FDISK Partition Editor, tekan A untuk mengalokasikan seluruh harddisk untuk FreeBSD kemudian tekan Q untuk keluar dari FDISK Partition Editor kemudian pilih “ install a standard Editor”.

Pada “ FreeBSD Disklabel Editor”, tekan C untuk membuat partisi berikut :

ad0s1a        /               1024M

ad0s1b         swap            1024M

ad0s1e         /config         12M

ad0s1f         /var            sisanya

Pilih “User” untuk tipe distribusinya dan jawab “ no” untuk pertanyaan “Would you like to install the FreeBSD ports collection?”. Keluar dari menu dan install dari CD/DVD.

Tunggu sampai proses instalasi selesai. Selama proses instalasi, system akan menanyakan beberapa konfigurasi. Tinggal jawab “no” aja. Setelah proses instalasi hamper selesai, system akan meminta untuk mengisi password “root”, isi password tersebut dengan password yang dikehendaki.  Setelah semua selesai, restart virtual machine ini.

LANGKAH KEEMPAT ( INSTALASI JunOS )

Download file JunOS (jinstall-10.2R3.10-export-signed.tgz)  yang akan diinstall ke dalam FreeBSD yang baru diinstal tadi.  Masukkan file jinstall-10.2R3.10-export-signed.tgz ke dalam direktori /var/tmp/. Lakukan langkah – langkah berikut :

cd /var/tmp
mkdir jinst-signed
cd jinst-signed
tar zxvf ../ jinstall-10.2R3.10-export-signed.tgz
mkdir jinst
tar zcfv /var/tmp/jinstall-8.5R1.14-domestic-olive.tgz *
tar zxvf ../ jinstall-10.2R3.10-export-signed.tgz

Edit file +INSTALL dan +REQUIRE. Temukan baris Error "hw.re.name sysctl not supported." Kemudian ganti kata Error dengan error_more ( hati-hati soalnya case sensitive). Setelah diganti kemudian simpan dan keluar. Teruskan dengan langkah berikut :

mkdir pkgtools
cd pkgtools
tar zxvf ../pkgtools.tgz
cd bin
cp /usr/bin/true ./checkpic
cd ..
tar zcvf ../pkgtools.tgz *
cd ..
rm -rf pkgtools
tar zcfv /var/tmp/jinstall-10.2R3.10-olive.tgz *

pkg_add –f /var/tmp/jinstall-10.2R3.10-olive.tgz

Pada saat proses instalasi berjalan, maka akan muncul seperti gambar dibawah ini. Setelah proses instalasi selesai, matikan virtual machine ini.

Setelah virtual machine ini mati, edit file .vmx dari virtual machine ini. Misalnya nama virtual machine tadi adalah FreeBSD, buka file FreeBSD.vmx. Ganti nilai “TRUE” pada scsi0.present menjadi “FALSE”. Simpan file FreeBSD.vmx kemudian start kembali virtual machine tadi. Selama proses booting, layar di VMWare hamper tidak menampilkan apa – apa karena semua output booting hanya bisa dilihat melalui terminal console. Tunggu beberapa saat ( 3 – 5 menit ) sampai proses booting selesai. Silahkan login dengan menggunakan username “root”

Untuk masuk ke JunOS command line interface, ketik “cli” (tanpa tanda petik).


	

SEKIAN..

Ga JelasMay 15, 2008 5:15 am

Akhirnya, setelah sekian lama saya punya blog juga emoticon. Dulu sih pernah mau bikin blog, tapi karena suatu masalah klasik yaitu males, ya blog-nya ga jadi- jadi emoticon. Jadi ini adalah postingan pertama saya di blog gue yang pertama pula. Semoga postingan saya akan terus bertambah terussss.

HIDUP BLOGGER INDONESIAAAAAA!!!!!!!!!!