It appears to be a Poweliks variant. A customer brought the computer in unable to click on things in the Taskbar. I rebooted, set the laptop power button to shut down instead of sleep and checked and it was all good. I assumed she had just been putting it to sleep instead of shutting down, especially since the Start Button didn't work. Still, did a little standard checking and noticed some files in AppData which were odd. One folder in Local, one in Roaming, each with 2-3 files. I say 2-3 because it kept changing. Files would disappear and reappear. One LNK, one BAT and one EXE. Delete the directory and it came right back.
So I thought it was the perfect opportunity to use my old trick of editing the small EXE with Notepad to save a corrupted version of it, then reboot. For viruses that watch for deletion and put themselves back this has always worked. Instead of deleting it, corrupt it and reboot. When it comes back up the corrupted EXE fails to run and you can then delete it. But with these it didn't work. They fixed themselves.
Long story short, they were only a minor symptom. Found 3 more LNK files in the Startup directory, 2 pointing to the EXEs (which weren't EXEs when Windows wasn't running. They were 4 characters.5 characters when examining the hard drive directly). The third LNK actually ran a long Javascript. And it also had the entry in the HKCU "Run" folder with the bad characters so it wouldn't show up, which also ran a much longer Javascript. This is what was creating all the files.
I finally had to add a DEBUG option to MSHTA using Notepad so when the computer booted and the registry key tried to run the script it would come up in Notepad instead. Then, without the script running, I could export the Run key, delete it, and re-import it (because the keys with bad characters don't get exported).
I'm still not done pouring over it to see if I got everything. Oh, and one "Run" entry pointed to another key under HKCU/Software/gbil, which I also deleted. This appeared to be the meat of it. I'm not sure how things are normally done around here, but I'm attaching the REG export as a TXT file in case anyone is interested. Not much of a Javascript guy myself, so it means nothing to me.
So I thought it was the perfect opportunity to use my old trick of editing the small EXE with Notepad to save a corrupted version of it, then reboot. For viruses that watch for deletion and put themselves back this has always worked. Instead of deleting it, corrupt it and reboot. When it comes back up the corrupted EXE fails to run and you can then delete it. But with these it didn't work. They fixed themselves.
Long story short, they were only a minor symptom. Found 3 more LNK files in the Startup directory, 2 pointing to the EXEs (which weren't EXEs when Windows wasn't running. They were 4 characters.5 characters when examining the hard drive directly). The third LNK actually ran a long Javascript. And it also had the entry in the HKCU "Run" folder with the bad characters so it wouldn't show up, which also ran a much longer Javascript. This is what was creating all the files.
I finally had to add a DEBUG option to MSHTA using Notepad so when the computer booted and the registry key tried to run the script it would come up in Notepad instead. Then, without the script running, I could export the Run key, delete it, and re-import it (because the keys with bad characters don't get exported).
I'm still not done pouring over it to see if I got everything. Oh, and one "Run" entry pointed to another key under HKCU/Software/gbil, which I also deleted. This appeared to be the meat of it. I'm not sure how things are normally done around here, but I'm attaching the REG export as a TXT file in case anyone is interested. Not much of a Javascript guy myself, so it means nothing to me.