Bash Script Şifreleme / R4V3N

R4V3N

Adanmış Üye
3 Tem 2016
6,258
36
25
Kocaeli
gif.gif


Bash script nasıl şifrelenir?

Eğer bash scriptinizi bazı nedenlerden dolayı şifrelemek istiyorsanız bunu SHC ile yapabilirsiniz. Scriptinizi SHC ile şifrelemek size temel bir koruma türü sağlar. Unutmayın ki SHC tarafından oluşturulmuş şifreli shell scripti normal kullanıcılar açısından okunabilir değiller lakin marifetli bir kullanıcı orijinal shell scriptini şifreli binary'den ayrıştırabilir. SHC, shell script compiler demek.

gif.gif


SHC'ı indirin ve aşağıda gösterildiği gibi kurun:

Kod:
[COLOR="white"]# wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.9.tgz
# tar xvfz shc-3.8.9.tgz
# cd shc-3.8.9
# make[/COLOR]

SHC'ın düzgünce kurulduğunu doğrulayın:

Kod:
[COLOR="white"]$ ./shc -v
shc parse(-f): No source file specified

shc Usage: shc [-e date] [-m addr] [-i iopt] [-x cmnd] [-l lopt] [-rvDTCAh] -f script[/COLOR]

gif.gif


Deneme amaçlı, SHC'ı kullanarak şifrelemek istediğiniz örnek bir bash shell scripti oluşturun:

Kod:
[COLOR="white"]$ vi random.sh
#!/bin/bash

echo -n "Kaç tane rastgele sayı oluşturmak istersiniz? "
read max

for (( start = 1; start <= $max; start++ ))
do
echo -e $RANDOM
done

$ ./random.sh
Kaç tane rastgele sayı oluşturmak istersiniz? 3
54213
7542
465[/COLOR]

gif.gif


random.sh shell scriptini SHC kullanarak aşağıda gösterildiği gibi şifreleyin:

Kod:
[COLOR="white"]$ ./shc -f random.sh[/COLOR]

Bu, aşağıdaki gibi iki tane daha dosya oluşturacak:

Kod:
[COLOR="white"]$ ls -l random.sh*
-rwxrw-r--. 1 ramesh ramesh 149 Mar 27 01:09 random.sh
-rwx-wx--x. 1 ramesh ramesh 11752 Mar 27 01:12 random.sh.x
-rw-rw-r--. 1 ramesh ramesh 10174 Mar 27 01:12 random.sh.x.c[/COLOR]

random.sh = Orijinal, şifrelenmemiş shell scripti.

random.sh.x = Binary düzeninde şifrelenmiş shell scripti.

random.sh.x.c = random.sh dosyasının C kaynak kodudur. Bu C kaynak kodu, yukarıdaki şifreli random.sh.x dosyasını oluşturmak için derlendi. SHC ardındaki bütün mantık, yukarıdaki random.sh shell scriptini random.sh.x.c C programına dönüştürmekten ve bittabi bunu çalıştırılabilir random.sh.x dosyasını oluşturmak için derlemekten ibaret.

Kod:
[COLOR="white"]$ file random.sh
random.sh: Bourne-Again shell script text executable

$ file random.sh.x
random.sh.x: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux, stripped

$ file random.sh.x.c
random.sh.x.c: ASCII C program text[/COLOR]

gif.gif


Beklendiği gibi çalıştığından emin olmak için şifreli shell scriptini çalıştıralım:

Kod:
[COLOR="white"]$ ./random.sh.x
Kaç tane rastgele sayı oluşturmak istersiniz? 3
2189
76234
34678[/COLOR]

Binary'nin kendisinin, scripti çalıştırmaya münasip olması için shelle (random.sh'daki ilk satır, örneğin /bin/bash) bağlı olduğunu unutmayın.

gif.gif


SHC'ı kullanarak ayriyeten sona erme tarihini de belirleyebilirsiniz. Demem o ki, belirlediğiniz tarih sonrasında birisi shell scriptinizi açmaya çalıştığı zaman bir hata mesajı alacak.

Kod:
[COLOR="white"]$ ./shc -e 31/12/2018 -f random.sh[/COLOR]

Bu örnekte, birisi random.sh.x dosyasını 31 Aralık 2018'den sonra açmaya çalıştığında gösterilecek varsayılan hata mesajı aşağıdadır:

Kod:
[COLOR="white"]$ ./random.sh.x
./random.sh.x: has expired!
Please contact your provider[/COLOR]

Eğer kendi hata mesajınızı yazmak isterseniz de bunu -m ile aşağıdaki gibi yapabilirsiniz:

Kod:
[COLOR="white"]$ ./shc -e 31/12/2014 -m "Scriptin yeni versiyonu için [email protected]'a ulaşın." -f random.sh

$ ./random.sh.x
./random.sh.x: has expired!
Scriptin yeni versiyonu için [email protected]'a ulaşın.[/COLOR]

gif.gif
 
Moderatör tarafında düzenlendi:

R4V3N

Adanmış Üye
3 Tem 2016
6,258
36
25
Kocaeli

'Taipan

Kıdemli Üye
30 Haz 2015
3,852
71
Eline sağlık. Çevirmen için kim önerdiyse çok güzel önermiş :trl
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.