23 Oktober 2010

Pengenalan Jaringan & Tool Jaringan Linux

Posted by Rendra Asmoro S. W. | 23 Oktober 2010 | Category: |


Yup kembali lagi bersama saya kali ini daku membuat sedikit artikel tentang jaringan dan beberapa tool2 umum yg biasa kita pakai.

Maaf kali ini artikelnya agak ngacak dan gak terstruktur.

IP ADDRESS Versi 4
Tiap-tiap komputer yang terhubung ke jaringan internet akan memiliki ip address. Nah ip address ini adalah suatu sistem pengalamatan tiap-tiap komputer di jaringan dengan suatu alamat yang unik (RFC 1166).Nah, ip address versi 4 ini terdiri dari 4 byte. misal: 192.168.0.1.
Nah untuk melihat ip address Anda di linux ketikan ini:

ifconfig

misal kita ingin melihat ip address pada interface eth0 ketikkan:

ifconfig -v -a eth0

Berikut ini contoh tampilan:

ifconfig -v -a eth0
eth0 Link encap:Ethernet HWaddr 00:1D:72:20:E4:D5
inet addr:118.136.188.151 Bcast:255.255.255.255
Mask:255.255.255.0
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:77440 errors:0 dropped:0 overruns:0 frame:0
TX packets:78551 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:67624055 (64.4 MiB) TX bytes:9172063 (8.7 MiB)
Interrupt:16

ok untuk melihat secara kesulurahan tiap interface di komputer:

ifconfig -a

Jadi ip addressnya adalah 118.136.188.151 (privat ip)

Nah ip address ini dibagi ke dalam kelas2 : kelas A,B dan C

- Kelas A
IP address kelas A terdiri dari 8 bit untuk network ID dan sisanya 24 bit digunakan untuk host ID, sehingga IP address kelas A digunakan untuk jaringan dengan jumlah host sangat besar. Pada bit pertama berikan angka 0 sampai dengan 127.

-Kelas B
IP address kelas B terdiri dari 16 bit untuk network ID dan sisanya 16 bit digunakan untuk host ID, sehingga IP address kelas B digunakan untuk jaringan dengan jumlah host tidak terlalu besar. Pada 2 bit pertama berikan angka 10 sehingga bit awal IP tersebut mulai dari 128 ? 191.

-Kelas C
IP address kelas C terdiri dari 24 bit untuk network ID dan sisanya 8 bit digunakan untuk host ID, sehingga IP address kelas C digunakan untuk jaringan untuk ukuran kecil. Kelas C biasanya digunakan untuk jaringan Local Area Network atau LAN. Pada 3 bit pertama berikan angka 110 sehingga bit awal IP tersebut mulai dari 192 ? 223.

IP Address Versi 6 (ipv6)
IP versi 6 ini muncul karena derasnya penggunaan ip versi 4 sehingga akhirnya para jago 2 internet memutuskan untuk membuat pengalamatan yg lebih efisien sehingga muncul yg namanya ip versi 6 ini.
Berikut ini adalah contoh format alamat IPv6 :
21DA:00D3:0000:2F3B:02AA:00FF:FE28:9C5A atau bisa juga desederhanakan menjadi: 21DA:D3:0:2F3B:2AA:FF:FE28:9C5A

Netmask
Netmask (subnetting) ini merupakan mask yang membagi alamat ip menjadi subnet subnet (menentukan range alamat ip ). Netmask ini terdiri dari 4 byte dengan format mirip ip address versi 4. di mana tiap byte netmask yang dipisahkan titik, mewakili range dari ip address , misal:

jika netmask: 255.255.255.0 maka range ip addressnya ya semua alamat ip yang memiliki 3 byte pertama yg sama dg ip address dari mesin dengan netmask 255.255.255.0 ( 3 byte pertama netmask adalah 255.255.255 ).
Misal komputer dg alamat ip 192.168.1.10 maka rangenya 192.168.1.0-192.168.192.168.1.255

ping
Ping ini singkatan dari packet internet gropher. Ping ini biasa kita gunakan untuk mengecek suatu host apakah alive atau tidak. Misal:

ping 192.168.1.1

Maka akan dikirim paket icmp (internet control messaging protocol) ke 192.168.1.1 , misal ip 192.168.1.1 bersistem operasi linux, jika setting icmp echo requestnya on maka host tersebut akan mereply ke mesin kita.

Oya ping ini bisa juga digunakan untuk DOS dengan mengirimkan paket icmp ukuran besar, misal kita sbg root di linux, coba ketikkan ini:

ping 67.222.131.145 -fs 50000

ARP (Address Resolution Protocol)
ARP ini merupakan salah satu jenis protokol yang berfungsi untuk menemukan MAC Address dari mesin lain di jaringan yang ingin dikontak.
Informasi tentang MAC address akan disimpan dalam keping RAM (Random Access Memory) dan sifatnya temporer dengan umurnya yang hanya dua menit, namun dapat diperbarui. Ruang simpan dalam RAM ini disebut ARP (Address Resolution Protocol) cache. ARP akan selalu memeriksa ARP cache. Jika ARP berhasil menemukan nomor IP tetapi tidak menemukan MAC address pasangannya, maka ARP akan mengirim request ke jaringan.

Prinsip dari ARP adalah tidak boleh ada lebih dari satu nomor IP memakai satu MAC address yang sama. Jadi, kita tidak bisa menggunakan nomor IP yang sedang dipakai oleh komputer lain, dan tidak bisa menggunakan MAC address yang telah dipasangkan dengan IP lain.

Protokol ARP bersifat stateless, ia akan mengirim request MAC address dan mengirimkan pemberitahuan kepada komputer anggota jaringan jika terjadi ketidakberesan dalam pengalamatan, walaupun tidak ada komputer di jaringan yang memintanya. Protokol ARP juga bersifat non-routable, ia hanya bekerja pada satu segmen jaringan lokal.

Beberapa perintah manipulasi arp.
-Melihat cache arp, contoh:

arp -a

misal hasilnya:
fm-ip-118.136.188.1.fast.net.id (118.136.188.1) at
00:1B:8F:E9:6C:01 [ether] on eth0

di mana 00:1B:8F:E9:6C:01 merupakan mac address komputer kita.

contoh format mengeset arp suatu mesin:

arp -s host maccaddr

MACCHANGER (Pengubah Mac Address di Linux)
Macchanger ini merupakan aplikasi yang digunakan untuk merubah mac address mesin kita (linux), aplikasi ini dibuat oleh Alvaro (alvaro@gnu.org).

Untuk melihat list vendor yg ada :

macchanger -l

Selanjutnya untuk mengubah mac address interface eth0:

macchanger eth0 --mac=XX:XX:XX:XX:XX:XX

di mana mac address dalam hexa misal: 00:1D:72:20:E4:D5

cara lain dengan menggunakan ifconfig:

ifconfig eth0 down hw ether XX:XX:XX:XX:XX:XX

ifconfig eth0 up

Untuk melihat mac address Anda saat ini untuk interface eth0-coba ketikkan

macchanger -s eth0

Gateway
Gateway adalah sebuah perangkat yang digunakan untuk menghubungkan satu jaringan komputer dengan satu atau lebih jaringan komputer yang menggunakan protokol komunikasi yang berbeda sehingga informasi dari satu jaringan computer dapat diberikan kepada jaringan komputer lain yang protokolnya berbeda.

Ok berikut ini contoh kasus setting sebuah komputer dengan os linux sebagai gateway.
Sebelumnya silahkan su dulu sebagai root!!!
ketikkan perintah ini:

ifconfig eth0 down
ifconfig eth0 192.168.1.5 netmask 255.255.255.0 up
ifconfig eth0
route add default gw 192.168.1.1
echo nameserver 192.168.1.5 >> /etc/resolv.conf
echo nameserver 192.168.1.1 >> /etc/resolv.conf

setelah itu kita lakukan sedikit rule iptables di gateway kita, misal ketikkan perintah:

iptables -A INPUT -p TCP --dport 22 -j ACCEPT
iptables -A INPUT -p TCP --dport 80 -j ACCEPT
iptables -A INPUT -p TCP --dport 139 -j ACCEPT
iptables -A INPUT -p TCP --dport 21 -j ACCEPT

ya setelah itu rule utk ip forward via interface eth0:

iptables -A FORWARD -i eth0 -p ALL -s 192.168.1.6/24 -d 192.168.1.1 -j ACCEPT

selanjutnya kita lakukan permainan untuk sedikit mempercepat proses:

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT

final step kita set nat (network address translation):

iptables -t nat -A POSTROUTING -s 192.168.1.6/24 -j MASQUERADE

dan sebagai langkah terakhir kita aktifkan ip forward di mesin gateway kita:

echo 1 > /proc/sys/net/ipv4/ip_forward

Nah selanjutnya dari sisi klien misal menggunakan linux juga untuk menggunakan gateway tadi dengan perintah route:

route add default gw alamat_ip_gateway_ketik_di_sini eth0

atau bisa juga dengan perintah ip:

ip route add alamat_ip_gatway/range dev eth0


Tabel Routing dan HOP
Satu Hop merupakan satu jalur lompatan antara suatu mesin dengan mesin lainya di jaringan misalnya : pc -> router = 1 hop di mana routing table di mesin kita yang berguna untuk memberitahu router tentang hop berikutnya.
Untuk melihat routing table ketikkan:

route -v

Three Way Handsake
Ni dia mekanisme komunikasi tcp antar host. berikut ini untuk lebih jelasnya:

1. Mesin klien mengirimkan paket tcp syn ke server
2. Lalu setelah si server menerima paket syn tersebut maka host b mengirimkan syn ack ke klien
3. Nah !!setelah si klien menerima syn ack dari server maka si klien kirim ack lagi ke server
4. Nah setelah itu si server akan menerima ack dari klien lalu koneksi tercipta (established)

Nah !!! pernah dengar syn attack untuk dos atau ddos? nah berikut ini adalah contoh cara melakukan syn attack, coba diketik:

hping2 -S 67.222.131.145 -p 80 -d 60000

Protokol gopher
Gopher merupakan suatu protokol mirip http yang dulu sebelum ada http sering digunakan di mana gopher ini default portnya adalah 70 (bisa juga diredirect ke port lain).
Untuk mengakses suatu server gopher Anda bisa menggunakan web browser Anda misal ketikkan alamat ini:

gopher://quux.org/

atau dengan telnet:

telnet quux.org 70
Trying 64.85.160.193...
Connected to quux.org.
Escape character is '^]'.

iWelcome to gopher at quux.org! fake (NULL) 0
i fake (NULL) 0
iThis server has a lot of information of historic interest, fake (NULL) 0
ifunny, or just plain entertaining -- all presented in Gopher. fake (NULL) 0
iThere are many mirrors here of rare or valuable files with the fake (NULL) 0
iaim to preserve them in case their host disappears. PLEASE READ fake (NULL) 0
i"About This Server" FOR IMPORTANT NOTES AND LEGAL INFORMATION. fake (NULL) 0
i fake (NULL) 0
0About This Server /About This Server.txt gopher.quux.org 70 +
1Archives /Archives gopher.quux.org 70 +
1Books /Books gopher.quux.org 70 +
1Communication /Communication gopher.quux.org 70 +
iThis directory contains the entire text of the book fake (NULL) 0
i"We the Media: Grassroots Journalism by the People, for the People" fake (NULL) 0
iby Dan Gillmor in various formats. fake (NULL) 0
i fake (NULL) 0
iFeel free to download and enjoy. fake (NULL) 0
1Computers /Computers gopher.quux.org 70 +
1Current Issues and Events (Updated Apr. 23, 2002) /Current gopher.quux.org 70 +
1Development Projects /devel gopher.quux.org 70 +
0Gopher's 10th Anniversary /3.0.0.txt gopher.quux.org 70
1Government, Politics, Law, and Conflict /Government gopher.quux.org 70 +
0How To Help /How To Help.txt gopher.quux.org 70 +
1Humor and Fun /Humor and Fun gopher.quux.org 70 +
1Index to Quux.Org /Archives/index gopher.quux.org 70
1Internet /Internet gopher.quux.org 70 +
1Other Gopher Servers /Software/Gopher/servers gopher.quux.org 70
1People /People gopher.quux.org 70 +
1Reference /Reference gopher.quux.org 70 +
1Software and Downloads /Software gopher.quux.org 70 +
1The Gopher Project /Software/Gopher gopher.quux.org 70
0What's New /whatsnew.txt gopher.quux.org 70 +
Connection closed by foreign host.

Beberapa Tool-Tool Menarik di Jaringan di Linux

1. netcat
netcat merupakan tool yang berguna untuk dan menerima dan mengirim data via protokol tcp/ip.
Contoh penggunaan netcat untuk melakukan bind ke suatu nomor port kemudian listen (misal port 3338):

nc -l -p 3338 -vvv

netcat juga bisa digunakan layaknya telnet untuk melakukan konek ke suatu nomor port di mesin lain yang terbuka misal mesin dengan ip 192.168.1.1 dengan port 80 dalam kondisi listen

nc 192.168.1.1 80

2. telnet
Telnet merupakan tool yang berguna mengakses mesin lain di jaringan via nomor port yang sedang listen di mana nomor port default dari telnet daemon adalah 23, akses ke mesin lain tersebut selama ada routenya loh!!!
misal:

telnet alamat_ip/nama_host nomor_port

via telnet kita juga bisa digunakan untuk melakukan fetch terhadap suatu situs misal:

# telnet google.com 80
Trying 216.239.61.104...
Connected to google.com.
Escape character is '^]'.
GET / HTTP/1.1

Ok berikut ini contoh penggunaan telnet untuk mengakses suatu public access unix system di mana ip public dengan sistem free bsd dg telnet daemon running:

nah ini sdf.lonestar.org di sini tempat ane dulu sering nongkrong

01 bt lampp # telnet sdf.lonestar.org
02 Trying 192.94.73.1...
03 Connected to sdf.lonestar.org.
04 Escape character is '^]'.
05
06 sdf.lonestar.org (pts/25)
07 if new, login 'new' ..
08
09 login: mywisdom
10 Password:
11 [ 'mywisdom' is not set to expire ]
12
13 Please press your BACKSPACE key:
14 The Moon is Waxing Crescent (1% of Full)
15 .
16 .
17 .
18 -.
19 \
20 \.
21 \
22 \
23 |
24 \ New Moon +
25 | 1 0:52:06
26 | First Quarter -
27 | 6 13:04:59
28 /
29 |
30 /
31 /
32 /'
33 /
34 -'
35 '
36 '
37 '
38 [CONTINUE]
39
40 Type 'help' for Commands.
41 Type 'com' to chat with other users.
42 Type 'ttytter' to listen to Twitter Tweets anonymously.
43 Type 'mud' to play the SDFmud.
44
45 Did you know you can become a permanent LIFETIME member of SDF
46 by making a onetime donation of $36? Type 'arpa' for more info!
47
48 sdf:/udd/m/mywisdom>

3. ftp (tool)
ftp merupakan tool dasar di linux untuk mentransfer file via protokol ftp (port 21 / tcp) untuk memulai silahkan ketikkan:

ftp

Contoh penggunaan ftp untuk mengupload file:

bt ~ # ftp yoyoparty.com
Connected to yoyoparty.com.
220 (vsFTPd 2.0.5)
Name (yoyoparty.com:root): yoyoparty
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd htmp
550 Failed to change directory.
ftp> cd html
250 Directory successfully changed.
ftp> cd upload
250 Directory successfully changed.
ftp> put gopher2.011.tar
local: gopher2.011.tar remote: gopher2.011.tar
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 File receive OK.
993280 bytes sent in 52 secs (19 Kbytes/sec)
ftp>

4. TraceRoute
Ini merupakan tool yang biasa dipergunakan untuk melihat rute perjalanan paket untuk mencapai tujuan. Ok untuk lebih jelasnya perhatikan contoh berikut ini, misal kita mao melihat perjalanan paket dari mesin kita ke :

bt lampp # traceroute jasakom.com
traceroute to jasakom.com (119.2.43.84), 30 hops max, 38 byte packets
1 10.17.0.1 (10.17.0.1) 19.197 ms 11.485 ms 7.685 ms
2 fm-ip-202.73.96.6.fast.net.id (202.73.96.6) 9.214 ms 7.500 ms 8.561 ms
3 fm-ip-202.73.96.5.fast.net.id (202.73.96.5) 9.109 ms 9.170 ms 7.668 ms
4 laxo.openixp.net (218.100.27.101) 8.050 ms 8.336 ms 8.057 ms
5 ip-40-100.laxo.net.id (119.2.40.100) 8.628 ms 11.468 ms 10.862 ms
6 ip-43-84.laxo.net.id (119.2.43.84) 9.747 ms 9.875 ms 9.167 ms bt lampp #

5. whois
Ini merupakan tool yang digunakan untuk mendapatkan informasi tentang suatu nama domain. whois ini sering digunakan untuk mendapatkan informasi target bagi para attacker.

contoh penggunaan whois:

whois solusiwebindo.com

maka akan didapat informasi yang berguna berikut ini:

01 Domain Name: SOLUSIWEBINDO.COM
02
03 Registrant:
04 n/a
05 Yulianto (goodmast3r@yahoo.com)
06 Tanah Pasir No 5/6 RT 18/07
07 Jakarta
08 Jakarta,14440
09 ID
10 Tel. +62.8128196928
11
12 Creation Date: 15-Nov-2006
13 Expiration Date: 15-Nov-2010
14
15 Domain servers in listed order:
16 dns1.masterwebnet.com
17 dns2.masterwebnet.com
18 dns3.masterwebnet.com
19 dns4.masterwebnet.com
20
21 Administrative Contact:
22 n/a
23 Yulianto (goodmast3r@yahoo.com)
24 Tanah Pasir No 5/6 RT 18/07
25 Jakarta
26 Jakarta,14440
27 ID
28 Tel. +62.8128196928
29
30 Technical Contact:
31 n/a
32 Yulianto (goodmast3r@yahoo.com)
33 Tanah Pasir No 5/6 RT 18/07
34 Jakarta
35 Jakarta,14440
36 ID
37 Tel. +62.8128196928
38
39 Billing Contact:
40 n/a
41 Yulianto (goodmast3r@yahoo.com)
42 Tanah Pasir No 5/6 RT 18/07
43 Jakarta
44 Jakarta,14440
45 ID
46 Tel. +62.8128196928
47
48 Status:ACTIVE

Dari informasi di atas didapat info email registrar domain adalah: goodmast3r@yahoo.com

Selanjutnya attacker bisa mencoba melakukan pop3 dictionary attack untuk mendapatkan akun registrar untuk kemudian bisa mengeset name server (domain hijacking).

:)