2014-04-26 128 views
1

我有一個簡單的啓動我的程序:編譯一個批處理文件到一個exe

@echo off 
del /s /f /q "Log.txt" 
for /f "delims=" %%x in (lic.dll) do set "lic=%%x" 
if %lic%==1 goto full 
if %lic%==0 goto normal 
goto fail 
:full 
start m1.hta 
rem Hideself 
goto fail 
:normal 
start m2.hta 
rem Hideself 
goto fail 
:fail 
goto :eof 

當我的病毒掃描它,我得到這個:https://www.virustotal.com/en/file/4091db406700b751ab4b01df901a4992226235abc16b87adb047911e0e256b08/analysis/1398529283/

說,該文件是乾淨的。當我將它編譯爲exe時,出現了問題。

如果我使用advanced bat to exe converter要轉換我得到這個:https://www.virustotal.com/en/file/ab3bac03bcdd6aa1305764a1f64e77e651522246c2d7abbd1da427d76604ec2e/analysis/

這只是編譯同一批次的文件,它來了作爲一個病毒是一個現實問題。所以我決定尋找一個不同的蝙蝠exe程序。我得到了類似的結果。

我的問題是:任何一個以太可以幫我找到一個解決方案或我可以使用的替代軟件。它必須能夠將上面的代碼編譯成一個病毒檢測小於4的exe文件。它也必須是安全的(不能容易地被逆向生成或解壓縮)。這是一個一直在進行的問題,可能會阻止程序的發佈,所以無論誰設法幫助我也會獎勵50名代表作爲額外的獎勵。

回答

1

使用的AutoIt Fileinstall功能我得到一個五十一分之五

https://www.virustotal.com/pt/file/b3241a6458469908db157a211fcff66c240f4872bd0feaaea15dce5dff98632f/analysis/1398538044/

這是我試過的代碼:

FileInstall("C:\PROGRAMMATION\test.bat",@ScriptDir&"\test.bat") 
RunWait(@ComSpec & " /c " & "test.bat") 
FileDelete(@scriptdir&"\test.bat") 

此代碼被編譯爲stephen.exe。

+0

看起來不錯,但我有一個問題。我已將'C:\ PROGRAMMATION \ test.bat'更改爲'C:\ Users \ 09stephenb \ Desktop \ LanuchGUI.bat',但是當我編譯它時,我得到'錯誤:無法驗證二進制完整性。你知道如何解決這個問題。謝謝。 – 09stephenb

+0

只需編譯腳本,即可下載最新版本的Autoit或嘗試停用您的Avast。 – SachaDee

+0

我剛剛從網站上下載了最新版本的auto,它不是avast,因爲我使用我的虛擬機,而且這個講解員有avast。你使用什麼版本的autoit。我剛纔注意到它在運行時工作,但它不會讓我編譯它。 – 09stephenb

1

任何bat-to-exe編譯器都可以繞過並查看代碼,因爲它們都將代碼提取到一個臨時文件,並且可以對其進行跟蹤。

您可以安裝PureBasic /另一個BASIC方言的試用版,並將代碼編寫爲基本代碼,然後進行真實編譯。

+0

Ar這只是發射器。我有一個3000行批處理文件的程序和重寫將需要很長時間。 – 09stephenb

1

VBScript to exe很容易,除了已有的東西外,不需要任何軟件。 http://social.msdn.microsoft.com/Forums/en-US/adcae113-4758-481a-a367-60d5d14d97d6/this-is-how-to-turn-vbs-and-js-files-into-exe-files-from-the-command-line-without-third-party-tools?forum=scripting

與VBScript不同,批處理文件由exe運行。上述技術將無法使用。

將命令提示符命令放入括號中可以使您在功能上幾乎成批。 EG

echo off 
echo Hello 

成爲

(echo off 
echo hello) 

你可以粘貼/發送鍵(兩者的VBScript)/發送郵件(vb.net)這一個隱藏的命令提示符。這是如何在vbscript中啓動隱藏的命令提示符。

CreateObject("Wscript.Shell").Run "cmd /k", 0, False 

無論您使用臨時文件還是以某種其他方式發送命令,都可以使用iexpress製作您的exe文件。在啓動類型 - 運行

iexpress 

EG爲您啓動蝙蝠你可以(注1表示正常,0隱藏)

Set fso = CreateObject("Scripting.FileSystemObject") 
Set ts = fso.OpenTextFile("lic.dll", 8, true) 
If ts.readline = 0 then 
    CreateObject("Wscript.Shell").Run "cmd /k hta1.hta", 1, False 
Else 
    CreateObject("Wscript.Shell").Run "cmd /k hta2.hta", 1, False 
End if 
+0

你也可以使用已安裝的vb.net(vbscript 99%在vb.net中工作 - 你只需要添加一個頂部和底部的行並添加一些括號),並使用API​​調用將命令提供到cmd的緩衝區。請參閱http://stackoverflow.com/questions/1859323/net-inject-data-into-input-buffer-of-process –

+0

也使用此屬性寫入文件FILE_ATTRIBUTE_TEMPORARY文件正在用於臨時存儲。如果有足夠的高速緩存可用,文件系統可避免將數據寫回大容量存儲器,因爲應用程序在句柄關閉後會刪除臨時文件。在這種情況下,系統可以完全避免寫入數據。否則,數據在句柄關閉後寫入。 –

+0

無論您使用臨時文件還是以其他方式發送命令,您都可以使用iexpress製作您的exe文件。鍵入開始 - 運行 iexpress –

0

嘗試此批處理腳本的開發環境Batch Compiler。它擁有開發批處理程序所需的一切。並編譯成穩定的獨立可執行文件(Exe)。

Friendly user interface. 
Debugger, Check your code for syntax errors. 
Powerful, versatile compiler. 
Allows mouse input in batch files. 
Use Windows Common Dialog Boxes.(BrowseFiles,BrowseFolders) 
Draw graphics in batch files. 
Reverse engineering proof encryption of source code. 
Include Company name, Copyright info and Version info. 
Make invisible(silent) executables. 
Executables with administrator privileges. 
Run & debug your script while editing. 
Embed resources with executable.(music,images,files) 
Advance Commands (BrowseFiles,LaunchSilent,MouseCMD) 
Stand-alone executables.No dependencies needed. 
Executables are woking on almost all windows operating systems.(98 to 10) 

快速下載:http://bc.gotek.info/files/BatchCompiler1600.zip

乾杯!

相關問題