Memanggil Perintah Shell Menggunakan Modul os Pada Python

Pada tulisan saya sebelumnya, saya mengguakan pustaka subprocess pada Python untuk memanggil sebuah shell script. Ternyata hal ini juga dapat dilakukan dengan menggunakan pustaka os.

Berikut ini contoh program untuk melakukan ping yang sebenarnya adalah sebuah perintah shell yang dipanggil menggunakan Python:

Image

Variabel target adalah sebuah string hasil masukan, maka digunakan perintah raw_input(). Variabel ping adalah sebuah string perintah yang biasa dijalankan pada terminal. Kemudian digunakan perintah system() untuk menjalankan perintah ping tersebut.

Ketika dijalankan, hasilnya sebagai berikut:

Image

Selamat sore, selamat belajar! 🙂

Advertisements

Bersegera Memulai Atau Tertinggal

Saya terkesan dengan Raspberry Pi yang cukup fenomenal. Komputer seukuran KTP saya itu ramai diperbincangkan. Banyak juga orang-orang Indonesia yang memesannya. Ada lagi satu hal yang membuat saya lebih terkesan: Raspberry Jam.

Anak-anak Inggris belajar pemrograman pada usia awal belasan tahun dan Raspberry Jam memfasilitasinya. Anak-anak belasan tahun mempelajari Python, bahasa pemrograman yang setahu saya mahasiswa di kampus saya pun banyak yang belum pernah menggunakannya.

Tak heran kalau di luar sana muncul banyak ahli berusia muda. Ya, mereka memulainya sejak dini.

Bagaimana dengan Indonesia? Saya tidak tahu apakah kita tertinggal atau tidak dari negara-negara lain. Memang ada beberapa orang yang sangat ahli dari negeri ini. Yang jelas, kita pasti tertinggal jika tidak bersegera memulainya sejak dini. Ya, memulai belajar sejak usia muda, bidang apapun itu.

Oke, usia saya sudah tidak belasan tahun lagi. Saya menyesal. Tapi tak mengapa, mari kita memulai untuk generasi yang berusia belasan tahun.

Ya, kita mulai!

image

image

image

image

Ya, inilah generasi yang memulai mengenal pemrograman di usia belasan. Liburan kemarin saya pulang dan belajar bersama anak-anak muda SMAN 3 Madiun, mantan sekolah saya dulu. Ini mengasyikkan! Membuat liburan saya berwarna dan bermakna. 🙂

Mereka mempelajari HTML dan PHP. Mulai dari dasar HTML, sedikit komponen CSS, HTML Form, dsb. Juga dasar pemrograman PHP, if-else, dan pengulangan for dan while.

Meskipun sedikit, semoga efek encourage-nya besar. Membuat anak-anak ini ingin belajar lagi dan lagi. Membuat anak-anak ini punya ketrampilan. Membuat anak-anak ini ahli dalam keterampilannya. Membuat negeri ini punya generasi yang tidak tertinggal dari negara maju sekalipun! Merdeka! 🙂

Posted from WordPress for Android

Mengambil String Keluaran nmap yang Diinginkan Menggunakan Pemrograman Shell

Biasanya ketika kita menggunakan nmap, kita ingin tau port berapa saja yang terbuka dan layanan apa saja yang berjalan. Jadi saya iseng saja bikin program menggunakan bash untuk menampilkan hasil scan dari nmap karena biasanya nmap juga menampilkan banyak string ketika proses scanning berjalan. Hasil scan yang diinginkan adalah yang berada di dalam kotak merah:

Image

Selain itu, hasil dari scanning nmap ini akan dituliskan ke dalam sebuah berkas baru, yang mungkin saja berguna untuk pengolahan lebih lanjut.

Hal-hal yang perlu dipahami:

– Cara menjalankan nmap

– Argumen pada bash

Ya tentu saja pastikan nmap sudah terpasang pada komputer kita. Untuk memahami nmap bisa digunakan perintah nmap tanpa argumen. Argumen? Apa itu? Secara sederhana sekali sih, argumen itu sesuatu yang kita tuliskan setelah sebuah perintah. Misalkan ls -l, berarti -l adalah sebuah argumen.

Dalam pemrograman shell, argumen dapat didefinisikan menggunakan variabel $0, $1, $2, dst. Argumen $0 adalah nama script yang kita buat. Sedangkan $1 adalah argumen pertama, $2 argumen kedua, dan seterusnya.

Untuk jelasnya, ini script yang saya tulis:

Image

Intinya saya menjalankan perintah nmap -v -sS HOST kemudian mengambil string keluarannya dengan grep ‘open  ‘. Terakhir menuliskannya dalam sebuah berkas dengan perintah > NAMA_FILE. Perintah cat itu untuk menampilkan lagi isi berkas ke terminal. Script ini disimpan dengan nama aft-nmap.

Jadi untuk menjalankannya kita gunakan perintah ./aft-nmap HOST_TARGET OUTPUT_FILE misal saja ./aft-nmap http://www.contoh.co.id contoh. Tinggal jalankan saja dan lihat hasilnya. Karena saya pakai SYN Stealth jadi harus dijalankan oleh root.

Image

Bisa kita lihat berkas keluaran menggunakan aplikasi gedit:

 Image

Ngomong-ngomong, Selamat Tahun Baru 1434 Hijriyah! 🙂

Menggabungkan Shell Script dengan Python

Lama nih saya ga nulis di blog lagi (biasanya emang jarang nulis. hehe). Kali ini saya lagi belajar bahasa pemrograman Python. Yak, saya pemula banget. Cuman pingin berbagi dikit aja tentang bagaimana menggabungkan pemrograman shell dengan python. Ini bisa dilakukan dengan memanggil pustaka subprocess.

Untuk lebih jelasnya, mari kita bikin sebuah program shell sederhana dulu. Program shell ini nantinya yang akan dijalankan dari Python. Gunakan penyunting teks kesukaan Anda. Saya pake nano.

Image

Jangan lupa menambah atribut eksekusi pada program shell. Saya simpan dengan nama shell-hello jadi saya lakukan perintah chmod +x shell-hello.

Langkah kedua kita buat program python yang akan memanggil. Saya pake nano lagi:

Image

Oke, saya simpan dengan nama panggil-hello.py. Sekarang tinggal jalankan saja melalui terminal dan lihat hasilnya:

Image

Nemu blog bagus nih buat yang mau belajar python: http://klinikpython.wordpress.com/

Selamat malam! 🙂

[Opini] Membangun Komunitas Hacker

Sudah lama saya kepingin nulis ini. Tapi sering lupa, ga tau lupa kenapa. Karena kemaren dapet PM dari Ketua Himpunan jadi inget lagi. Ditulis deh.

Tulisan ini ditujukan khusus buat temen-temen D3 Teknik Telekomunikasi Institut Teknologi Telkom. Angkatan berapapun, terutama yang masih ada jatah kuliah. Buat dosen juga. Bahkan buat Kaprodi juga. Tentunya kalau mau baca. Hehehe.

Harapan saya sih biar D3 TT itu tambah maju. Lulusannya punya kompetensi dan keahlian khusus yang lebih baik. Banyak hacker yang dilahirkan dari jurusan ini nantinya. Ga lebih, ga kurang.

Hack, Hacking, Hacker?
Istilah hack pertama kali digunakan di Massachusets Institute of Technology (MIT). Mahasiswa MIT yang tergabung dalam sebuah lab, ketika berhasil membuat sebuah alat bekerja lebih baik dan lebih maksimal, ia biasa mengatakan: ‘I hack this stuff!’.

Richard Stallman pendiri GNU Project, mungkin dulunya termasuk mahasiswa MIT yang paling awal menggunakan kata hack. Dalam banyak tulisan dan ceramah yang dia berikan, seringkali dia mendefinisikan kata hack sebagai enjoy the playful cleverness. Ia juga seringkali mengatakan sebagai sesuatu yang fascinating fun. Singkatnya, mahasiswa MIT yang pertama kali memperkenalkan kata hack mendefinisikannya sebagai ngoprek. Dan orang pasti sangat senang menghabiskan waktu untuk ngoprek sesuatu yang ia sukai. Misalnya Richard Stallman sebagai Operating System Software Developer suka menulis kode untuk perangkat lunak dan menganggapnya sebagai sesuatu yang menyenangkan.

Hack tentunya meliputi banyak hal. Semua hal bisa menjadi bahan hack. Baik perangkat lunak maupun perangkat keras. Asal orang yang melakukannya (hacker) menyukainya.

Pengertian selama ini bahwa kegiatan hack (hacking) adalah seseorang menyusup ke dalam sistem orang lain secara tidak sah merupakan pengertian yang sempit dan membingungkan. Sialnya lagi, kebanyakan orang ketika mendengar kata ini pasti menganggap negatif, kriminal, dan penjahat.

Mari kita luruskan. Hacking diartikan sebagai ngoprek, bukan meretas yang berarti negatif dan kriminal. Sedangkan meretas yang berujung tindakan ilegal kita sebut sebagai cracking. Hacking berarti suatu yang asyik dan baik sedang cracking bisa saja asyik tapi tidak baik.

Kondisi D3 Teknik Telekomunikasi IT Telkom
Saya mengenal cukup banyak mahasiswa di D3 TT yang bisa disebut hacker. Dalam bidangnya masing-masing tentunya. Mulai dari robotik, pemrograman web, jaringan, mikrokontroler dan sebagainya. Mereka cukup ahli di bidang masing-masing. Mereka biasanya tergabung di suatu lab, bisa sebagai asisten, studi grup atau grup riset. Jumlahnya saya katakan relatif sedikit. Yah, saya akui saya tidak pernah benar-benar menghitung atau mengadakan survey tentang hal ini. Tapi saya yakin jumlahnya lebih sedikit daripada teman-teman yang tidak tergabung dalam lab, riset grup maupun studi grup.

Saya juga tahu beberapa prestasi yang dihasilkan dari para hacker ini. Saya juga yakin bahwa para hacker ini pasti lebih mudah mengerjakan Proyek Akhir (PA), ya karena mereka telah mendalami suatu bidang terlebih dahulu. Singkatnya, para hacker ini punya kelebihan daripada mahasiswa biasa non-hacker.

Saya akui lagi, saya tidak pernah benar-benar menghitung atau melakukan survey tentang hal ini: Mahasiswa non-hacker kebingungan apa topik PA mereka, bahkan belum terpikirkan sama sekali sampai habis Semester ke-4. Bahkan beberapa mahasiswa yang tergabung dalam suatu lab juga masih kebingungan. Terlebih ilmu untuk pengerjaan PA, sepertinya harus dimulai dari awal meskipun tidak bisa dibilang dimulai dari nol.

Tidak ada bukti kuantitatif tentang data di atas, tapi dari hasil diskusi yang saya lakukan dengan banyak orang, dengan teman-teman sekelas, dengan Ketua Himpunan, kami merasakan hal yang sama. Inilah keadaan di D3 TT yang kami rasakan.

Salah siapa? Kurikulum mungkin. Dosen mungkin. Institusi mungkin. Mahasiswa mungkin.

Menjadi Hacker
Saya males buang-buang tenaga buat mencari siapa yang salah. Tapi satu hal yang jelas: Tiap mahasiswa punya hak untuk menjadi hacker.

Dengan menjadi hacker tentunya mahasiswa lebih mudah untuk mengerjakan PA. Ya karena mereka akan memiliki ilmu terlebih dahulu, entah cukup atau belum untuk mengerjakan PA. Tentunya ilmu tadi pasti jadi modal yang sangat berharga. Ilmu yang dimaksud tentunya berdasarkan minat mereka sejalan dengan Program Studi D3 Teknik Telekomunikasi.

Selain itu, akan lebih banyak prestasi diukir oleh para hacker D3 TT. Pimnas, GemasTIK, INAICTA, KRI, KRCI akan lebih mungkin dimenangkan bila jumlah hacker lebih banyak.

Lebih jauh lagi, ketika lulus teman-teman hacker akan memiliki kompetensi. Kompetensi berupa keahlian berdasarkan bidang yang dia suka melakukan hacking. Para hacker bisa mengikuti sertifikasi yang ada berdasarkan keahlian mereka. Teman-teman tidak akan lulus tanpa punya keahlian tertentu. Ini akan jadi bekal berharga nantinya ketika memasuki dunia kerja.

Ya jadi semua harus jadi hacker. Ya, semua. Jadi hacker juga ada syaratnya. Yang paling pertama tentu menemukan: Apa yang akan kita hack?

Menemukan apa yang kita sukai adalah bagian yang sulit untuk menjadi seorang hacker. Atau mungkin bagian paling sulit.

Membangun Komunitas Hacker
Hacker punya komunitas. Yang sekarang sudah berjalan di IT Telkom adalah komunitas yang berada di lab dan bergantung pada lab. Sayangnya komunitas ini terbatas. Jumlah asisten lab itu terbatas. Jumlah peserta studi grup itu terbatas. Tentunya ini tidak akan cukup menampung semua mahasiswa yang punya hak yang sama untuk menjadi hacker.

Kemandirian mahasiswa sendirilah yang bisa jadi solusi. Perlu rasanya para calon hacker untuk membentuk komunitas mereka sendiri. Komunitas yang lebih tidak terbatas jumlah. Semua anak D3 bisa menjadi hacker sesuai dengan bidang yang diinginkan. Sebenarnya, secara umum hal ini bisa disebut studi grup, belajar sendiri dalam kelompok-kelompok.

Yang menyukai bidang A berkumpul dan membentuk studi grup sendiri, khusus mempelajari bidang A. Dalam kelompok tersebut bisa jadi ada anak yang sudah mengusai bidang A. Jadi dia bisa bertugas untuk mengajari yang lain. Ini akan memudahkan. Jika belum ada satu orang pun yang menguasai, kelompok tersebut bisa berdiskusi bersama. Bahkan bisa saja satu kelompok tersebut mencari orang ahli dari luar untuk membimbing mereka. Dari komunitas seperti inilah para hacker akan terbentuk. Jumlahnya juga tidak dibatasi oleh jumlah anggota yang ditentukan oleh suatu lab.

Apa peran himpunan/dosen/kaprodi/institusi?
Mungkin sekilas terlihat semuanya bisa dilakukan sendiri oleh mahasiswa tanpa campur tangan yang lain. Tapi saya rasa komponen-komponen di atas (himpunan, dosen, kaprodi, institusi) bisa jadi bakal mengambil peran penting yang akan sangat berpengaruh kepada komunitas-komunitas hacker yang ada. Atau bahkan sebelumnya, komponen-komponen inilah yang bisa menginisiasi adanya komunitas hacker tersebut.

a. Himpunan sebagai Inisiator
Bisa jadi suatu komunitas hacker telah dibentuk oleh beberapa mahasiswa yang memiliki kesamaan. Tapi, bukankah lebih baik jika yang menginisiasi adalah pihak yang sudah pasti dikenal oleh semua rakyatnya? Di sini bisa jadi himpunan mahasiswa sebagai ‘pemilik’ komunitas-komunitas hacker yang dimaksud. Himpunan mahasiswa tentu sudah dikenal oleh semua pihak dan lebih menguasai media kampus daripada mahasiswa yang perseorangan. Intinya efeknya akan lebih kuat jika himpunan yang memperkenalkan adanya komunitas-komunitas hacker.

b. Kaprodi sebagai Motivator
Akan sangat besar efeknya jika kaprodi mendorong semua mahasiswa untuk berprestasi dan ahli dalam suatu bidang. Kaprodi bisa melakukannya dengan mendorong untuk membentuk komunitas-komunitas hacker sendiri. Bahkan, seandainya komunitas-komunitas hacker ini sudah berjalan cukup lama dan cukup baik, bisa saja kaprodi ‘mewajibkan’ setiap mahasiswa untuk memilih komunitas yang sesuai dengan minat masing-masing.

c. Dosen sebagai pembimbing
Dosen pasti mau berbagi ilmu dan membimbing komunitas-komunitas ini. Bisa jadi dosen tidak mungkin untuk mengajar komunitas ini karena keterbatasan waktunya dan sebagainya. Tetapi suatu komunitas ini pasti perlu pengarahan dari orang yang lebih berwawasan dan lebih mengerti di bidangnya.

d. Akses ke lab
Saya rasa setiap mahasiswa mempunyai hak untuk mempergunakan setiap fasilitas yang ada di kampus. Tentunya menggunakannya secara bijak dan bertanggung jawab. Termasuk komunitas ini tentunya suatu saat sangat membutuhkan fasilitas yang ada di lab entah berupa peralatan, komputer, server atau apapun. Dengan kesepakatan bersama pengelola lab tentu ini bisa dilakukan dan sangat membantu komunitas-komunitas hacker tersebut.

Di dunia kerja bisa jadi keahlian teknis sangat diperlukan, bisa jadi juga tidak terlalu digunakan. Bisa jadi di kemudian hari kemampuan sosial itu lebih diperlukan: kejujuran, kemauan, saling berbagi, dan sebagainya.

Saya percaya bahwa komunitas hacker seperti ini bakal mengasah baik kemampuan teknis maupun kemampuan bersosial. Tidak hanya ngoprek, tapi tiap anggota akan saling berbagi, saling membantu, jujur dan tidak berkhianat terhadap yang lain, dsb. Ini akan jadi bekal penting di kemudian hari.
Yang Sudah Berjalan
Penulis adalah salah satu penghuni kelas D3 TT 34-03. Di kelas ini, sudah pernah dibentuk beberapa komunitas hacker antara lain: Studi Grup Java-Android, Studi Grup Keamanan Jaringan, Studi Grup Mikrokontroler, dan Studi Grup Antena. Beberapa anggota kelas sudah mendaftar ke komunitas yang mereka inginkan. Bahkan, Studi Grup Java-Android dan Keamanan Jaringan sudah ada dosen yang bersedia menjadi pembimbing.

Komunitas di kelas kami ini berjalan kurang baik. Mungkin karena waktu dan keadaan yang kurang tepat. Komunitas-komunitas ini baru dibentuk ketika perkuliahan semester 4 hampir selesai. Ketika itu sedang banyak kegiatan lain dan tugas serta persiapan Ujian Semester. Jadi komunitas ini kurang diperhatikan oleh anggotanya sendiri.

Penulis yakin, jika komunitas-komunitas ini dijalankan pada waktu dan kondisi yang tepat, tentu akan berjalan dengan baik mengingat semangat teman-teman D3 untuk belajar hal baru begitu tinggi.

Jadi alangkah baiknya jika komunitas-komunitas hacker ini mendapat dukungan dari berbagai pihak terkait. Disosialisasikan juga ke semua kelas, semua angkatan khususnya teman-teman D3 TT. Hacker-hacker baru akan bermunculan dan prestasi insya Allah akan lebih baik.

Madiun, 27 Juni 2012

Ahsan Fathoni
Rakyat Elko Biasa

Google Hacking, Permudah Pencarian

Bolehlah saya bilang, Google Hacking adalah suatu teknik mencari informasi melalui search engine Google. Informasi ini bisa saja berupa kesalahan dari sebuah web yang tidak disadari oleh si pembuat web. Teknik ini dilakukan dengan cara mencari keunikan dari setiap halaman yang dicari. Begitulah kata buku C|EH karangan master S’to.

Ya tapi sebagai pembaca, sebaiknya tidak mempelajari teknik ini untuk tujuan yang tidak baik. Semoga saja bisa membantu kalau-kalau lagi mencari sesuatu yang penting.

Beberapa teknik yang cukup simple bisa Anda coba. Misalkan saja untuk mencari sebuah file bertipe .pdf, .ppt (biasa mahasiswa cari) atau apalah yang Anda inginkan, pake aja perintah filetype: diikuti tag yang ingin dicari. Misalkan nih, saya mau cari pdf tentang mata kuliah komunikasi data, okelah saya ketik filetype:pdf komunikasi data. Keluar deh.

pdf komunikasi data

Kalo mau nyari di suatu domain tertentu, bisa juga pake perintah site:. Misal nyari berita korupsi di detik.com bisa pake site:detik.com korupsi. Maka akan muncul hasilnya di detik.com dan sub domainnya.

Masih banyak sih teknik-teknik mencari informasi seperti ini. Masih ada perintah inurl:, intitle:, dan sebagainya. Bisa Anda coba-coba sendiri.

Untuk mempelajari lebih lanjut. Langsung aja ya maen ke si master Google Hacking yang udah bikin databasenya di http://www.hackersforcharity.org/ghdb/

Semoga bermanfaat 🙂