aboutsummaryrefslogtreecommitdiff
path: root/src/burn/engine/cache.cpp (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Protect elevated working folder from malicious dataRob Mensching2024-03-221-4/+31
| | | | | | | | | | | | | | | When running elevated, Burn uses the Windows Temp folder as its working folder to prevent normal processes from tampering with the files. Windows Temp does allow non-elevated processes to write to the folder but they cannot see the files there. Unfortunately, contrary to our belief, non-elevated processes can read the files in Windows Temp by watching for directory changes. This allows a malicious process to lie in wait, watching the Windows Temp folder until a Burn process is launched elevated, then attack the working folder. Mitigate that attack by protecting the working folder to only elevated users. Managed custom actions also fall back to using the Windows Temp folder in some cases and thus can be exposed in a similar fashion as an elevated Burn process. Remove that possibility.
* Ignore cache bundle failure if it already exists in the package cache.Sean Hall2022-09-151-7/+5
| | | | Fixes 6848
* Skip logging errors in some places when they are due to missing files or ↵Sean Hall2022-08-091-2/+1
| | | | | | registry keys or values. Related to 6696
* Add ability to skip a local path candidate if it failed verification.Sean Hall2022-08-031-7/+63
| | | | Fixes 6818
* Add longPathAware to Burn manifest to support long paths.Sean Hall2022-06-271-3/+3
| | | | Fixes 3455
* Make sure base paths are fully qualified in Burn.Sean Hall2022-06-071-25/+31
|
* Update Burn algorithm for picking elevated temp path to use SystemTemp.Sean Hall2022-06-071-3/+16
|
* Make PathGetSystemPath return an array of paths ordered by preference.Sean Hall2022-06-071-55/+72
|
* Replace PathCompare with PathCompareCanonicalized.Sean Hall2022-06-071-9/+9
|
* Add PathConcatRelativeToBase and use it in Burn.Sean Hall2022-05-311-16/+16
| | | | Fixes 6707
* Replace PathIsAbsolute with PathIsRooted and add PathIsFullyQualified.Sean Hall2022-05-311-1/+1
|
* Always use user's temp directory as basis for acquisition folder.Sean Hall2021-08-041-29/+61
| | | | Fixes #5830
* Add argument and policy setting to set Burn's base working directory.Sean Hall2021-08-041-9/+56
| | | | Fixes #5856
* Replace static cache internals with a struct.Sean Hall2021-08-041-246/+259
| | | | Initialize them explicitly to make it clearer when that happens.
* Get system TEMP path from the registry.Sean Hall2021-08-041-14/+9
| | | | Also, correctly handle return codes from related path APIs.
* Bring back Burn's implementation of signature verification.Sean Hall2021-05-111-0/+131
| | | | partial #6447
* Enforce payload and container verification.Sean Hall2021-05-111-15/+80
|
* Reset the package's cache folder only once.Sean Hall2021-05-111-15/+43
| | | | | | This behavior makes it work similar to the root package cache folder and avoids performance problems when there are many payloads in the package. #4774
* Allow launching approved exes from the original package cache.Sean Hall2021-05-111-20/+71
|
* Move burn into burnRob Mensching2021-04-291-0/+2052