Powershell in ne olduğundan ve faydalarından Buradaki yazımızda kısaca bahsetmiştik , özellikle sistem yöneticileri geliştirdikleri Poweshell kodlarının başkaları tarafından görünmesini istemeyebilirler
, bunu yapmanın en kestirme yollarından biride bunları .exe yapmaktır , bu konuda açık kaynak kodlu bir yazılım mevcut , aslında buna yazılımdan ziyade bir script demek daha doğru olacaktır. PS2EXE , herhangi bir Powershell scriptini / kodunu .exe ye çeviren kullanışlı bir yazılımdır , çalışma prensibi şu şekildedir : Powershell scriptini C# ile yazılmış hafif bir PowerShell hostu ile kapsüller ve dinamik olarak hafızada oluşturulan C# kaynak kodunu .exe ye çevirir (derler) , ortaya çıkan .exe bir .NET assembly olup kaynak scriptin Base64 formatında encode edilmiş kodunu içerir , sonuç exe sinin çalışabilmesi için:
1. Sisteminizde Powershell kurulu olmalıdır
2. Sisteminizde .NET Framework v2.0 ve/veya üstü kurulu olmalıdır
3. Powershell yetkileri script çalıştırmanıza izin vermelidir
ilk ikisi çoğu sistemde zaten mevcut olduğundan kısaca Powershell yetki kısmı üzerinde duracağım , Öncelikle sistemimizde powershell scriptlerinin yetki hatası olmadan çalışması için bir küçük düzenleme yapmamız gerekir ; aramaya Powershell yazalım açılan ekranda aşağıdaki komutu verelim:
Start-Process PowerShell -Verb RunAs
Powershell admin modunda açılmış olmalı hemen sonrasında aşağıdaki komutu verelim
Get-ExecutionPolicy
Muhtemelen aşağıdakilerden biri yazacaktır :
Restricted : Scriptler çalışamaz. Windows PowerShell sadece interactive modda çalışabilir
AllSigned : sadece trusted publisher tarafından imzalanan scriptler çalışabilir
RemoteSigned : Download edilen scripler güvenilir bir yayımcı (trusted publisher ) tarafından imzalanmış olmalıdır , yoksa çalışmaz
Unrestricted : kısıtlama yok bütün Poweshell scriptleri çalışacaktır
Şimdi aşağıdaki komutu verelim
Set-ExecutionPolicy RemoteSigned
Böylece Powershell scriptlerimize çalışma yetkisi vermiş olduk , siz Unrestricted i de verebilirsiniz , tekrar .exe yapma işimize geri dönelim. PS2EXE aslında kendisi de bir Powershell scriptidir , yazının sonundaki adresten gerekli dosyayı indirelim ve .zip dosyasından çıkartalım, içerisinde 5 adet dosya göreceksiniz bunlardan "createDemo.bat" ı .exe mizi oluşturmak için kullanacağız , ben sizlerle daha önce burada paylaştığım ve windows exploreri yeniden başlatan scripti .exe haline getireceğim , scriptimiz aşağıda:
$proc = Get-Process foreach ($objItm in $proc) { If ($objItm.ProcessName -eq "explorer") { kill $objItm.ID } }
üstteki kodu bir notepad e yapıştırıp ismine de "restart_explorer" deyin ve uzantısı .ps1 olacak şekilde kaydedin , eğer createDemo.bat ı sağ tıklayıp notepad ile açarsak .exe yi hangi özelliklerde oluşturabileceğimizi görebiliriz , mesela x86 veya x64 e göre derleyebiliriz , ben "callPS2EXE.bat" ın yanına "exe_yap.bat" isimli bir bat dosyası oluşturup içine de aşağıdaki kodu yazdım:
call "callPS2EXE.bat" "restart_explorer.ps1" "restart_explorer.exe"
"restart_explorer.ps1" , exe ye çevrilecek dosya ismim ve "restart_explorer.exe" de çıktı ismim olacaktır , siz bunları kendinize göre özelleştirebilirsiniz , exe_yap.bat a çift tıkladığınıza exe niz oluşacaktır
denemek için exe nizi çalıştırın , explorerin yeniden başlayacaktır. Oluşan restart_explorer.exe yi Virustotalde tarattım ve herhangi bir zararlı bulamadı Burada
Lisans: Freeware/Ücretsiz
Yayımcı: codeplex.com
Boyut: 12,3 KB
Sistem: Windows XP ve üzeri bütün windowslar
- Power GUI ile Powershell scriptlerini exe yapalım Burada
- Uzantısı ps1 olan bir Poweshell scripti nasıl çalıştırılır Burada
- Powershell komutları ile dosya veya Klasör silmek Burada
- Powershell scriptlerini kısayol ile çalıştıralım Burada
- Powershell Yetki sorunlarını çözelim Burada
- Powershell Komutu ile zip dosyası oluşturalım Burada
Sorun bu aracı kullanarak zararlı paketlemeleri, yoksa exe yapıcının kendisi temiz.
Powershell ile yaptığım bir kaç kişisel sistem var gui olarak bunu exe yapmak istiyoeum ama ps2exe ye güvenebilirmiyim server sisteminde kullanıyorum çünkü bir sefer denediğümde kendi yaptığım exe ye bitdefender virüs uyası vermişti ve hemen silmiştim exe yaparken kendisi içine bir şey ekliyormu emin olamadım çünkü
Umarım uygulamada başarılı olursun.
deneeceğim bakalım inşallah yapabilirim teşekkür