Total Tayangan Halaman

Rabu, 19 Januari 2011

Bahasa C++

C++ adalah salah satu bahasa pemrograman komputer,  yang dikembangkan dari bahasa pendahulunya,  yaitu bahasa C.
Bahasa ini Dibuat pada tahun 1980-an oleh Bjarne Stroustrup) yang berasal dari Bell Lab.
tidak seperti pendahulunya, yaitu bahasa C, bahasa ini sudah mendukung  pemakaian konsep pemrograman berorientasi objek (Object Oriented Programming).
Saat ini, Bahasa C++ banyak dipakai di berbagai industri software,  dan sampai saat ini C++ masih termasuk sebagai salah satu bahasa pemrograman yang paling populer.  beberapa aplikasi, seperti systems software, application software, device drivers, embedded software, high-performance server and client applications, dan entertainment software dibuat menggunakan bahasa C++.
dibanding dengan pendahulunya , ada beberapa hal yang ditambahkan yang sebelumnya tidak dimiliki oleh bahasa pendahulunya, hal yang ditambahkan tersebut adalah :
  1. Class
    Class adalah keyword yang digunakan untuk membuat sebuah user define abstract data type, dengan tujuan untuk menyerdehanakan suatu permasalhan yang berkaitan dengan objek
    contoh pembuatan kelas dalam bahasa C++ :
    class Hero
    {
    private :
    int x;
    int y;
    int vx;
    int vy;
    public :
    //method
    void walk()
    {
    this->x = x+vx;
    this->y = y+vy;
    }
    //constructor
    Hero(int vx, int vy)
    {
    this->vx = vx;
    this->vy = vy;
    this->x = this->y = 0;
    }
    //destructor
    ~Hero()
    {
    this->vx = this->vy = this->x = this->y = 0;
    }
    }ryu;
    //akhir dari kelas
    dalam hal ini ryu adalah objek dari kelas Hero, sedangkan kelas Hero adalah blue print/rancangan untuk membuat objek
  2. Constructor  dan Destructor
    seperti yang kita lihat di no 1, disana terdapat constructor dan destructor. Constructor adalah fungsi yang akan dijalankan ketika kita membuat sebuah objek dari suatu kelas, untuk menginisialisasi data yang dimiliki oleh objek. dari method2 yang ada dalam suatu objek,  Constructor  akan dipanggil paling pertama.
    sedangkan Destructor adalah fungsi yang akan dipanggil terakhir kali untuk membersihkan memori.
  3. overloading
    overloading adalah penggunaan nama yang sama untuk beberapa fungsi maupun method, namun dalam tiap2 fungsi tersebut memiliki perbedaan, walupun namanya sana. perbedaan itu mencakup parameter maupun return value dari suatu fungsi
  4. overiding
    overiding adalah  definisi ulang dari suatu method dengan menggunakan nama yang sama. singkatnya , bisa terdapat method yang menggunakan nama, return value dan  parameter yang sama, namun operasi  masing  method  itu berbeda
  5. access modifier
    seperti yang kita lihat di no 1 diatas, kita dapat memberi access modifier.  access modifier di bahasa C++ ada 3 yaitu
    1. private
    yaitu pembatasan agar data dari suatu kelas hanya dapat diakses oleh kelas itu sendiri
    2.protected
    yaitu pembatasan agar data dari suatu kelas  hanya dapat diakses oleh kelas itu sendiri dan kelas turunannya
    3. public
    yaitu pengizinan agar data-data dari suatu kelas dapat diakses oleh siapapun
  6. extend
    yaitu  penurunan sifat dari suatu Class ke Class lain
    contoh :
    class Kendaraan
    {
    };
    //extends
    class Mobil : Kendaraan
    {
    };
    dengan adanya extends, maka apa yang dimiliki dari Class kendaraan akan diturunkan ke Class mobil
sebenarnya masih banyak fitur C++ yang lain, namun yang paling penting untuk diketahui adalah beberapa hal diatas
karena bahasa C++ sudah mendukung adanya konsep Object Oriented Programming, maka tentu saja bahasa ini juga mendukung ciri dasar dari OOP, yaitu Abstraction, Encapsulation dan Polymorphism, dengan menggunakan keenam fitur tersebut

Hitung Subnet mask

cara hitung subnet mask:
1. Ubah IP number ke bilangan biner
2. Ubah Subnet mask ke bilangan biner
3. Lakukan operasi AND [1-1=1, 0-1=0, 0-0=0, 1-0=0]
4. Hitung jumlah host = 2 pangkat n – 2
5. Hitung jumlah subnet= 2 pangkat m
Ex [untuk network kelas C]
IP: 192.168.13.17/28
Subnet: 255.255.255.240
240 didapat dari konversi subnet ke bilangan biner, dan terdapat 28 angka biner bernilai1
1111 1111.1111 1111.1111 1111.11110000
|________| |_______| |________| |________|
255 255 255 240 [128+64+32+16]
IP biner: 11000000.10101000.00001101.00010001
Subnet :11111111.11111111.11111111.11110000
—————————————————————————A ND
11000000.10101000.00001101.00010000
IP network: 192.168.13.16 |___16___| <------------------------------------------
IP broadcast: 192.168.13.31-----> 00011111 [angka 0 dibelakang 1 dari ip address diganti 1] |
Jumlah host: 2 pangkat 4 – 2 = 16 -2 =14 [4 didapat dari jumlah angka 0 dari subnet mask------|
Jumlah subnet: 2 pangkat 4 = 16 [4 didapat dari jumlah angka 1 dari oktet ke 4 dari subnet mask ---------------------|
berarti ada 16 subnet dengan jumlah host masing masing subnet=14, kelipatan yang
digunakan [256-240 =16] = 16

Melindungi Pelanggan/User Anda pada Firewall

Untuk melindungi network pelanggan/user anda, kita harus memeriksa semua traffic yang melewati router dan blok yang tidak diinginkan.
Untuk traffic ICMP, TCP, UDP kita akan membuat chain dimana akan melakukan DROP untuk paket-paket yang tidak diinginkan. Untuk awalnya kita dapat meng-copy dan paste command dibawah ini melalui terminal console pada RouterOS kita :
Code:
/ip firewall filter

add chain=forward connection-state=established comment="allow established connections"

add chain=forward connection-state=related comment="allow related connections"

add chain=forward connection-state=invalid action=drop comment="drop invalid connections"
Pada rule diatas, 2 rule pertama berurusan dengan paket untuk koneksi telah terbuka dan berhubungan dengan koneksi lainnya. Kita mengasumsikan bahwa paket tersebut tidak bermasalah. Pada rule selanjutnya kita akan melakukan DROP pada paket dari koneksi yang Invalid.
This image has been resized. Click this bar to view the full image. The original image is sized 520×210.

Selanjutnya, kita akan mem-filter dan melakukan DROP pada paket-paket yang kelihatannya berasal dari HOST yang terinfeksi Virus.
Daripada kita menambah rule-rule dibawah ke forward chain, yang berakibat chain forward terlalu penuh dengan rule sehingga sulit melakukan troubleshooting. Kita dapat menambah chain tersendiri, dan dapat diberi nama Virus. Dan rule-rule dibawah kita masukkan ke chain tersebut.
Code:
add chain=virus protocol=tcp dst-port=135-139 action=drop comment="Drop Blaster Worm"

add chain=virus protocol=udp dst-port=135-139 action=drop comment="Drop Messenger Worm"

add chain=virus protocol=tcp dst-port=445 action=drop comment="Drop Blaster Worm"

add chain=virus protocol=udp dst-port=445 action=drop comment="Drop Blaster Worm"

add chain=virus protocol=tcp dst-port=593 action=drop comment="________"

add chain=virus protocol=tcp dst-port=1024-1030 action=drop comment="________"

add chain=virus protocol=tcp dst-port=1080 action=drop comment="Drop MyDoom"

add chain=virus protocol=tcp dst-port=1214 action=drop comment="________"

add chain=virus protocol=tcp dst-port=1363 action=drop comment="ndm requester"

add chain=virus protocol=tcp dst-port=1364 action=drop comment="ndm server"

add chain=virus protocol=tcp dst-port=1368 action=drop comment="screen cast"

add chain=virus protocol=tcp dst-port=1373 action=drop comment="hromgrafx"

add chain=virus protocol=tcp dst-port=1377 action=drop comment="cichlid"

add chain=virus protocol=tcp dst-port=1433-1434 action=drop comment="Worm"

add chain=virus protocol=tcp dst-port=2745 action=drop comment="Bagle Virus"

add chain=virus protocol=tcp dst-port=2283 action=drop comment="Drop Dumaru.Y"

add chain=virus protocol=tcp dst-port=2535 action=drop comment="Drop Beagle"

add chain=virus protocol=tcp dst-port=2745 action=drop comment="Drop Beagle.C-K"

add chain=virus protocol=tcp dst-port=3127-3128 action=drop comment="Drop MyDoom"

add chain=virus protocol=tcp dst-port=3410 action=drop comment="Drop Backdoor OptixPro"

add chain=virus protocol=tcp dst-port=4444 action=drop comment="Worm"

add chain=virus protocol=udp dst-port=4444 action=drop comment="Worm"

add chain=virus protocol=tcp dst-port=5554 action=drop comment="Drop Sasser"

add chain=virus protocol=tcp dst-port=8866 action=drop comment="Drop Beagle.B"

add chain=virus protocol=tcp dst-port=9898 action=drop comment="Drop Dabber.A-B"

add chain=virus protocol=tcp dst-port=10000 action=drop comment="Drop Dumaru.Y"

add chain=virus protocol=tcp dst-port=10080 action=drop comment="Drop MyDoom.B"

add chain=virus protocol=tcp dst-port=12345 action=drop comment="Drop NetBus"

add chain=virus protocol=tcp dst-port=17300 action=drop comment="Drop Kuang2"

add chain=virus protocol=tcp dst-port=27374 action=drop comment="Drop SubSeven"

add chain=virus protocol=tcp dst-port=65506 action=drop comment="Drop PhatBot, Agobot, Gaobot"
Here, we list all those well known “bad” protocols and ports, used by various trojans and viruses when they take over your computer. This list is incomplete; we should add more rules to it! We can jump to this list from the forward chain by using a rule with action=jump:
Diatas kita telah dapatkan daftar rule untuk memfilter paket-paket dari protocol dan posrt yang merupakan berasal dari Virus ataupun Trojan. Daftar diatas belum komplit, kita bisa mendapatkan rule-rule tambahan dari berbagai sumber, tapi setidaknya rule diatas dapat menjadi awal.
Agar paket dari chain forward dapat menuju ke chain virus kita dapat menererapkan action=jump, seperti rule dibawah ini :
Code:
add chain=forward action=jump jump-target=virus comment="jump to the virus chain"
Chain Forward kita akan nampak seperti dibawah ini :
This image has been resized. Click this bar to view the full image. The original image is sized 701×243.

Bila paket yang ter-jump ke chain virus tidak ter-filter, maka paket tersebut akan dikembalikan ke chain forward.
Kita dapat dengan mudah menambahkan rule yang membolehkan udp dan ping dan drop yang lainnnya (jika tidak ada service pada network user yang perlu diakses dari network luar) :
Code:
add chain=forward protocol=icmp comment="allow ping"

add chain=forward protocol=udp comment="allow udp"

add chain=forward action=drop comment="drop everything else"
Demikian tutorial ini, semoga bermanfaat bagi kita semua..
Referensi : forummikrotik.com

Mambangun Transparant Proxy di Mikrotik

[admin@PROXY] > ip proxy print
enabled: no
port: 3128
parent-proxy: 0.0.0.0:1
maximal-client-connecions: 1000
maximal-server-connectons: 1000
=====================================
[admin@PROXY] > ip web-proxy print
enabled: yes
src-address: 0.0.0.0
port: 8080
hostname: “PROXY”
transparent-proxy: yes
parent-proxy: 0.0.0.0:0
cache-administrator: “support@andalaswave.net”
max-object-size: 128000KiB
cache-drive: system
max-cache-size: unlimited
max-ram-cache-size: unlimited
status: running
reserved-for-cache: 30736384KiB
reserved-for-ram-cache: 2048KiB
========================================
[admin@PROXY] > ip firewall nat print
Flags: X – disabled, I – invalid, D – dynamic
0   chain=srcnat out-interface=public action=masquerade
1   chain=dstnat protocol=tcp dst-port=80 action=redirect to-ports=8080
2   chain=dstnat protocol=tcp dst-port=3128 action=redirect to-ports=8080
3   chain=dstnat protocol=tcp dst-port=8000 action=redirect to-ports=8080
4   chain=dstnat protocol=tcp dst-port=8080 action=redirect to-ports=8080
[admin@PROXY] >
======================================================
[admin@PROXY] > ip firewall filter print
Flags: X – disabled, I – invalid, D – dynamic
0   chain=input in-interface=public protocol=tcp dst-port=8080 action=drop
[admin@PROXY] >
====================================================
[admin@PROXY] > ip route print
Flags: X – disabled, A – active, D – dynamic,
C – connect, S – static, r – rip, b – bgp, o – ospf
#     DST-ADDRESS        PREF-SRC        G GATEWAY         DISTANCE INTERFACE
0 ADC 192.168.0.0/26     192.168.0.1                                local
1 ADC 202.152.61.112/29  202.152.61.114                         public
2 A S ;;; added by setup
0.0.0.0/0                          r 202.152.61.113              public
=======================================================
admin@PROXY] > ip pool print
# NAME                                         RANGES
0 dhcp_pool1                                   192.168.0.2-192.168.0.62
======================================================================
[admin@PROXY] > ip service print
Flags: X – disabled, I – invalid
#   NAME                                  PORT  ADDRESS            CERTIFICATE
0 X telnet                                23    0.0.0.0/0
1 X ftp                                    21    0.0.0.0/0
2   www                                  80    0.0.0.0/32
3   ssh                                    22    0.0.0.0/0
4 X www-ssl                            443   0.0.0.0/0                none
[admin@PROXY] >
=================================================
[admin@PROXY] > ip firewall address-list print
Flags: X – disabled, D – dynamic
#   LIST       ADDRESS
0   laptop     192.168.0.62
[admin@PROXY] >

Reset Password Ubuntu

Lama bergelut dengan Labtop Toshiba SatteliteA135 Series yang udah pake Ubuntu 7.10 Ultimate edition malah kelupaan password PC di Kantor. Terakhir PC di kantor di Install Ubuntu 7.04 sekitar akhir Januari lalu. Karena ada File yang tertinggal di sana akhirnya Kompie PC nya dinyalakan juga …tapi sewaktu login dan mengetikkan password nggak pernah cocok. Semua kombinasi password yang pernah dipake sudah dicoba tapi sia-sia. Jalan terakhir direset passwordnya. Restart Ubuntunya kemudian di menu GRUB masuk ke sistem dengan recovery mode. Recovery mode menjalankan Linux dengan user root. Root merupakan user yang mempunyai hak akses penuh terhadap sistem. Kemudian ketikkan perintah seperti dibawah ini :
PLAIN TEXT
root@root:~# passwd charter
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

Perintah di atas dipakai untuk mereset password dari user root (sesuaikan dengan username Anda). Setelah itu sekarang saatnya untuk merestart komputer. Ketikkan:
PLAIN TEXT
root@root:~# reboot

Sekarang jalankan Ubuntunya dengan normal bukan recovery mode lagi dengan password baru yang telah di buat tadi.

Konsep Sistem Client-Server

Pendahuluan
Diawal perkembangannya perangkat komputer adalah barang yang mahal dan mewah. Pengembangan dan pengoperasiannya rumit dan terpusat. Namun seiring dengan berjalannya waktu yang tadinya proses tersentralisasi dikembangakan menjadi proses terdistribusi sampai pada end user. Hal ini sangat dipengaruhi oleh adanya perkembangan teknologi LAN (Local Area Network) di pertengahan tahun 1980 an. Dengan LAN sebuah PC dapat melakukan komunikasi satu dengan lainnya dan dapat saling berbagi resource baik perangkat keras ataupun database. LAN mampu memberikan interkonektivitas yang tidak pernah ada sebelumnya. Untuk dapat melakukan hal tersebut dibutuhkan sebuah komputer pemproses yang memfasilitasi dan melayani proses sharing semua resource yang ada. Perangkat ini disebut dengan Server. Untuk melakukan Sharing File biasanya dibutuhkan sebuah File Server begitu juga untuk sharing Printer dibutuhkan sebuah Printer Server. Namun ternyata hal seperti ini belumlah cukup. Jumlah PC yang bertambah dengan sangat cepat seiring dengan berkembangnya sebuah organisasi. Jumlah end user dan client juga bertambah banyak. Kebutuhan akan perangkat menjadi bertambah pula, tidak hanya membutuhkan sebuah printer server, juga dibutuhkan server-server lainnya seperti server pengolahan gambar, server pengolahan suara, dan lainnya. Server-server ini dengan database dan applikasinya harus dapat diakses oleh beberapa PC, ataupun diakses oleh sebuah komputer mainframe melalui sebuah LAN. Sistem seperti ini disebut Sistem Client Server seperti digambarkan pada Gambar 1 dibawah ini.
Gambar 1. Skema Sistem Client-Server
Komponen dan Fungsi Sistem Client Server
Gambaran umum konfigurasi Client Server diperlihatkan pada gambar 2. Dengan pendekatan Client Server setiap PC dapat melakukan secara independen sebuah pemrosesan lokal dan mensharing perangkat enterprise melalui LAN. Untuk kasus yang lebih luas kemampuan akses dapat dilakukan melalui MAN (Metropolita Area Network) atau WAN (Wide Area Network). Sebuah database dan program applikasi enterprise misalnya diletakan pada sebuah server dimana setiap end user dapat melakukan akses melalui Client Processor, LAN dan Server seperti pada gambar 3.
Gambar-2 Host Sistem dan Sistem Client Server
User
User disini adalah end user yang mengakses client untuk mendapatkan sebuah layanan. End user bisa saja seorang manager perusahaan, professional, karyawan di sebuah perusahaan, atau pelanggan. Ada timbul sedikit kerancuan. Pelanggan dalam sebuah bisnis atau perdagangan disebut dengan client, tapi client ini adalah manusia, jangan dibingungkan dengan istilah client pada pemrosesan komputer. Dapat kita katakan sebuah user atau end user adalah ketika melakukan proses akhir menggunakan sistem client server.
Gambar 3. Komponen Sistem Client Server
Client
Client dapat berupa sebuah pemproses yang powerful atau dapat juga berupa terminal tua dengan kemampuan proses yang terbatas. Secara mendasar client adalah sebuah PC dengan sistem operasinya sendiri. Sebagian besar pemrosesan banyak dilakukan di sebuah server dimana bagian-bagian dalam lingkup pekerjaannya ditentukan oleh program komputer, inilah yang menyebabkan sistem client server berbeda dengan sistem transaksi tradisional. Sistem client server memungkinkan sebuah teknologi dan applikasinya digunakan bersamaan. Applikasi disini termasuk didalamnya adalah pemroses pesan seperti e-mail, pemproses file lokal seperti DBMS untuk browsing dan penghitungan, atau sharing resource seperti sistem image processing, sistem optical character, sistem advance grafic processing, plotter warna, atau sebuah printer. Perangkat-perangkat ini bisa saja berasal dari berbagai vendor yang ada. Untuk memfasilitasi query pemprosesan dari client, sebagian besar sistem client server menggunkaan Structured Query Language (SQL) yang merupakan struktur bahasa tingkat tinggi. SQL dengan database relationalnya adalah standar de facto untuk hampir sebagian besar sistem client server. Salah satu komponen terpenting sistem client server adalah User Interface (UI), yang digunakan user untuk berkomunikasi. Bagi user yang seorang programmer, UI tidak mesti user friendly, tapi untuk end user yang bukan programmer sangat dibutuhkan UI yang user friendly. Dibutuhkan Graphical User Interface (GUI) untuk end user karena GUI menampilkan grafis untuk melakukan akses dengan icon-icon tanpa perlu memasukan perintah pemrograman. Kedepannya GUI tidak hanya digunakan untuk menggantikan akses perintah pemprograman tapi juga digunakan untuk grafik, voice, video, animasi, untuk selanjutnya menjadi sebuah teminal multimedia.
Network dan Transmisi
Server dan client dapat terkoneksi dengan sebuah media transmisi. Media transmisi ini dapat berupa kabel, wireless, atau fiber. Dengan media ini memungkinkan sebuah perusahaan untuk melakukan enterprice network lebih besar dalam sebuah workgroup atau departemen. Untuk itu dibutuhkan interoperability sebagai contoh operasi dan pertukaran informasi yang heterogen melalui berbagai perangkat software dalam jaringan. Esensinya adalah keterbukaan dalam melakukan pertukaran baik komponen dan software yang berasal dari vendor yang berbeda-beda. Dengan interoperability baik vendor dan customer akan mendapatkan keuntungan.
Interoperability memberikan dampak pada arsitektur jaringan. Awal sebuah arsitektur jaringan adalah SNA namun arsitektur ini bersifar proprietary dan tidak terbuka dengan vendor lainnya. Kemudian sebagian besar orang beralih ke OSI yang di standarkan oleh ISO (International Standards Organization). OSI banyak di gunakan di Eropa namun kurang berkembang di Amerika Serikat. Di Amerika Serikat muncul TCP/IP yang kemudian di dukung oleh Unix User Group.
Servers
Konektivitas adalah hal yang terpenting namun bukan satu-satunya faktor untuk mendapatkan efisiensi dan efektivitas sharing resource yang dimiliki. Dibutuhkan sebuah perangkat yang memiliki kemampuan mengontrol software, menjalankan program applikasi, dan mengakses database dengan mudah dan cepat. Untuk itulah diperlukan sebuah Server. Sebuah Server harus mendukung spesifikasi yang mendukung resource sharing seperti Network Server Operating System, Multiple User Interface, GUI (Graphic User Interface), dialog oriented cleint – server languange seperti SQL dan database arsitektur. Saat ini resuorce bisa tersebar secara spasial tidak hanya berada dalam batasan sebuah negara namun sudah antar negara yang membutuhkan interkoneksi yang tinggi.
Beberapa software dapat diperoleh dari vendor atau software house. Software tersebut bisa bersifat mainframe centric (sentral) atau PC server centric. Namun selain semua hal yang tersedia pada paket software tersebut tetap dibutuhkan in house sofware development. Juga perlu untuk mengintegrasikan sistem client server dengan sistem informasi yang telah ada dan menggunakan sistem tersebut tidak hanya sebagai end user tapi juga bekerja diantara group end user.
Server melakukan pemprosesan mirip dengan pemrosesan yang ada disisi client. Namun ada sedikit perbedaan, biasanya sebuah server tidak mempunyai User Interface karena didesain untuk networking, memproses database dan memproses applikasi. Pembeda antara pemrosesan client dan server ada pada tanggungjawab dan fungsi dari pemrosesan yang dilakukan. Sebagai contoh sebuah server dapat bertindak sebagai repository dan penyimpanan informasi dalam kasus pada file server. Tipe dari Server tergantung pada kebutuhan dan tujuan sistem. Dalam beberapa kasus sebuah server harus mampu melakukan multitaskting (membentuk multi fungsi secara simultan), menggunakan multiple operating system, lebih portable, memiliki skalabilitas, dan memiliki waktu respon yang cepat untuk melakukan teleprosesing. Dengan kapabilitas seperti itu menjadikan server memiliki harga yang relatif mahal. Penyebab mahalnya harga server adalah :
  1. Network Management
  2. Gateway function termasuk akses keluar dan e-mail publik
  3. Penyimpanan
  4. File Sharing
  5. Batch processing
  6. Bulletin Board access
  7. Facsimile transmission
Pemrosesan Database
Beberapa prinsip pemrosesan data pada server termasuk didalamnya adalah integritas, sekuriti, dan recovery data. Enterprise data yang dibutuhkan oleh sebuah perusahaan membutuhkan sebuah integrasi, pengaksesan data yang di kendalikan dan kelola dengan securiti yang baik, dan recovery data dapat dilakukan jika terjadi kegagalan sistem.
Beberapa data management dilakukan secara otomatis. Biasanya dilakukan oleh DBMS yang berada di Server yang mengontrol akses diantara pemprosesan multiple sistem dan mengintegrasikan akses data melalui network management.
Pemrosesan Applikasi
Data digunakan oleh program applikasi yang mana sebagian besarnya berada di server. Ada beberapa applikasi client server yang disediakan oleh vendor. Tools applikasi ini menjadikan pengembangan sistem client-server menjadi lebih kompetitif. Pengembangan applikasi client-server dapat dilakukan dengan beberapa cara yakni :
  1. Fungsi pemprosesan didistribusikan diantara client dan server. Porsi dari client dijalankan oleh end user dengan menggunakan bahasa pemrograman database seperti SQL yang memberikan semacam request data dan kemudian mengekstrak data tersebut dari lokasinya dimana semua proses tersebut dikontrol oleh sistem operasi.
  2. UI dan GUI menjadi lebih sering digunakan karena tingkat kemudahan penggunaan menjadi lebih penting.
  3. Digunakannya Advance networking seperti LAN
  4. Code generator juga digunakan, Metodelogi Objeck Oriented akan menambah tingkat penggunan.
  5. Tools pengembangan seperti SQL Server, FLOWMARK, Progress, ObjectView, Oracle menjadi sangat diperlukan
Ketika sebuah applikasi diproses dan permintaan akan data dilakukan oleh client, maka hasilnya dikirimkan melalui LAN. Hasil dari applikasi tersebut dapat saja dilakukan perubahan bentuk untuk mendapatkan tampilan yang lebih baik. Semuanya ini dilakukan di sisi client oleh end user melalui UI (User Interface). Diagram skematik pendekatan client server ditunjukan pada gambar 4.
Gambar 4- Applikasi Sistem Client Server
Keuntungan Sistem Client Server
  1. Mengurangi tanggung jawab dan biaya overhead
  2. Kontrol biaya operasional dan pengembangan yang lebih mudah
  3. Waktu respon yang lebih baik dalam pemrosesan.
  4. Akses data yang lebih besar bagi perusahaan. Sistem Client server mengamankan transaksi data dan menyimpannya pada server untuk kemudian dapat di sharing, dimanipulasi, dianalisa secara lokal.
  5. Memungkinkan pendistribusian proses dari tersentralisasi menjadi desktop computing
  6. Menawarkan kooperatif prosesing antara individu dan group antar departemen, geografis dan zona waktu.
  7. Rewriting software pada sistem client server memberikan keuntungan untuk mendapatkan sistem yang terintegrasi dan memberikan efisiensi.
  8. Menawarkan friendlu interface pada end user khususnya pada knowledge worker dan customer.
  9. Keterlibatan yang lebih untuk end user pada implementasi IT.
  10. Arsitektur terbuka dan sistem terbuka memberikan fleksibilitas dalam memilih konfigurasi hardware yang berbeda, network, dan DBMS dari berbagai vendor.
Hambatan Implementasi Sistem Client Server
Organisasi
  1. Skill personel yang kurang memadai untuk implementasi sistem client server.
  2. Anti perubahan terhadap teknologi baru.
  3. Biaya konversi
  4. Membutuhkan koordinasi dan kontrol yang lebih pada end user.
Teknologi
  1. Membutuhkan infrastruktur LAN dan WAN
  2. Skill dan peralatan yang belum memadai
  3. Belum adanya pemahaman dan pengalaman dalam merencanakan sistem client server
  4. Tidak tersedianya produk dan tools pengembangan sistem client server
  5. Sedikitnya applikasi client server
  6. Sedikitnya standar nasional dan internasional untuk sistem client server.
Artikel ini Disadur dari : The Client Server Paradigm, Bill Foy, Vice President of Micro Systems, 1998

Cara Hackers Mendapatkan Password

Pencurian password, pengambilalihan account, merupakan hal yang sering terjadi di dunia cyber. Bukan hal yang sulit untuk melakukannya, namun banyak para newbie yang terus saja bertanya-tanya.. “Bagaimana cara mendapatkan password email orang lain?” atau pertanyaan yang paling sering saya terima ialah.. “Bagaimana cara anda mendapatkan password saya?” :P
Untuk pertanyaan-pertanyaan itulah artikel ini ditulis, semoga bisa menambah wawasan anda dan membuka pikiran anda tentang betapa pentingnya menjaga account saat berada di tempat-tempat rawan.
Bagaimana Mendapatkannya?
Ada banyak cara untuk mendapatkan suatu password. Beberapa diantaranya tidak membutuhkan keahlian khusus. Berikut adalah cara-cara yang paling umum dan paling sering digunakan:
[1]. Social Engineering
[2]. KeyLogger
[3]. Web Spoofing
[4]. Menghadang Email
[5]. Password Cracking
[6]. Session Hijacking
[7]. Menjadi Proxy Server
[8]. Memanfaatkan Kelalaian User Dalam Penggunaan Fitur
Browser
[9]. Googling
[1]. Social Engineering
Social Engineering adalah nama suatu tehnik pengumpulan informasi dengan memanfaatkan celah psikologi korban. Atau mungkin boleh juga dikatakan sebagai “penipuan” :P Sosial Engineering membutuhkan kesabaran dan kehati-hatian agar sang korban tidak curiga. Kita dituntut untuk kreatif dan mampu berpikiran seperti sang korban.
Social Engineering merupakan seni “memaksa” orang lain untuk melakukan sesuatu sesuai dengan harapan atau keinginan anda. Tentu saja “pemaksaan” yang dilakukan tidak secara terang-terangan atau diluar tingkah laku normal yang biasa dilakukan sang korban.
Manusia cenderung untuk percaya atau mudah terpengaruh terhadap orang yang memiliki nama besar, pernah (atau sedang berusaha) memberikan pertolongan, dan memiliki kata-kata atau penampilan yang meyakinkan. Hal ini sering dimanfaatkan pelaku social engineering untuk menjerat korbannya. Seringkali sang pelaku membuat suatu kondisi agar kita memiliki semacam ketergantungan kepadanya.Ya,tanpa kita sadari dia mengkondisikan kita dalam suatu masalah dan membuat ( seolah – olah hanya ) dialah yang bisa mengatasi masalah itu. Dengan demikian,tentu kita akan cenderung untuk menuruti apa yang dia instruksikan tanpa merasa curiga.
Sosial Engineering adakalanya menjadi ancaman serius. Memang sepertinya tidak ada kaitan dengan teknologi, namun sosial engineering tetap layak diwaspadai karena bisa berakibat fatal bagi sistem anda. Why?? Karena bagaimanapun juga suatu komputer tetap saja tidak bisa lepas dari manusia. Ya, tidak ada satu sistem komputerpun di muka bumi ini yang bisa lepas dari campur tangan manusia. sehebat apapun pertahanan anda, jika anda sudah dikuasai oleh attacker melalui social engineering, maka bisa jadi anda sendirilah yang membukakan jalan masuk bagi sang attacker.
[2]. KeyLogger
KeyLogger adalah software yang dapat merekam aktivitas user. Hasil rekaman itu biasa disimpan berupa teks atau gambar. KeyLogger bekerja berdasarkan ketukan keyboard user. Aplikasi ini mampu mengenali form-form sensitif seperti form password misalnya.
Ada cara aman untuk menghindari keyloger:
1. Gunakan password dengan karakter special seperti !@#$%^&*(){}[]. Kebanyakan keyloger akan mengabaikan karakter ini sehingga sang pelaku (pemasang keyloger) tidak akan mendapatkan password anda yang sebenarnya.
2. Persiapkan password dari rumah, simpan dalam bentuk teks. Saat ingin memasukkan password, tingal copy-paste ajah. Keyloger akan membaca password anda berdasarkan ketukan keyboard. Namun cara ini agak beresiko. Mengapa? karena saat anda melakukan copy, data anda akan tersimpan di clipboard. Saat ini banyak dijumpai software-software gratis yang bisa menampilkan data dalam clipboard.
[3]. Web Spoofing
Masih ingat kasus pecurian Account sejumlah nasabah Bank BCA? Ya, itulah salah satu contoh nyata dari Web spoofing. Inti dari tehnik ini ialah dengan memanfaatkan kesalahan user saat mengetikkan alamat situs pada address bar. Pada dasarnya, Web Spoofing adalah usaha untuk menipu korban agar mengira dia sedang mengakses suatu situs tertentu, padahal bukan.
Pada kasus bank BCA, pelaku membuat situs yang sangat mirip dan identik dengan situs aslinya sehingga sang korban yang terkecoh tidak akan merasa ragu mengisikan informasi sensitif seperti user name dan Passwordnya. Padahal, karena situs tersebut adalah situs tipuan, maka semua informasi berharga tadi terekam oleh webserver palsu, yaitu milik sang pelaku.
[4]. Menghadang Email
Menghadang email? Ya, dan sangat mudah untuk melakukan hal ini. Salah satu cara adalah dengan menggunakan mailsnarf yang terdapat pada utility dsniff. Cara kerja Mailsnarf adalah dengan menghadang paket data yang lewat di Internet dan menyusunnya menjadi suatu email utuh.
Dsniff dan mailsnift merupakan software bekerja atas dasar WinPcap (setara dengan libcap pada Linux) yaitu suatu library yang menangkap paket-paket data. Paket-paket yang ditangkap ini akan disimpan dalam bentuk file oleh Windump, sedangkan Dsniff dan MailSnarf bertindak lebih jauh lagi yaitu menganalisa paket-paket data ini dan menampilkan password (dsniff) atau isi email (mailsnarf).
[5]. Password Cracking
“Hacking while sleeping.” itulah ungkapan yang biasa dipakai oleh orang-orang yang melakukan password cracking. Mengapa? Karena pada umumnya dibuthkan waktu yang lama untuk melakukan pasword cracking. Bisa berjam-jam, bahkan berhari – hari! Semua itu tergantung dari target, apakah sang target menggunakan password yang umum, password memiliki panjang karakter yang tidak biasa, atau password memiliki kombinasi dengan karakter-karakter special.
Salah satu software yang biasa digunakan untuk melakukan hal ini ialah dengan mengunakan Brutus, salah satu jenis software remote password cracker yang cukup terkenal. Brutus bekerja dengan teknik dictionary attack atau bruce-force attack terhadap port-port http, POP3,ftp, telnet, dan NetBIOS.
Dictionary Attack bekerja dengan mencobakan kata-kata yang ada dalam kamus password. Sedangkan brute – force attack bekerja dengan mencobakan semua kombinasi huruf, angka, atau karakter.
Brute Force Atack bekerja sangat lambat dan membutuhkan waktu yang lama tergantung dari jenis spesifikasi komputernya dan panjang karakter passwordnya. Saat ini telah banyak situs yang menutup akses terhadap akses terhadap usaha login yang secara terus-menerus tidak berhasil.
Jika anda ingin melakukan password Cracking, silahkan pilih – pilih sendiri aplikasinya di halaman Member – spyrozone.tk.
[6]. Session Hjacking
Session hijacking dewasa ini semakin marak dikalangan para attacker. Session Hijacking biasa dilakukan dengan melakukan peniruan cookies. Jadi pada intinya, kita harus bisa meniru cookies sang korban untuk mendapatkan sesi loginnya.
Lalu bagaimana cara mendapatkan cookies sang korban?
1. Dengan analisa Cookies.
Cara ini relatif sulit dilakukan.
2. Mencuri Cokies.
Misalnya Sang Attacker ingin mendapatkan account si A. Sang Attacker bisa dengan mudah membuat semacam script Java Script yang disisipkan dalam email untuk dikirim ke korban.Saat korban membuka email itu, tanpa sadar cookiesnya akan dicuri dan direkam ke suatu webserver dengan memanfaatkan suatu script PHP.
Belakangan ini yang paling sering menjadi incaran adalah account Friendster. Ada yang menyisipkan suatu scipt lewat testimonial, ada yang menyisipkannya di profilnya sendiri untuk mencuri cookies sang korban dan lain sebagainya. Saya memiliki tips untuk ini:
1. Jangan menggunakan browser Internet Explorer
Saat ingin membuka profil orang lain, jangan menggunakan Internet Explorer. Catat alamat profil yang ingi anda lihat,logout terlebih dahulu dari account anda dan bersihkan semua cookies, baru kemudian bukalah profil Friendster tujuan.
2. Periksa Source CODEnya
Ketika menerima testimonial, periksa terlebih dahulu source codenya. Apakah disana terdapat script asing atau kata-kata yang identik dengan pembajakan seperti :
“HACKED”, “DEFACED”, “OWNED”.. dll..
Jika ragu-ragu……. reject ajah..
3. LogOUT tiba-tiba.
Waspada ketika tanpa suatu alasan yang jelas tiba-tiba anda logout dengan sendirinya dari account anda. Saat anda diminta memasukkan username dan password, lihat dulu addressbar anda! apakan anda sedang berada di situs yang semestinya atau tidak. Periksa source code halaman tersebut.Lihat pada form action, kemana informasi anda nantinya akan dikirim.
Sebenarnya session hijacking bisa dicegah jika saja sang penyedia layanan memperhatikan hal-hal berikut:
1. Menetapkan session identifier yang unik
2. Menetapkan sistem identifier berpola acak
3. Session identifier yang independen
4. Session identifier yang bisa dipetakan dengan koneksi
client side.
Fenomena lain adalah, hingga saat artikel ini diterbitkan, ternyata masih banyak dijumpai para user yang tidak melakukan sign out setelah membuka accountnya. Dengan demikian, orang lain yang mengunakan komputer itu dan membuka website yang sama dengan yang telah dibuka oleh orang pertama akan otomatis login ke account sang korban.
[7]. Menjadi Proxy Server
Kita bisa mengumpulkan informasi dengan menjadi proxy server bagi korban untuk dapat berselancar. Dengan menjadi proxy server, seluruh identitas sang peselancar bisa menjadi milik kita.
[8]. Memanfaatkan Kelalaian user dalam penggunaan fitur
browser
Setiap browser tentunya memiliki fitur yang ditujukan untuk kemudahan dan kenyamanan penggunanya dalam berselancar. Diantaranya ialah dengan adanya cache dan Password Manager.
Di Internet tentunya banyak suatu website yang isinya tidak berubah dalam beberapa hari (Contohnya spyrozone.tk  ;) Nah, untuk situs yang seperti ini cache menjadi hal yang sangat berguna. Cache akan menyimpan file-file hasil browsing sehinga nantinya jika anda berkunjung lagi ke situs tersebut browser tidak perlu lagi melakukan download untuk kedua kalinya dari server sehingga setiap halaman situs yang telah anda buka sebelumnya akan terbuka dengan lebih cepat. Semua itu biasanya diatur oleh header time to live.
Lho, bagaimana dengan situs-situs penyedia berita yang selalu up to date? Untuk site yang seperti itu, time to live-nya akan di set=0 sehinga nantinya anda akan terus melakukan download setiap kali berkunjung.
Cukup nyaman bukan? Ya, tapi ancaman mulai timbul. Cobalah kini anda jelajahi opsi-opsi yang berkaitan dengan cache pada browser anda. Tentu anda bisa menemui bahwa ada fasilitas untuk menentukan berapa besarnya file temporary yang bisa disimpan di harddisk. Cari juga lokasi dimana file-file tersebut akan disimpan.
Coba anda buka folder tersebut, anda akan menemui file-file html & file-file gambar dari site-site yang sudah anda kunjungi. Pada Browser IE, anda bisa melihat lokasi file cache dengan menjelajahi menu Tools —> Internet options —> Settings
Lalu apa yang bisa didapatkan?? toh cuma file-file “sampah”?? Hmm… sekarang coba anda copy semua file yang ada di sana ke suatu folder. Lalu bukalah salah-satu file htmlnya. Jika itu komputer publik,anda bisa mengetahui situs apa saja yang telah diakses oleh oleh orang sebelum anda.
Hmm.. hanya dengan melihat file temporary anda bahkan bisa melihat password dan dll. Banyak saya temui situs yang menyimpan password dan menampilkannya pada url. Tentunya anda juga pasti sering membacanya di berbagai tutorial.
Kebanyakan browser pada saat ini memiliki fasilitas untuk menyimpan password. Misalnya saat meggunakan Mozilla Firefox, anda pasti sering menerima kotak dialog konfirmasi yang menanyakan apakah anda ingin password anda disimpan atau tidak oleh PasswordManager.Kebanyakan user cenderung untuk memilih opsi YES, entah itu dengan penuh kesadaran atau memang mereka tidak tau ( baca: tidak mau tau) apa maksud dari kotak dialog itu.
Orang lain yang kemudian mengunakan browser itu bisa dengan sangat mudah mendapatkan password korban dengan memasuki menu Tools —> Options —> Security –> Saved password.
Contoh lain adalah fasilitas wand password yang dimiliki oleh browser Opera. Saat anda memasukkan user name dan password pada suatu form dan menekan tombol submit, opera secara default akan meminta konfirmasi kepada anda apakah anda ingin browser menyimpan id dan password anda atau tidak. Lagi dan lagi… kebanyakan netter ceroboh, mereka cenderung untuk memilih opsi “YES”.
Lalu?? Orang lain yang kemudian menggunakan browser itu bisa melihat situs apa saja yang telah diakses oleh user, arahkan browser ke situs tersebut, letakkan cursor pada form isian user name, tekan [ALT]+[ENTER] dan BOOOMM!!!! Kenapa?? Jangan kaget dulu!! Hehehe.. form login akan otomatis terisi dengan user name korban lengkap dengan passwordnya ;D (It’s fun enough.. ;)
Ini hanya sebagian kecil contoh, jelajahi fitur-firtur browser lain!
[9]. Googling
Google.com. Banyak sudah situs yang runtuh, password dan nomor – nomor kartu kredit yang dicuri akibat dari ulah orang yang menyalahgunaan kesaktiannya ;) Dahulu, hal ini mudah dilakukan.Hanya dengan mengetikkan kata kunci tertentu yang berkaitan dengan user name dan password, anda bisa memanen ratusan password user melalui google. Tapi sekarang tampaknya anda harus gigit jari jika menggunakan cara diatas ;D
Jangan sedih dulu karena Google baru saja menelurkan produk barunya, yaitu Google Code Search. Ancaman baru mulai timbul, “si pintar” ini kini dapat meng-crawl hingga kepada archive file yang berada di public directory web server. Hati-hati yang punya kebiasaan untuk menyimpan informasi penting di dalamnya (password, dan info berharga lainnya) Sebaiknya mulai sekarang kebiasaan itu dihilangkan. Selalu proteksi folder-folder yang sensitif agar situs anda bisa hidup lebih lama. Kalo nggak… yach.. tunggu ajah ada orang yang memanfaatkan produk baru google ini untuk mengeruk informasi sensitif dari web server anda. dan jika itu sudah terjadi… maka bersiaplah.. “taman bermain” anda akan diambil alih olehnya..