pyr Posted February 21, 2010 Share Posted February 21, 2010 Hi, I checked several usb switchblades, and I have few questions regarding the difference between dealing on the usb key or on a hard drive. I began creating a batch file that call few executables (firefox/ie passwd stealer) located on my usb key. I noticed that it was a bit slow. Than I tested the "7zBlade" package, it consists of unzipping executable to %temp% folder then calling them. I noticed that it was a bit faster. So my questions are : 1) Is it really faster to unzip + execute executables on hard disk VS an usb key ? 2) The "7zBlade" package creator says that he choose to zip his executables because a password protected archive is not checked by antivirus. But during the uncompressing process, the AV can check and block them... So, is it very necessary to loose time in unziping ? 3) I also create a C program that silently call executables : I tried to fast the process. But I do not really see a big difference with a batch file. 4) For Antivirus, what do you think of binding (join) each executable in one. Gain of time ? 5) Up to you, which is the fatest way to execute 3-4 executables ? Execute them on the usb ? on the hard disk ? Batch VS c/c++ : do you think it can be faster because of compiler/interpreter ? Thank you :) Quote Link to comment Share on other sites More sharing options...
sablefoxx Posted March 1, 2010 Share Posted March 1, 2010 1) Depends, but it will most likely always be faster to execute directly from the USB key. It is also much cleaner to do it this way (no left over files when your done). 2) The advantage to encrypting via .zip packages is though the AV can block the files, it will be unable to remove the files from your USB drive. A better way in my humble opinion is the way GonZor did it, storing the .exe files on the CD partition (read only) that way AV can't remove the files and you don't need to waste time extracting the files from an encrypted file. 3) If you're only start another program it is unlikely a program written in C will execute significantly faster then a .bat file. That being said, compiled code will always execute faster then interpreted but in this case you're probably using system calls 4) Ehh, maybe. 5) I'd say a simple .bat calling the .exe's directly from the USB drive would be just as fast, if not faster then doing it any other way. Though I have never really done any benchmarks. Quote Link to comment Share on other sites More sharing options...
pyr Posted March 29, 2010 Author Share Posted March 29, 2010 Hi, So I have made a C++ code that silently call my exe. This way is much faster ! I launch 7 executables : Average execution time : 2,5 sec. Standard deviation : 0,4 sec. My algo-code : - Autorun U3 lanch my .exe (cpp) - 7-unzip an archive in %temp% (zipped with "stored mode" only, no compression, it's faster to store then unzip than compress then uncompress...) - lauch my executables just unzipped, but don't wait for their each end, it means that I can launch several action in parallel, I think it's faster. - each exe logs into a text file - the last exe sends an email with log in attachment, - in case of non-internet access, copy the log on the usb key, - each action are totally silent, - lauch explorer.exe like a fake action, pretend that the usb key is not *too* suspect ;) - delete created exe in %temp% I don't know what to do more now. Still few compatibily problems XP/Vista/Seven. I don't think I can be faster. If you have any ideas ? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.