scoped_dir folders in downloads directory
-
rejzor last edited by
This thing is really irritating. How on earth can this be so incredibly hard to figure out by devs? It's not like all Windows apps just randomly create "scoped_dir" named folders for the downloads. There is obviously a piece of code in Opera that does this specifically under certain situations entirely unknown to users.
-
burnout426 Volunteer last edited by burnout426
@rejzor said in scoped_dir folders in downloads directory:
This thing is really irritating. How on earth can this be so incredibly hard to figure out by devs? It's not like all Windows apps just randomly create "scoped_dir" named folders for the downloads. There is obviously a piece of code in Opera that does this specifically under certain situations entirely unknown to users.
Delete any scoped_dir folders that you currently see. Then, for new ones that Opera creates, are they getting deleted when Opera is properly closed by you? If so, then it appears to be intended behavior. The directories not being created in the temp directory seems to be intended behavior too when the downloads folder isn't on the root drive.
Not saying things couldn't be improved.
-
rejzor last edited by
@burnout426 WHY!? Why does it matter where folders are located? That's just dumb. Windows has standardized TEMP folders if they need to use. For everything else, if Opera has write rights, just write the damn file in there. Instead making a folder within a folder where it's suppose to actually save the download file makes even less sense. So, they have the rights to create a folder within a designated folder and create a file in there. If you can do that, then why not just write that very file into the "root" folder instead of creating scoped_dir in there?
And monitoring this is especially stupid. It doesn't seem to create them on every single download, otherwise my Downloads folder would be absolutely filled with them. But yet, they keep on being created there somehow (or being left there).
I mean, obviously there is a logic/mechanism behind it and a developer could easily know in a second what it is. If anyone ever bothered to even check for this.
-
burnout426 Volunteer last edited by burnout426
@rejzor said in scoped_dir folders in downloads directory:
And monitoring this is especially stupid. It doesn't seem to create them on every single download,
It's when you download an exe and launch it from within Opera from the download dialog/bar.
WHY!? Why does it matter where folders are located?
I would imagine the idea is that if the download directory is somewhere else than on the root drive (like a usb stick or other personal hard drive), it's a privacy issue to create the temp files on the root, so they're created where the download directory is at. It's just a guess though.
-
rejzor last edited by
@burnout426 No other browser does this and yet they all work just fine. How come, eh?
-
burnout426 Volunteer last edited by
@rejzor said in scoped_dir folders in downloads directory:
@burnout426 No other browser does this and yet they all work just fine. How come, eh?
I'm having trouble producing the problem in both Opera and Chrome right now, but Chrome was doing this too when I initially tested this problem. If you look up scoped_dir issues, they're usually Chrome/Chromium issues (and Opera uses Chromium).
But, even if Chrome's not doing it, some Opera devs will have to answer the "How come?". I can just suggest that Opera is usually more conscious of privacy and security. Then again, it could just be a side effect of the way Opera implement the UI.
I'll keep trying to reproduce the issue again.
-
burnout426 Volunteer last edited by burnout426
@burnout426 said in scoped_dir folders in downloads directory:
I'm having trouble producing the problem in both Opera and Chrome right now, but Chrome was doing this too when I initially tested this problem.
I was able to reproduce in Opera again (not Chrome though). I forgot the drive had to be NTFS for it to work (I assume it's required for the security measures for the directory).
-
rejzor last edited by
@burnout426 Anyone actually still uses FAT32 these days for things other than USB drives?
-
burnout426 Volunteer last edited by
@rejzor Not sure. It was indeed a usb thumb drive I was testing with.
-
burnout426 Volunteer last edited by
FWIW, I filed bug DNA-65689 with a good description of the problem and good steps to reproduce; to try to get some official answers on the behavior and to fix and improve things. Pointed to this thread also.
-
burnout426 Volunteer last edited by
Okay. The reason for creating the scoped directories is to prevent DLL hijacking when launching executables that don't use safe DLL searching. By launching the executable from within a separate folder, it prevents dangerous DLLs (that you accidentally downloaded or were tricked into downloading) in the downloads directory from being used by the executable instead of the real, safe system versions of the DLLs.
The exe that's placed in the scoped directory isn't a copy of the exe. It's an NTFS hard link to the original (which you can check with
fsutil hardlink list filename
), so it's not taking up extra space. By default, the scoped directory is placed in the system %TEMP% directory. However, if you set the download directory to another drive, the scoped directory must be created on that drive instead (in the downloads directory for example) because NTFS hard links can't cross file system boundaries.These scoped directories are deleted when Opera properly shuts down.
So, Opera is doing this to protect the user from this type of attack, and all of Opera's current behavior with the scoped directories is correct / expected.
However, more-robust handling of cleanup of the directories might be investigated.
Hope that helps.
-
rejzor last edited by
@burnout426 Fine, but then fix the Opera to clean up this stuff correctly. It's clearly broken if these folders are being left behind.
-
burnout426 Volunteer last edited by
@rejzor said in scoped_dir folders in downloads directory:
@burnout426 Fine, but then fix the Opera to clean up this stuff correctly. It's clearly broken if these folders are being left behind.
Can you list each situation where Opera doesn't clean them up? On shutdown of Opera, Opera is at least cleaning up ones it created in that session for me.
-
rejzor last edited by
I stopped executing downloaded programs from within Opera. Not a single scoped_dir folder in there. It's just annoying that I have the popup there inside Opera interface and I have to avoid using it and manually opening the downloads folder when the thing could work right from the get go in cleaning up its mess in the first place. I mean, no other program uses "scoped_dir" so why doesn't Opera try to clean it up on restarts, checking its designated download folder for scoped_dir folders and if there are any, clean them up. If they are in use, it won't allow it anyway so you just can't make the cleanup wrong. It's an easy fix if anyone at least bothered to do it...
-
roma-fl last edited by
Agreed with rejzor.
I always set download directory as "D:\" and I don't want to see strange & ugly folders on my working drive. -
burnout426 Volunteer last edited by
As a workaround, you could put:
noscoped.bat
FOR /D %%X IN (scoped_dir*) DO RD /S /Q "%%X"
in the downloads folder and double-left-click it for easy cleanup.
Or, you could do something like:
cd "d:\downloads" FOR /D %%X IN (scoped_dir*) DO RD /S /Q "%%X"
for the batch file and then modify Opera's shortcut to be something like:
"d:\downloads\noscoped.bat" & "C:\Program Files\Opera\launcher.exe"
That bat obviously wouldn't execute if you launched Opera via a file association (unless you edited the commands in the registry). But, it'd work for the normal shortcut case.
On a side, I did notice that if you close Opera while a scoped directory it created is in use (because the installer is still open in the directory), Opera won't delete it, obviously. So, that's another situation to avoid.
-
rkoopmansnl last edited by
@burnout426 said in scoped_dir folders in downloads directory:
FOR /D %%X IN (scoped_dir*) DO RD /S /Q "%%X"
This works better...
FOR /D %X IN (scoped_dir*) DO RD /S /Q "%X"
-
burnout426 Volunteer last edited by
@rkoopmansnl One way is for inside a batch file and the other is for on the command-line directly.
-
A Former User last edited by
2 years later, Feb 5th 2018, this is still an issue. Executing file after download from the browser will create a "scoped_dir" folder......