Cara Lain Enkripsi Bash Script menggunakan Bash Obfuscate

Posted on

Bash Obfuscate

Sebelumnya saya sudah menulis artikel mengenai Cara Sederhana Encrypt Bash Script pada Linux Menggunakan SHC hanya saja memiliki sedikit kelemahan yaitu tidak bisa dijalankan pada server lain. Cara lain agar bash script yang sudah dienkripsi bisa digunakan server lain tanpa ribet yaitu menggunakan bash-obfuscate bisa dilihat pada: https://www.npmjs.com/package/bash-obfuscate

Ini menurut saya lumayan bagus karena kita tidak perlu menginstall script yang sama pada tiap server dalam hal ini jika menggunakan SHC, kita mesti install SHC juga pada server yang akan dienkripsi bashnya. Dari segi enkripsi mungkin SHC jauh lebih aman dari pada bash-obfuscate tapi bisa jadi sangat aman jika kita gabungkan bash-obfuscate dengan SHC. Bisa dijamin scriptnya gak ada yang bisa baca. hehe

Install NODE.JS

Hal pertama yang dilakukan adalah install dulu basenya script obfuscate yaitu node.js, dalam hal ini saya menggunakan server Ubuntu seperti ini:

apt-get install npm nodejs
ln -s /usr/bin/nodejs /usr/bin/node

Install bash-obfuscate

Cukup jalankan perintah seperti ini:

npm install -g bash-obfuscate

Usage

Usage: bash-obfuscate  [options]

Options:
  -o, --out                       Output file
  -c, --chunk-size, --chunk-size  Chunk size (for variables in obfuscated code)
                                                                    [default: 4]
  -r, --randomize                 Randomize variable order
                                                       [boolean] [default: true]

Uji coba enkripsi

Kita bisa menggunakan script yang ada di artikel Cara Sederhana Encrypt Bash Script pada Linux Menggunakan SHC random.sh, kemudian jalankan:

bash-obfuscate random.sh -o random2.sh

Nanti kurang lebih scriptnya jadi seperti ini:

# cat random2.sh 
z="
";Nz='rate';bz=' ))';Lz=' to ';Sz='(( s';Bz=' -n ';Xz='<= $';Kz='want';Fz='ndom';Mz='gene';Qz=' max';Yz='max;';Tz='tart';Az='echo';Dz=' man';Vz='; st';Uz=' = 1';dz=' -e ';Oz='? "';fz='DOM';Hz='bers';Rz='for ';Pz='read';Zz=' sta';Wz='art ';cz='do';az='rt++';ez='$RAN';Gz=' num';Iz=' do ';Ez='y ra';gz='done';Jz='you ';Cz='"How';
eval "$Az$Bz$Cz$Dz$Ez$Fz$Gz$Hz$Iz$Jz$Kz$Lz$Mz$Nz$Oz$z$Pz$Qz$z$Rz$Sz$Tz$Uz$Vz$Wz$Xz$Yz$Zz$az$bz$z$cz$z$Az$dz$ez$fz$z$gz"

Sama-sama gak bisa dibaca kan hehe, jika dijalankan mestinya langsung OK dan bisa digunakan pada server lain (Ubuntu/CentOS tested)

Baik cukup sampai sini ya, mudah-mudahan teman-teman bisa mengerti ya~~

See you in next article~

Gravatar Image
Seorang warga negara Indonesia biasa. Pengguna MAC dan develop server Ubuntu & CentOS. Contact : admin [at] nugi.biz

4 comments

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.