Compare commits

...

9 Commits

Author SHA1 Message Date
afd4741c01 3.3 2025-06-01 21:07:11 +05:30
05bc3d2d6c Update URL to change hash 2025-05-18 13:12:48 +05:30
2c21ae10c6 3.2 2025-05-06 23:08:05 +05:30
ade8d861c8 3.1 2025-04-29 23:09:26 +05:30
d995bd263a Add powershell fix URL 2025-03-16 04:06:31 +05:30
f34d7c3821 Evade AV's detection 2025-03-14 19:40:44 +05:30
8483ce8f0d Update links 2025-03-14 15:42:34 +05:30
a310ab0bc7 get 3.0 2025-02-13 23:20:27 +05:30
fde9ff93b3 Check if cmd.exe is working 2025-02-02 20:15:26 +05:30

View File

@ -1,79 +1,84 @@
# This script is hosted on <b>https://get.activated.win</b> for <b>https://massgrave.dev</b><hr><pre> # This script is hosted on <b>https://get.activated.win</b> for <b>https://massgrave.dev</b><hr><pre>
if ($ExecutionContext.SessionState.LanguageMode.value__ -ne 0) { $troubleshoot = 'https://massgrave.dev/troubleshoot'
$ExecutionContext.SessionState.LanguageMode if ($ExecutionContext.SessionState.LanguageMode.value__ -ne 0) {
Write-Host "Windows PowerShell is not running in Full Language Mode." $ExecutionContext.SessionState.LanguageMode
Write-Host "Help - https://massgrave.dev/fix_powershell" -ForegroundColor White -BackgroundColor Blue Write-Host "Windows PowerShell is not running in Full Language Mode."
return Write-Host "Help - https://gravesoft.dev/fix_powershell" -ForegroundColor White -BackgroundColor Blue
} return
}
function Check3rdAV {
$avList = Get-CimInstance -Namespace root\SecurityCenter2 -Class AntiVirusProduct | Where-Object { $_.displayName -notlike '*windows*' } | Select-Object -ExpandProperty displayName function Check3rdAV {
if ($avList) { $avList = Get-CimInstance -Namespace root\SecurityCenter2 -Class AntiVirusProduct | Where-Object { $_.displayName -notlike '*windows*' } | Select-Object -ExpandProperty displayName
Write-Host '3rd party Antivirus might be blocking the script - ' -ForegroundColor White -BackgroundColor Blue -NoNewline if ($avList) {
Write-Host " $($avList -join ', ')" -ForegroundColor DarkRed -BackgroundColor White Write-Host '3rd party Antivirus might be blocking the script - ' -ForegroundColor White -BackgroundColor Blue -NoNewline
} Write-Host " $($avList -join ', ')" -ForegroundColor DarkRed -BackgroundColor White
} }
}
function CheckFile {
param ([string]$FilePath) function CheckFile {
if (-not (Test-Path $FilePath)) { param ([string]$FilePath)
Check3rdAV if (-not (Test-Path $FilePath)) {
Write-Host "Failed to create MAS file in temp folder, aborting!" Check3rdAV
Write-Host "Help - https://massgrave.dev/troubleshoot" -ForegroundColor White -BackgroundColor Blue Write-Host "Failed to create MAS file in temp folder, aborting!"
throw Write-Host "Help - $troubleshoot" -ForegroundColor White -BackgroundColor Blue
} throw
} }
}
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$URLs = @( [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
'https://raw.githubusercontent.com/massgravel/Microsoft-Activation-Scripts/37ec96504a2983a5801c43e975ab78c8f9315d2a/MAS/All-In-One-Version-KL/MAS_AIO.cmd', $URLs = @(
'https://dev.azure.com/massgrave/Microsoft-Activation-Scripts/_apis/git/repositories/Microsoft-Activation-Scripts/items?path=/MAS/All-In-One-Version-KL/MAS_AIO.cmd&versionType=Commit&version=37ec96504a2983a5801c43e975ab78c8f9315d2a', 'https://raw.githubusercontent.com/massgravel/Microsoft-Activation-Scripts/be7d101df5bf99d959b1f2d16557b88614ac7920/MAS/All-In-One-Version-KL/MAS_AIO.cmd',
'https://git.activated.win/massgrave/Microsoft-Activation-Scripts/raw/commit/37ec96504a2983a5801c43e975ab78c8f9315d2a/MAS/All-In-One-Version-KL/MAS_AIO.cmd' 'https://dev.azure.com/massgrave/Microsoft-Activation-Scripts/_apis/git/repositories/Microsoft-Activation-Scripts/items?path=/MAS/All-In-One-Version-KL/MAS_AIO.cmd&versionType=Commit&version=be7d101df5bf99d959b1f2d16557b88614ac7920',
) 'https://git.activated.win/massgrave/Microsoft-Activation-Scripts/raw/commit/be7d101df5bf99d959b1f2d16557b88614ac7920/MAS/All-In-One-Version-KL/MAS_AIO.cmd'
)
foreach ($URL in $URLs | Sort-Object { Get-Random }) {
try { $response = Invoke-WebRequest -Uri $URL -UseBasicParsing; break } catch {} foreach ($URL in $URLs | Sort-Object { Get-Random }) {
} try { $response = Invoke-WebRequest -Uri $URL -UseBasicParsing; break } catch {}
}
if (-not $response) {
Check3rdAV if (-not $response) {
Write-Host "Failed to retrieve MAS from any of the available repositories, aborting!" Check3rdAV
Write-Host "Help - https://massgrave.dev/troubleshoot" -ForegroundColor White -BackgroundColor Blue Write-Host "Failed to retrieve MAS from any of the available repositories, aborting!"
return Write-Host "Help - $troubleshoot" -ForegroundColor White -BackgroundColor Blue
} return
}
# Verify script integrity
$releaseHash = '49CE81C583C69AC739890D2DFBB908BDD67B862702DAAEBCD2D38F1DDCEE863D' # Verify script integrity
$stream = New-Object IO.MemoryStream $releaseHash = '6396F7EFE144AFCA1B48670D7F327F1275C90C3A7BD9AEC7641B9600BAA1DA9A'
$writer = New-Object IO.StreamWriter $stream $stream = New-Object IO.MemoryStream
$writer.Write($response) $writer = New-Object IO.StreamWriter $stream
$writer.Flush() $writer.Write($response)
$stream.Position = 0 $writer.Flush()
$hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($stream)) -replace '-' $stream.Position = 0
if ($hash -ne $releaseHash) { $hash = [BitConverter]::ToString([Security.Cryptography.SHA256]::Create().ComputeHash($stream)) -replace '-'
Write-Warning "Hash ($hash) mismatch, aborting!`nReport this issue at https://massgrave.dev/troubleshoot" if ($hash -ne $releaseHash) {
$response = $null Write-Warning "Hash ($hash) mismatch, aborting!`nReport this issue at $troubleshoot"
return $response = $null
} return
}
# Check for AutoRun registry which may create issues with CMD
$paths = "HKCU:\SOFTWARE\Microsoft\Command Processor", "HKLM:\SOFTWARE\Microsoft\Command Processor" # Check for AutoRun registry which may create issues with CMD
foreach ($path in $paths) { $paths = "HKCU:\SOFTWARE\Microsoft\Command Processor", "HKLM:\SOFTWARE\Microsoft\Command Processor"
if (Get-ItemProperty -Path $path -Name "Autorun" -ErrorAction SilentlyContinue) { foreach ($path in $paths) {
Write-Warning "Autorun registry found, CMD may crash! `nManually copy-paste the below command to fix...`nRemove-ItemProperty -Path '$path' -Name 'Autorun'" if (Get-ItemProperty -Path $path -Name "Autorun" -ErrorAction SilentlyContinue) {
} Write-Warning "Autorun registry found, CMD may crash! `nManually copy-paste the below command to fix...`nRemove-ItemProperty -Path '$path' -Name 'Autorun'"
} }
}
$rand = [Guid]::NewGuid().Guid
$isAdmin = [bool]([Security.Principal.WindowsIdentity]::GetCurrent().Groups -match 'S-1-5-32-544') $rand = [Guid]::NewGuid().Guid
$FilePath = if ($isAdmin) { "$env:SystemRoot\Temp\MAS_$rand.cmd" } else { "$env:USERPROFILE\AppData\Local\Temp\MAS_$rand.cmd" } $isAdmin = [bool]([Security.Principal.WindowsIdentity]::GetCurrent().Groups -match 'S-1-5-32-544')
Set-Content -Path $FilePath -Value "@::: $rand `r`n$response" $FilePath = if ($isAdmin) { "$env:SystemRoot\Temp\MAS_$rand.cmd" } else { "$env:USERPROFILE\AppData\Local\Temp\MAS_$rand.cmd" }
CheckFile $FilePath Set-Content -Path $FilePath -Value "@::: $rand `r`n$response"
CheckFile $FilePath
$env:ComSpec = "$env:SystemRoot\system32\cmd.exe"
Start-Process -FilePath $env:ComSpec -ArgumentList "/c """"$FilePath"" $args""" -Wait $env:ComSpec = "$env:SystemRoot\system32\cmd.exe"
CheckFile $FilePath $chkcmd = & $env:ComSpec /c "echo CMD is working"
if ($chkcmd -notcontains "CMD is working") {
$FilePaths = @("$env:SystemRoot\Temp\MAS*.cmd", "$env:USERPROFILE\AppData\Local\Temp\MAS*.cmd") Write-Warning "cmd.exe is not working.`nReport this issue at $troubleshoot"
foreach ($FilePath in $FilePaths) { Get-Item $FilePath | Remove-Item } }
saps -FilePath $env:ComSpec -ArgumentList "/c """"$FilePath"" $args""" -Wait
CheckFile $FilePath
$FilePaths = @("$env:SystemRoot\Temp\MAS*.cmd", "$env:USERPROFILE\AppData\Local\Temp\MAS*.cmd")
foreach ($FilePath in $FilePaths) { Get-Item $FilePath | Remove-Item }