Windows 7 Serious Bug

* Please read the warning in Blue at the bottom before you continue steps 1-5.

1. Download Nirsoft Video Cache viewer.

2. Change a setting, ANY setting. Let it save the VideCacheView.CFG file to your desktop.

3. Right-click the .cfg file, then select Open With -> Select Default Program.

4. Browse to C:\Windows\Explorer.exe & set that as default.

5. Double-click VideCacheView.CFG to "open" & watch the fun begin!

* Warning: Processing steps 1-5 will result cause an endless supply of Windows Explorer processes to be generated, until you Log Off.

CTRL + Alt + DEL will NOT end this process, since each window is opened under it's own process. Can you end 5 or 10 new processes per second?

ONLY proceed after closing ALL important open documents/games/programs/etc, because you WILL have to Log Off to end it! :)

Why would I want to do that?

To use it it says to do this so why would I mess with things?..

VideoCacheView doesn't require any installation process or additional DLL files. In order to start using it, simply run the executable file (VideoCacheView.exe)

Something silly not to even bother trying.

And Notepad should be the default for opening .CFG files.

If you were motivated to do so; this can be achieved with almost any file extension. User stupidity doesn't warrant a "serious Windows bug." The computer just does whatever you tell it.

Why is it a Win 7 bug ?

Would not XP crash and burn the same way ?

Why is it a Win 7 bug ?

Would not XP crash and burn the same way ?

Yep. :lol:

I managed to stop it by right clicking and deleting the cfg file from the desktop, but it took quite a few tries to right click the desktop icon. Probably just lucky to get the click in between the windows that were being generated.

edit: could not shut off windows explorer (explorer.exe) using Process Explorer from Sysinternals.

It is a bit of a silly thing to do, I'd have never tried it w/o lots of safety stuff in place. Would just annoy the dickens out of most users, I think.

I forget why but some months ago I wanted to use BAT code to monitor the progress of a second piece of special BAT code.

To avoid creating and possibly revising two separate *.BAT files I used only one file,

which started by detecting from a calling argument whether to run the special code or the monitor code.

I forget the exact details of the script, other than the manual launch caused the monitor code to run,

and when it ran it took a snapshot of current time and then started a new instance of CMD.EXE to run the script with the "special" argument so that the special code executed.

I launched Windows Task Manager to observe and take control if needed, and then ran my script.

I remember with crystal clarity that on the first trial run It took off like a rocket.

Due to a typo the special code was not executed,

instead it ran a new instance of monitor code which launched a new instance of CMD.EXE.

My display filled with a few dozen CMD.EXE windows per second.

So many instances of CMD.EXE were running there were no spare CPU cycles for anything else.

Windows Task Manager was was unable to control anything,

but I could see an occasional update showing more instances of CMD.EXE processes each taking 1 or 2 MB.

After perhaps 10 minutes of great excitement there was relative sanity,

several thousand instances of CMD.EXE had between them gobbled up all my 8 GB of RAM,

and the system was locked solid until I shut off power.

I powered up again and was given various start-up options that come after a BSOD,

and I chose the normal and suffered no harm.

@Alan -> Why is it a bug? -> It's 2012. Windows should be smart enough by now, to only try once to open a file when you click it. :D

I believe you may have accidentally created a fork bomb, alan! :lol:

If you were motivated to do so; this can be achieved with almost any file extension. User stupidity doesn't warrant a "serious Windows bug." The computer just does whatever you tell it.

Since bugs are simply doing what they are coded to do, there are no bugs using your logic.

Since bugs are things a program should not be doing, they are bugs considering the alternative side of the logic.

A computer OS should not be, in 2012, endlessly loop on opening a file just because you set the extension wrong.

This is different from someone coding a bug or virus, this is an inbuilt Windows bug that should not exist.

Windows should only try once to open a file, then, if it fails, "I tried to open example file, but I failed!" error message.

Wait! you're trying to say that if a computer's owner is telling the computer to do something (in this case create a recursive logic error) that a computer should be "smart" enough to not do it? I think you may misunderstand what a computer is. Computers have no autonomy and will attempt to follow what ever logic their human tells them to. . . they are specialized logic machines; they don't know right from wrong. as long as the task is something the computer is programmed to do (in this case open a file with the program the human tells it too) it will attempt to do so, a "bug" is not programmed in, it is an incedental mistake (which can be leveraged to break a computer) brought upon by.

be this 2012 or 2195 I hope never to see a computer that knows better than me.

No, no, no! LOL! You are misunderstanding what I am saying.

TheWebAtom is stating that no bug is present, because it is just obeying what it is told to do.

I'm stating, that if this is the case, there are no bugs, because ALL bugs are just obeying what they are told to do.

So, we can't use the logic that a bug is misbehaving code, since it is only doing what it is told to do.

Bugs then, must be measured with a different logic.

Bugs are things that should not be occurring within a program or OS.

And it should not be occurring that in 2012, a program will endlessly loop on attempting to open a file.

Even though this is technically doing what it is told to do, it is something that should not be occurring in 2012.

Windows should only try to open a file one time, & if it fails, alert the user.

Edit: I'm not saying it shouldn't obey what it is told to do, I'm just saying that what it is doing is undesirable/a bug/a flaw in the way Windows handles things.

The developers should have changed the encoded behavior, as this is definitely a flaw, & not a desirable thing.

I sure hope its not a feature! LOL!

I think what shane means is that it's not a bug in the sense that a bug is an error in coding.

for example, if I make a program to do math, but when prime numbers are entered, it reverses them, that'd be a bug as its not an intended effect. if you set a .cfg to open with windows explorer, windows exlporer is just going to try to open it until it can't anymore. Most programs throw up an error such as "this file type is not handled" but I guess Explorer doesn't.

Bugs are things that should not be occurring within a program or OS.

And it should not be occurring that in 2012, a program will endlessly loop on attempting to open a file.

Even though this is technically doing what it is told to do, it is something that should not be occurring in 2012.

With all the software you've previously stated you've used those statements really surprise me, I'm not knocking you or anything since we'd all like software and the OSes we use to be rock solid. But when the OS itself is smart enough to know we've did wrong and not allow something it's time to study all those Terminator movies again. :P

With most software I've used there's always been a bug in it to some degree, and Windows being the most fallible chink in the armor, yet we all still use it while complaining about it in the same instance.

This bug may exist on Superfast's system through the abuse of over 1000 tabs being open at a time.

I cannot see the bug.

I cannot even see the VideCacheView.cfg file after download the Nirsoft *.zip file and unzipping it and running the executable.

I do not have the time or interest to download whatever sort of video it might need to create a *.cfg that induces such recursive behavior.

All I wanted to do was see if there was something special in the Nirsoft *.cfg file that was a bug unique to Nirsoft.

I am of course assuming that this bug is unique to Nirsoft VideCacheView because this is the method stipulated in the first post,

otherwise a simple code insert like this but showing the contents of a *.cfg file might have been sufficient.

I think it is a bad idea to do this thing. At the least it works the dickens out of something in there, and at worst it might cause the Apocalypse, like Andavari suggested.

Edit: Don't do this thing. Go see post number 24.

I sure hope its not a feature! LOL!

It wouldn't surprise me. .cfg/.config/.ini was once the 'standard' way of storing configuration settings*. I would expect that explorer.exe would contain some sort of legacy code that attempts to parse the file and, upon reaching a certain command inside the file, inadvertently continues to spawn new instanced of itself.

As Alan said; it would be most helpful to see exactly what text the .CFG file in question contains.

And it should not be occurring that in 2012, a program will endlessly loop on attempting to open a file.

It's still possible to crash IE/Firefox/Opera/Safari & Chrome by attempting to open a HTML file with an infinite, self referencing loop. A program simply performs the steps it's told on whatever input you feed it. True; a program should validate it's input, but you can't expect a Microsoft dev to consider every possible way a user will attempt to torture the OS and prepare for it. Think of it like this: No matter how good your car's safety features are, you will probably die if you drive it off a cliff.

*I still prefer this method over the Windows Registry myself. It's more portable; human-readable and straightforward. All the software I write uses this "outdated" method, despite Microsoft calling it a cardinal sin.

...

As Alan said; it would be most helpful to see exactly what text the .CFG file in question contains.

...

Attached is the "VideoCacheView.cfg" file as viewed in PEEK. Two versions, one using the binary viewer and the other using the standard viewer.

Not sure if it will help, makes no more sense to me than Quantum Mechanics Theory or the IRS tax code, but here it is. :)

It wouldn't surprise me. .cfg/.config/.ini was once the 'standard' way of storing configuration settings*. I would expect that explorer.exe would contain some sort of legacy code that attempts to parse the file and, upon reaching a certain command inside the file, inadvertently continues to spawn new instanced of itself.

As Alan said; it would be most helpful to see exactly what text the .CFG file in question contains.

It's still possible to crash IE/Firefox/Opera/Safari & Chrome by attempting to open a HTML file with an infinite, self referencing loop. A program simply performs the steps it's told on whatever input you feed it. True; a program should validate it's input, but you can't expect a Microsoft dev to consider every possible way a user will attempt to torture the OS and prepare for it. Think of it like this: No matter how good your car's safety features are, you will probably die if you drive it off a cliff.

*I still prefer this method over the Windows Registry myself. It's more portable; human-readable and straightforward. All the software I write uses this "outdated" method, despite Microsoft calling it a cardinal sin.

I agree with you, I detest the registry, & the ini is much preferred.

I also agree that all possible ways cannot be tested, but it's 2012, & you'd think that they would have this fixed by now.

As well as having an easier way to reset all settings to default, because malware frequently changes explorer to their version, then leaves it unable to do anything when it is removed. Things such as this are a living pain in the neck, but there are a few tools that can fix exe problems, and other.

_____

But it should be inbuilt to ahem, restore default picture view, zip, explorer, jar, java, etc. User selects what to restore with checkmarks, & windows resets the defaults for the extensions.

Firefox has a reset feature & has had for a while... why not Windows?

* So far as driving the car off the cliff, yes, that will probably kill you, but that is something youd never (hopefully) consider doing on purpose.

Trying to set a file extension to always open with a certain program IS something you would consider. Especially if you had no idea what opens what.

In this case, I did it to see what would happen, & it quite surprised me that it isn't fixed in W7.

I suspect that many users try this with various loop results, as a result of system changes/malware/registry cleaning gone wild, etc.

Even as seat belts are one of a cars first lines of defense against flying out of a car, a computers first line of defense against changing extensions should be a simple reset button.

I see it all the time, where for example, programs have no options to NOT set the program that you are installing as default. So, user installs, it sets itself automatically as default, then user doesn't like said program & uninstalls or removes. There are broken extensions left that are now pointing to nowhere, & many reg cleaners, ahem, think these "unused" extensions are invalid.

_____

I think they should have the option to password protect the Windows folder & the file extension defaults, to prevent all programs from writing to the system area, or changing the default extension without your password.

In addition, there would be 2 registry hives. System hive, & user hive. Everyone knows that system areas of both the file system & registry are the most complex. If both of these areas were locked tight & all write access prevented, then only user areas could have write access.

If Windows needed to write, users would have a master Windows account that is password protected, wherein they are able to give ONLY Windows system operations permission to write to an area, while anything else is 100% blocked.

This would stop so much malware & viruses dead, that it isnt funny. Once malware is restricted & it no longer has the system folders to hide in, it will be harder for them to take over your computer, & virus scans will be very quick by eliminating having to scan areas that malware cannot penetrate.

:)

what about the ones that exploit an unpatched hole that lets them place themselves in the system folders? We'll never find them!