Renungan

“Takkan bergeser kedua kaki manusia pada hari kiamat sampai selesai ditanya tentang 4 perkara: tentang UMURNYA, untuk apa dihabiskan; tentang MASA MUDANYA, untuk apa dipergunakan; tentang HARTANYA, dari mana diperoleh dan untuk apa dibelanjakan; dan tentang ILMUNYA, apa yang sudah diperbuat dengannya.”(HR. At-Tirmidzi no.2417)

Thursday, November 21, 2013

PENGEMBANGAN SOFTWARE APLIKASI PERKANTORAN DENGAN METODE WATERFALL


PENGEMBANGAN SOFTWARE APLIKASI PERKANTORAN DENGAN METODE WATERFALL
Seiring dengan perkembangan sebuah perusahaan kebutuhan akan software aplikasi perkantoran baik local maupun online sangat penting untuk dapat meningkatkan aktifitas dan produktifitas kerja dalam sebuah perusahaan. Contohnya Sofware aplikasi Accounting, Payroll, Warehouse, ERP, SAP, Website, dll.
Untuk memudahkan dalam hal perancangan aplikasi diperlukan tahapan-tahapan agar program dapat dibuat sesuai dengan kebutuhan, tidak asal coding atau langsung main buat begitu saja. Berikut salah satu tahapan pengembangan Software Aplikasi dengan Waterfall :


Waterfall atau Classic life Cycle

1. Scope : menganalisa scope atau cakupan dari software yang akan kita buat.
2. Software Requirement : menganalisa software apa saja yang akan dibutuhkan sebagai sarana pendukung dalam proses pengembangan yang akan kita buat.
3. Analisa : Proses dimana kita memikirkan apa yang dapat dilakukan software yang akan kita buat kelak.
4. Perancangan :Perancangan  dimana kita merancang struktur dari software yang akan kita buat.
5. Implementasi : Implementasi adalah proses melaksanakan,eksekusi, atau praktek dari rencana, metode, atau desain dalam pengembangan perangkat lunak.
6. Pengujian : Untuk mengetahui kelemahan atau kekurangan dari software yang telah kita kembangkan sebelum dipakai oleh user atau pengguna.
Ada dua tahapan dalam pengujian :
1. Black box testing
Black box testing pengujian perangkat lunak sebagai “kotak hitam” – tanpa pengetahuan tentang pelaksanaan internal.
2. White box testing
White box testing adalah pengujian yang memiliki akses ke struktur data internal dan algoritma termasuk source code.

Demikian langkah – langkah penggunaan metode waterfall. Dengan metode waterfall pengembangan software akan lebih terarah dan sesuai dengan apa yang menjadi kebutuhan.

Wednesday, November 20, 2013

TATA KELOLA DAN AUDIT SISTEM IT DENGAN FRAMEWORK COBIT

TATA KELOLA DAN AUDIT SISTEM IT / ( IT GOVERNANCE )
DENGAN FRAMEWORK COBIT

Teknologi Informasi merupakan hal yang sangat berharga bagi perusahaan. Perusahaan yang sukses mengakui keunggulan teknologi informasi dan menggunakannya untuk mendorong nilai stakeholder.

Tujuan : 
Menyelaraskan strategi Departemen Teknologi Informasi dalam mencapai tujuan perusahaan yang terdefinisi pada pernyataan visi dan misi perusahaan.
Manfaat : 
1.Teknologi Informasi dapat menopang dan memperluas strategi organisasi dan tujuan. 
2.Memungkinkan perusahaan untuk mengambil keuntungan penuh dari Teknologi Informasi. 
3.Memaksimalkan manfaat guna memperoleh keunggulan kompetitif.
Persyaratan : 
1.Kualitas, fidusia dan keamanan informasi dalam berbagai aspek maupun aset. 
2.Mengoptimalkan penggunaan sumber daya Teknologi Informasi yang tersedia, diantaranya aplikasi, infrastruktur, dan sumber daya manusia. 
3.Mengorganisasikan kegiatan IT ke dalam model proses.

Control Objective for Information and related Technology
Ada 4 Domain Control Objective for Information and related Technology :
1. Perencanaan dan Organisasi (Plan and Organise) 
Mencakup strategi dan taktik yang menyangkut identifikasi tentang bagaimana IT dapat memberikan kontribusi terbaik dalam pencapaian tujuan bisnis perusahaan sehingga terbentuk sebuah organisasi yang baik dengan infrastruktur teknologi yang baik pula.

2. Pengadaan dan implementasi (Acquire and Implement) 
Untuk mewujudkan strategi IT, solusi IT perlu diidentifikasi, dibangun atau diperoleh dan kemudian diimplementasikan dan diintegrasikan dalam proses bisnis.

3. Pengantaran dan dukungan (Deliver and Support) 
Penyampaian layanan yang diinginkan, yang terdiri dari operasi pada security dan aspek kesinambungan bisnis sampai dengan pengadaan training.

4. Pengawasan dan evaluasi (Monitor and Evaluate) 
Semua proses IT dinilai secara teratur dan berkala bagaimana kualitas dan kesesuaiannya dengan kebutuhan kontrol.

Dengan berpedoman pada metode Control Objective For Information And Related Technology model proses IT dibagi menjadi 4 domain dan 34 proses sesuai dengan tanggung jawab masing-masing guna  membantu mengidentifikasi sumber daya yang penting bagi keberhasilan proses, aplikasi, informasi, infrastruktur dan sumber daya manusia. 

Management Guidelines: 
1.Apa saja indikator untuk suatu kinerja yang bagus? 
2.Apa saja faktor atau kondisi yang harus diciptakan agar dapat mencapai sukses ( critical success factors )? 
3.Apa saja risiko-risiko yang timbul, apabila kita tidak mencapai sasaran yang ditentukan? 
4.Bagaimana dengan perusahaan lainnya – apa yang mereka lakukan? 
5.Bagaimana Anda mengukur keberhasilan dan bagaimana pula membandingkannya.

Pengelolaan yang dilakukan adalah berdasarkan kajian 
1.What :   keputusan IT apa yang perlu dibuat,  misal pembelian server baru, pengembangan aplikasi / software perkantoran.
2.Who :    siapa saja yang akan terlibat 
3.How : prosedur pengambilan keputusan, Contoh pembelian hardware harus didasari kebutuhan dari lead business analyst, architecture lead akan memberi masukan berdasarkan kebutuhan apakah perlu membeli yang baru atau masih ada hardware lama yang dapat digunakan.
4.Peran IT bagi organisasi (strategis, utilitas, support, atau high potential) 
5.Arsitektur, desain dasar / building blocks yang menggambarkan  hubungan antar aplikasi. 
6.Infrastruktur, bagaimana membuat layanan-layanan umum IT dapat dipakai bersama dalam jangka panjang.
7.Fleksibel terhadap perubahan kebutuhan bisnis akan IT, Misalnya jaringan, layanan email, dan portal pegawai.
8.Aplikasi bisnis, aplikasi yang diperlukan dalam menjalankan bisnis, perlu menyeimbangkan kreativitas dan disiplin.
9.Investasi dan prioritas. pengeluaran biaya IT perlu dipertimbangkan keuntungan dan kerugiannya bagi bisnis. Jika ada beberapa biaya yang harus dikeluarkan, perlu dilakukan prioritas dengan mendahulukan biaya terkecil dengan dampak terbesar. hal ini bisa dilakukan dengan benchmarking ke organisasi sejenis, atau dengan analisa kebutuhan, prioritaskan yang paling mendesak.

Demikian secara ringkas mengenai Tata Kelola IT dengan Framework COBIT yang sempat saya rancang di sebuah perusahaan, untuk lebih jelasnya anda bisa membaca artikel-artikel mengenai Framework COBIT. Framework Cobit yang pernah saya gunakan ialah COBIT Versi 4.1 atau Cobit lama yang terbaru adalah COBIT 5, semoga bermanfaat.

PEMROGRAMAN SOCKET PADA PHP



Socket programming merupakan bahasa pemrograman yang dapat mengkomunikasikan beberapa komputer. Socket programming tidak hanya dapat berfungsi sebagai tukar menukar data melainkan juga dapat berkomunikasi dengan program lain yang berjalan pada platform non-unix melalui jaringan TCP/IP. Pada mesin unix terdapat fasilitas rlogin, ssh, ftp, dll yang menggunakan socket. Socket terdiri dari beberapa elemen utama dantaranya: 
1.Protokol 
2.Local IP 
3.Local Port 
4.Remote IP 
5.Remort Port

Protocol Family pada socket : 
1.AF_INET = IPv4 dan AF_INET6 = IPv6 adalah protocol berbasis internet termasuk TCP dan UDP 
2.AF_UNIX = berfungsi sebagai komunikasi local

Tipe-tipe komunikasi pada socket : 
1.SOCK_STREAM 
2.SOCK_SEQPACKET 
3.SOCK_RAW 
4.SOCK_RDM 
5.SOCK_DGRAM

Spesifik Protokol pada socket : TCP, UDP, ICMP

Contoh script pembuatan socket :

Script Socket Untuk Server
mainserver.php
<? php

//SET WAKTU
set_time_limit (0);

//MEMBUAT SOCKET
if (($socket=socket_create(AF_INET, SOCK_STREAM, SOL_TCP))<0)
{
echo "socket_create() function failed, because :"
.socket_strerror($sock). "\n";
}
else { echo "creating socket : OK \n";
}

//MEMBIND KE ALAMAT IP TERTENTU
If (($ret=socket_bind($sock,'127.0.0.1' , 21))<0)
{
echo "socket_bind() function failed, because : "
.socket_strerror($ret). "\n";
}
else
{
echo "binding socket : OK \n";
}

// MENSET AGAR SELALU DAPAT MENERIMA KONEKSI

if (($ret=socket_listen($sock, 5))<0)
{echo "socket_listen() function failed, because : "
.socket_strerror ($ret) . "\n";
}
else
{
echo "server listening for new incoming connection… \n";
}

//MENERIMA KONEKSI
do
{
if (($msgsock=sock_accept($sock))<0)
{
echo "accepting conection failed because : "
.socket_strerror($msgsock). "\n";
exit();
}
else
{
echo "Got Connected with client \n";
}
// MENGIRIM PESAN
$msg="Welcome to TCP Server Kantorku.com \n";
echo $msg;
socket write($msgsock, $msg, strlen($msg));
do
{
if (false===($buf=socket_read($msgsock, 2048, 30)))
{
echo "socket_read(_ function failed because :" .socket_strerror($buf) ."\n";
break 2;
}
if (!$buf=trim($buf))
{ continue;}
if ($buf=='quit')
{ break;}
if ($buf=='shutdown')
{ break 2; }
socket_write($msgsock, $buf, strlen($buf));
echo "$buf\0\n";
}
while (true);
socket_close ($msgsock);
}
while (true);

//MENUTUP SOCKET
socket_close($sock);
?>

Script Socket Untuk Client
client.php

<? php

//SET WAKTU
set_time_limit (0);
if (($sockcl=socket_create(AF_INET, SOCK_STREAM, SOL_TCP))<0)
{
echo " Error Bos, Tidak bisa bikin Socket".socket_strerror($sockcl) ."\n";
}
else
{
echo "Creating Socket : OK BOS \n";
}
if (($msgsockcl=socket_connect ($sockcl, '127.0.0.1', 21))<0)
{
echo "Ga bisa connect ke alamat target \n";
}
else
{
echo " Success Bos\n";
}
$stdin=fopen('php://stdin', 'r');
do
{
echo "Isikan pesan : ";
$pesan=fgets($stdin,50);
socket_write($sockcl, $pesan, strlen($pesan));
}
while (true);
fclose($stdin);
socket_close($sockcl);

?>
Jalankan program dengan menggunakan jendela command

Monday, November 11, 2013

HACKER - TEKNIK HACKING


Cracker, Hacker,  atau Peretas adalah seseorang atau kelompok yang melakukan kegiatan untuk masuk ke sebuah sistem tertentu yang di inginkan. Biasanya aksi ini dilakukan tanpa mempunyai akses resmi ke dalam sistem yang menjadi target. Sebenarnya teknik-teknik hacking bertebaran di internet baik yang menggunakan tools maupun membuat script program sendiri. Pernahkah anda menonton FILM MATRIX, ada salah satu adegan hacking yang memang tools tersebut digunakan untuk meghack. 

Berikut sedikit teknik hacking :



SQL Injection : (structure query languange injection) pernah dipakai oleh hacker penembus website Komisi pemilihan umum. Bagaimana melakukan nya ?

SPOOFING : Hacker situs KPU melakukan Spoofing untuk melewati IP KPU dengan menggunakan IP Proxy Thailand, alamat IP : 208.147.1.1 hacker menambahkan perintah SQL pada URL (Uniform Resource Locator) yang merupakan rangkaian karakter menurut suatu format standar tertentu. Kemudian hacker menganalisa kolom pada tabel website KPU selanjutnya hacker memodifikasi URL. Teknik membaca field dan tabel ditemukan oleh David Litchfield. Menambahkan perintah pada URL, dengan mengetikan having 1=1. Setelah hacker mengetahui nama field. Hacker KPU kemudian menambahkan perintah SQL pada URL dengan mengetikan Group By table xxx having 1=1.

Header HTTP : http header bisa dilakukan dengan berbagai cara oleh hacker baik dengan bantuan proxy maupun membuat script sendiri istilah keren nya MAN IN THE MIDDLE. Proxy berada diantara Client dan Web Server, ketika browser pada client mengirim data maka proxy akan menahan data tersebut yang kemudian hacker menganalisa dan merubah data sesuai kehendaknya dan kembali mengirimkan data yang telah dirubah ke dalam web server.

Shell Injection : sebuah program yang dibuat untuk melakukan perintah ping secara online terhadap target / host yang di inginkan melalui shell sistem operasi. Saat perintah ping dilakukan dan target diketahui sedang aktif maka hacker memulai aksinya. Perintah ping mungkin biasa digunakan, namun bagaimana jika hacker melakukan perintah ping dengan perintah – perintah lain dalam waktu yang bersamaan, Misalkan Ping & dir C atau dir I find “nama directory yang dituju”. Dengan begitu secara otomatis hacker telah menguasai komputer target.

Session Fixation atau Cookie Fixation :  Teknik Session Fixation pertama kali ditemukan oleh Mitja Kolsek. session digunakan untuk menjaga data antar halaman dan menyimpan kode aktif ke dalam komputer sedangkan cookie sebagai media penyimpanan data kedalam komputer, selanjutnya data disimpan ke dalam server. Dengan cookie dan session inilah sebagian hacker menjalankan aksinya mengambil dan menganalisa serta membaca nilai cookie maupun session. 

HTTP Tunnel : merubah data dalam bentuk HTML yang kemudian akan mengecoh proteksi firewall, http tunnel bisa di enkapsulasi saat melewati proteksi firewall setelah melewati proteksi firewall menuju tunnel endpoint maka http tunnel akan di dekapsulasi kembali kebentuk aslinya.


Demikian sebagian teknik hacking yang saya ulas kembali sebagai masukan bagi anda. Saya tidak menjelaskan teknis detailnya karena saya tidak ingin berbagi sesuatu yang akan menjadikan nya tidak baik. Artikel ini hanya sebagai masukan saja untuk mengantisipasi dan menganalisa kekurangan-kekurangan dari sistem IT yang kita buat baik itu jaringan maupun program aplikasi. Di dunia maya apapun bisa terjadi, semoga bermanfaat.

AdSense

AdSense