Skip to content

Commit

Permalink
ci: validate Arsenal Image Mounter downloads hash
Browse files Browse the repository at this point in the history
This commits adds a content hash match for the Arsenal Image Mounter files to validate that the content of the files we download are as expected.
  • Loading branch information
alan-agius4 committed Jun 13, 2022
1 parent 2a262d7 commit f144306
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 14 deletions.
15 changes: 1 addition & 14 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -88,20 +88,7 @@ commands:
# Useful resources for AIM: http://reboot.pro/index.php?showtopic=22068
name: 'Arsenal Image Mounter (RAM Disk)'
command: |
# Download AIM Drivers
Invoke-WebRequest 'https://github.com/ArsenalRecon/Arsenal-Image-Mounter/raw/988930e4b3180ec34661504e6f9906f98943a022/DriverSetup/DriverFiles.zip' -OutFile 'aim_drivers.zip' -UseBasicParsing
Expand-Archive -Path 'aim_drivers.zip'
# Download AIM CLI
Invoke-WebRequest 'https://github.com/ArsenalRecon/Arsenal-Image-Mounter/raw/988930e4b3180ec34661504e6f9906f98943a022/Command%20line%20applications/aim_ll.zip' -OutFile 'aim_ll.zip' -UseBasicParsing
Expand-Archive -Path 'aim_ll.zip'
# Install AIM drivers
./aim_ll/x64/aim_ll.exe --install ./aim_drivers
# Setup RAM disk mount. Same parameters as ImDisk
# See: https://support.circleci.com/hc/en-us/articles/4411520952091-Create-a-windows-RAM-disk
./aim_ll/x64/aim_ll.exe -a -s 5G -m X: -p "/fs:ntfs /q /y"
pwsh ./.circleci/win-ram-disk.ps
- run: nvm install 16.10
- run: nvm use 16.10
- run: npm install -g yarn@1.22.10
Expand Down
22 changes: 22 additions & 0 deletions .circleci/win-ram-disk.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Download AIM Drivers and validate hash
Invoke-WebRequest "https://github.com/ArsenalRecon/Arsenal-Image-Mounter/raw/988930e4b3180ec34661504e6f9906f98943a022/DriverSetup/DriverFiles.zip" -OutFile "aim_drivers.zip" -UseBasicParsing
$aimDriversDownloadHash = (Get-FileHash aim_drivers.zip -a sha256).Hash
If ($aimDriversDownloadHash -ne "1F5AA5DD892C2D5E8A0083752B67C6E5A2163CD83B6436EA545508D84D616E02") {
throw "aim_drivers.zip hash is ${aimDriversDownloadHash} which didn't match the known version."
}
Expand-Archive -Path "aim_drivers.zip"

# Download AIM CLI and validate hash
Invoke-WebRequest "https://github.com/ArsenalRecon/Arsenal-Image-Mounter/raw/988930e4b3180ec34661504e6f9906f98943a022/Command%20line%20applications/aim_ll.zip" -OutFile "aim_ll.zip" -UseBasicParsing
$aimCliDownloadHash = (Get-FileHash aim_ll.zip -a sha256).Hash
If ($aimCliDownloadHash -ne "9AD3058F14595AC4A5E5765A9746737D31C219383766B624FCBA4C5ED96B20F3") {
throw "aim_ll.zip hash is ${aimCliDownloadHash} which didn't match the known version."
}
Expand-Archive -Path "aim_ll.zip"

# Install AIM drivers
./aim_ll/x64/aim_ll.exe --install ./aim_drivers

# Setup RAM disk mount. Same parameters as ImDisk
# See: https://support.circleci.com/hc/en-us/articles/4411520952091-Create-a-windows-RAM-disk
./aim_ll/x64/aim_ll.exe -a -s 5G -m X: -p "/fs:ntfs /q /y"

0 comments on commit f144306

Please sign in to comment.