Mungkin sebagian pengguna ada yang menggunakan (alat bantu) yang ditulis dengan bash shell script untuk memudahkan mengelola atau menggunakan sistem operasi linux dalam hal otomatisasi atau pintasan/antar muka dari perintah baris, selain praktis penggunaan bash script sangat mudah, hampir seluruh distribusi linux mendukungnya, namun penggunaan bash shell script bukan tanpa kekurangan, salah satu resiko dari penggunaan bash shell script adalah seluruh perintah yang digunakan dapat terbaca oleh manusia dengan alat bantu editor text.
Bagi sebagian pengguna, kekurangan tersebut mungkin tidak jadi masalah, tapi bagaimana dengan pengguna paranoid yang khawatir bash shell script yang telah ia tulis terbaca oleh pihak yang tidak dikehendaki, atau bagaimana jika anda sebagai pengembang yang harus mendistribusikan sebuah program dengan menyertakan bash shell script, dan ingin memastikan tidak ada perubahan dan modifikasi oleh pihak yang tidak bertanggung jawab,
Bagi sebagian pengguna, kekurangan tersebut mungkin tidak jadi masalah, tapi bagaimana dengan pengguna paranoid yang khawatir bash shell script yang telah ia tulis terbaca oleh pihak yang tidak dikehendaki, atau bagaimana jika anda sebagai pengembang yang harus mendistribusikan sebuah program dengan menyertakan bash shell script, dan ingin memastikan tidak ada perubahan dan modifikasi oleh pihak yang tidak bertanggung jawab,
SHC generic shell script compiler atau disebut SHC saja adalah perangkat lunak yang dapat digunakan untuk menyembunyikan/enkripsi sebuah shell script menjadi tidak terbaca oleh manusia, SHC bekerja dengan merubah shell script menjadi kode sumber bahasa C kemudian dikompilasi menggunakan GCC, hasil akhir dari bash shell script yang diproses oleh SHC adalah sebuah binary linux ELF, perbandingan bash shell script yang telah dienkripsi dan tidak, dapat dilihat pada gambar dibawah ini :
bash shell script yang belum dikompilasi/enkripsi |
bash shell script yang telah dikompilasi/enkripsi |
Isi dari bash shell script yang telah dikompilasi/enkripsi dibaca menggunakan HexEditor |
Bash Shell Script yang telah dikompilasi/enkripsi idealnya memang telah aman dari pembaca atau modifikasi pihak lain namun sebuah usaha dari "pengguna" telah berhasil mendecrypt shell script yang telah dikompilasi menggunakan SHC, pembahasan mengenai permasalahan ini dapat dibaca pada artikel berikut,
http://www.l0d.org/Decrypt_an_shc_crypted_file.html
Meskipun telah ditemukan metode untuk mendekripsi shell script yang telah dikompilasi/enkripsi menggunakan SHC, shell script yang telah dikompilasi/enkripsi menggunakan SHC relatif lebih aman karena tidak dapat terbaca langsung oleh manusia dan membutuhkan usaha yang lebih untuk mendekripsikanya,
Penggunaan SHC sangat mudah, bahkan pengguna dapat menambahkan tanggal kadaluarsa atau menampilkan license,
Penggunaan standar SHC
shc -f bash_script.sh
Perintah diatas akan menghasilkan dua berkas,
bash_script.sh.x = eksekutabel binary linux ELF
bash_script.sh.x.c = kode sumber bahasa C dari bash shell script yang telah dikonversi,
SHC versi terakhir hingga saat ini versi 3.8.9, untuk memasang SHC pada sistem operasi Ubuntu 10.04/12.04/12.10/13.04 dapat menggunakan PPA berikut,
sudo add-apt-repository ppa:wagungs/personal
sudo apt-get update sudo apt-get install shc
Pengguna sistem operasi fedora 18/17/16 dan distribusi turunannya dapat mengunduh paket .rpm SHC pada alamat berikut :
shc-3.8.9-1.fc18.i686.rpm
shc-3.8.9-1.fc18.x86_64.rpm
Pengguna sistem operasi linux lainnya dapat mengunduh SHC yang telah dikompilasi, dapat langsung dijalankan (portable), membutuhkan GCC.
shc-3.8.9-i686.tar.gz
shc-3.8.9-x86_64.tar.gz
SHC juga mendukung KornShell (ksh).
shc-3.8.9-i686.tar.gz
shc-3.8.9-x86_64.tar.gz
SHC juga mendukung KornShell (ksh).
0 komentar:
Post a Comment
Note: Only a member of this blog may post a comment.