You probably encountered the situation where you could not access a file, even as an administrator. For example hiberfil.sys.
There is a way in Windows to read any file regardless of DACLs: the backup privilege.
I updated ReactOS’ cmd.exe shell to use the backup privilege.
I added a new command: privilege. This command enables the backup privilege. To be able to enable a privilege, you need to have the privilege: you have the backup privilege if you’re an administrator and elevate the process (cmd.exe).
And I updated the copy and type command to make use of the enabled backup privilege.
Finally, there’s yet another new command: info. This command gives the MAC timestamps, file attributes and SDDL of the given file/folder.
cmd-dll_v0_0_4.zip (https)
MD5: D9D75A10F2C328B708303F9BD24B9AD3
SHA256: 952CFB833D4F22093D7DF837372239A1199C1738FFFFED76124AF8668F4D3877
hi, interesting approach to bypass controls! wouldn’t run As Backup Administrator work?
Comment by amGrid — Sunday 3 January 2016 @ 14:12
Actually, I’m not bypassing controls, just using a privilege.
Comment by Didier Stevens — Sunday 3 January 2016 @ 14:59
[…] Windows Backup Privilege: CMD.EXE […]
Pingback by Overview of Content Published In December | Didier Stevens — Wednesday 20 January 2016 @ 17:58
[…] several years now I’ve been using my modified cmd.exe from […]
Pingback by Create Your Own CMD.XLS | Didier Stevens — Wednesday 10 February 2016 @ 0:00
Didn’t work for me 😦
I’m using Win 7 x86, my user is an administrator and I run cmd.exe as admin. When I type the command “privilege” I got the message “Backup privilege enabled”. Even then, I cannot read hiberfil.sys or walk into the “System Volume Information” folder. To do that, I need to run cmd.exe with _system_ privilege (using i.e. psexec from SysInternals).
Comment by therebus — Wednesday 10 February 2016 @ 9:14
Did you run cmd.exe elevated?
Comment by Didier Stevens — Wednesday 10 February 2016 @ 9:16
Great mods!
I would love to integrate your “(Windows Backup) Privilege & Info” commands into the latest ReactOS’s cmd.exe v4.0.
(The latest version fixes a few resource leaks and a memory leak).
I am currently using a slightly modded v4 “cmd.exe” with IRTriage (https://github.com/AJMartel/IRTriage) for Forensic Incident Response.
Is there any chance that you could assist me in integrating your two functions into the latest ReactOS’s cmd.exe?
I am at best a novice C programmer, and I have been trying to integrate your mods with no success:-(
Any help would be greatly appreciated.
Comment by Alain Martel — Monday 7 March 2016 @ 1:37
@Alain I looked at your github repo for the source code, but I only find executables. You don’t publish the source code?
Comment by Didier Stevens — Tuesday 8 March 2016 @ 22:06
Good Day Didier,
Yes, I do publish the source, and support FOSS.
Sorry about late reply and for starting off on the wrong foot.
I had to rebuild my mods after squashing the original source trying to add your awesome functions.
This was the first chance I had since I posted last.
You can find the repo at https://github.com/AJMartel/IRTriageCMD
Thanks in advance!
Comment by Alain Martel — Friday 11 March 2016 @ 17:10
OK, I’ll put it on my todo list
Comment by Didier Stevens — Monday 14 March 2016 @ 7:38
Thank you,
Your help is invaluable!
Comment by Alain Martel — Monday 14 March 2016 @ 8:53
Did you make any changes to the ReactOS CMD source code? Apart from your attempt to include my changes?
Comment by Didier Stevens — Tuesday 15 March 2016 @ 20:01
Minor changes mainly added ability to recognize Linux commands, changed some of the displayed output and rename the package for my IRTriage project (Forensic acquisition tool).
The source on https://github.com/AJMartel/IRTriageCMD is the base ReactOS code with my superficial changes.
ver /c still and always will display the names of all that were involved in developing the original source (I have already added your name even though I have not been able to add your functions yet).
“https://github.com/AJMartel/IRTriageCMD/tree/master/Priv-info_MOD” holds the source with my Failed attempt to include your Pivilege and Info functions.
https://github.com/AJMartel/IRTriageCMD/blob/master/Priv-info_MOD/FailedReport.log is the output I get when failing to compile.
I am not looking to have the DLL function added, that function would not be used by a Forensics Analyst and could get the cmd.exe blacklisted in certain organizations.
Thanks in advance!
Comment by Alain Martel — Wednesday 16 March 2016 @ 9:31
Thank you, Didier Stevens for your mods!
I no longer require your assistance, I figured out what was wrong with my implementation of your mods into the newer cmd.exe version.
I was able to integrate your mods into my fork of the ReactOS cmd.exe.
Thanks again for your time!!
The source on https://github.com/AJMartel/IRTriageCMD
Comment by Alain Martel — Tuesday 29 March 2016 @ 20:43
Great, thanks for letting me know.
Comment by Didier Stevens — Tuesday 29 March 2016 @ 21:04