Drovosek01 · 15-Фев-26 01:05(5 месяцев 5 дней назад, ред. 12-Июл-26 11:01)
"Спасибо" персоналу форума за то, что удаляют комментарии без каких либо объяснений
и вешают разные ограничения/блокировки на аккаунты пользователей при критике их действий. Дальше как-нибудь без меня.
@authlol написал мне, что файл keygen.js можно использовать с помощью nodejs так и он будет патчить файлы и генерировать файл-лицензию:
Код:
node keygen.js
На всякий случай забэкаплю здесь скрипты на Powershell для генерации той структуры хэшей (которые в описании данной раздачи) и их проверки:
скрипты
Для генерации структуры типа
Код:
d1b9a8977ffa64ae68bda3f5d216598d *.\misc\lumina93_x64linux.run
a13a03517d939ed7f81c2be8c276f63b *.\misc\for Windows 7\dist-qt-6.8.2-w7compat-release by HexRays.zip
f18490eaf12dd35a225eeb96cd61eb40 *.\misc\for Windows 7\IDA Pro 9.2 Beta 2 Qt 6 Fix for Win7 [reversecode].rar
...
<#
.SYNOPSIS
Проверяет хэш-суммы файлов по списку.
.DESCRIPTION
Поддерживает чтение из файла, конвейера или строки.
Исправлено зависание при сканировании директорий (убран Resolve-Path -Relative, добавлена защита от рекурсивных симлинков).
.PARAMETER HashSource
Путь к файлу с хэшами, содержимое хэшей или массив строк.
.PARAMETER Algorithm
Алгоритм хэширования (MD5, SHA1, SHA256, SHA384, SHA512, MACTripleDES).
.PARAMETER StrictPath
Не приводить пути к нижнему регистру (регистрозависимое сравнение).
.PARAMETER TargetPath
Директория, в которой выполняется проверка файлов. По умолчанию: текущая директория.
.PARAMETER SkipChecksumFiles
Пропускать файлы, имена которых начинаются с "checksum".
#>
param(
[Parameter(Position=0, ValueFromPipeline=$true)]
[string[]]$HashSource, [string]$Algorithm = "MD5",
[switch]$StrictPath,
[string]$TargetPath = ".",
[switch]$SkipChecksumFiles
) begin {
$lines = @()
} process {
if ($HashSource) {
$lines += $HashSource
}
} end {
function Normalize-Path {
param([string]$Path)
$norm = $Path -replace '\\', '/'
if (-not $StrictPath) {
$norm = $norm.ToLowerInvariant()
}
$norm = $norm -replace '^\.[/\\]?', ''
return $norm
} # --- 2. Валидация и нормализация целевой директории ---
if (-not (Test-Path -LiteralPath $TargetPath -PathType Container)) {
Write-Error "Target directory '$TargetPath' does not exist or is not a directory."
exit 1
}
$TargetPath = (Resolve-Path -LiteralPath $TargetPath).Path
# Добавляем слэш для корректного вычисления относительных путей
if (-not $TargetPath.EndsWith('\')) { $TargetPath += '\' } # --- Чтение источника хэшей ---
if ($lines.Count -eq 0) {
# Нет входных данных — ищем стандартный файл
$defaultFile = "hashes.txt"
if (-not (Test-Path -LiteralPath $defaultFile)) {
Write-Error "No hash source provided and '$defaultFile' not found"
exit 1
}
$hashLines = Get-Content -LiteralPath $defaultFile -ErrorAction Stop
Write-Host "Reading hashes from default file: $defaultFile" -ForegroundColor Cyan
} elseif ($lines.Count -eq 1) {
# Одна строка — проверяем, файл ли это
$candidate = $lines[0].Trim()
if ($candidate -and (Test-Path -LiteralPath $candidate -ErrorAction SilentlyContinue)) {
$hashLines = Get-Content -LiteralPath $candidate -ErrorAction Stop
Write-Host "Reading hashes from file: $candidate" -ForegroundColor Cyan
} else {
# Содержимое хэшей — разбиваем на строки
$hashLines = $candidate -split '\r?\n' | Where-Object { $_.Trim() -ne '' }
Write-Host "Using inline hash content ($($hashLines.Count) lines)" -ForegroundColor Cyan
}
} else {
# Несколько строк (из конвейера или массива)
$hashLines = $lines | Where-Object { $_.Trim() -ne '' }
Write-Host "Using inline hash content ($($hashLines.Count) lines)" -ForegroundColor Cyan
} # --- Парсинг хэшей ---
$expected = @{}
$invalidLines = 0
foreach ($line in $hashLines) {
if ($line -match '^(?<hash>[a-f0-9]{32}) \*(?<path>.+)$') {
$normPath = Normalize-Path $matches.path
$expected[$normPath] = $matches.hash.ToLowerInvariant()
} else {
$invalidLines++
}
} if ($invalidLines -gt 0) {
Write-Warning "Skipped $invalidLines lines with invalid format"
} if ($expected.Count -eq 0) {
Write-Error "No valid hash entries found"
exit 1
} Write-Host "Loaded $($expected.Count) reference hashes" -ForegroundColor Cyan # --- 1. Сканирование директории (оптимизировано) ---
$current = @{}
$processed = 0
Write-Host "Scanning directory: $TargetPath" -ForegroundColor Cyan # -Attributes !ReparsePoint предотвращает зацикливание на junction points / симлинках
$files = Get-ChildItem -LiteralPath $TargetPath -Recurse -File -Attributes !ReparsePoint -ErrorAction SilentlyContinue foreach ($file in $files) {
# --- 3. Пропуск файлов, начинающихся с checksum ---
if ($SkipChecksumFiles -and $file.Name -like 'checksum*') { continue } # Быстрое вычисление относительного пути (замена медленному Resolve-Path -Relative)
$relPath = $file.FullName.Substring($TargetPath.Length)
$normPath = Normalize-Path $relPath $hashObj = Get-FileHash -LiteralPath $file.FullName -Algorithm $Algorithm -ErrorAction SilentlyContinue
if ($hashObj -and $hashObj.Hash) {
$current[$normPath] = $hashObj.Hash.ToLowerInvariant()
$processed++
}
} Write-Host "Processed $processed files in $TargetPath" -ForegroundColor Cyan # --- Анализ расхождений ---
$missing = @()
$modified = @()
$newFiles = @()
$verified = 0 foreach ($path in $expected.Keys) {
if (-not $current.ContainsKey($path)) {
$missing += $path
} elseif ($current[$path] -ne $expected[$path]) {
$modified += [PSCustomObject]@{
Path = $path
Expected = $expected[$path]
Actual = $current[$path]
}
} else {
$verified++
}
} foreach ($path in $current.Keys) {
if (-not $expected.ContainsKey($path)) {
$newFiles += $path
}
} # --- Вывод результатов ---
Write-Host "`n=== VERIFICATION REPORT ===" -ForegroundColor Magenta
Write-Host "OK: $verified" -ForegroundColor Green if ($modified.Count -gt 0) {
Write-Host "MODIFIED: $($modified.Count)" -ForegroundColor Red
foreach ($item in $modified) {
Write-Host " [!] $($item.Path)" -ForegroundColor Yellow
Write-Host " Expected: $($item.Expected)" -ForegroundColor DarkGray
Write-Host " Actual: $($item.Actual)" -ForegroundColor Red
}
} if ($missing.Count -gt 0) {
Write-Host "MISSING: $($missing.Count)" -ForegroundColor Red
foreach ($path in $missing) {
Write-Host " [-] $path" -ForegroundColor Red
}
} if ($newFiles.Count -gt 0) {
Write-Host "NEW FILES: $($newFiles.Count)" -ForegroundColor Cyan
foreach ($path in $newFiles) {
Write-Host " [+] $path" -ForegroundColor Cyan
}
} if ($missing.Count -eq 0 -and $modified.Count -eq 0 -and $newFiles.Count -eq 0) {
Write-Host "`n[SUCCESS] All files verified successfully!" -ForegroundColor Green
exit 0
} else {
Write-Host "`n[WARNING] Verification failed: discrepancies found" -ForegroundColor Yellow
exit 1
}
}
Использование:
Сохранить в файл с расширением .ps1 (например verify.ps1) и
либо просто запустить этот файл в терминале Powershell, Тогда скрипт будет искать файл hashes.txt в той же директории
либо передать путь к файлу с хэшами
либо передать многострочный текст
Код:
.\verify.ps1
.\verify.ps1 "C:\path\to\hashes.txt"
.\verify.ps1 -TargetPath "<path to target directory>" "<path to files with hash structure>"
.\verify.ps1 -TargetPath "<path to target directory>" "<path to files with hash structure>" -SkipChecksumFiles
.\verify.ps1 .\my-hashes.md5
.\verify.ps1 '5e72424e95d07c9e01ee6bb6905c44b2 *.\activation\idapro.hexlic
b60ccbc9f55008baa303aa4ed463cfcd *.\activation\for compare\windows original + patched files.7z
da0e9fe367f93b182bd2ef7472d6a545 *.\activation\keygens and patchers\keygen-v2_bgspa.py'
P.S.
Скрипт делала нейронка Qwen под моим руководством
Я протестировал это в Windows 11 25H2 и скрипты работают, на Windows 10, наверное, нужно будет обновить Powershell для работы этого кода
На W10 19041 - Ошибка при запуске приложения (0xc0000142). На W10 в VBox - тоже (0xc0000142).
В w11 работает Мммдяя - ida free 9.3 в десятке тоже не работает.
88836438На W10 19041 - Ошибка при запуске приложения (0xc0000142). На W10 в VBox - тоже (0xc0000142).
В w11 работает Мммдяя - ida free 9.3 в десятке тоже не работает.
Ну судя по системным требованиям - должна работать Может у вас просто какая-то корявая .iso сборка от "Васи Пупкина"?) А не нормальный оригинальный msdn образ Windows 10 22H2
88836438На W10 19041 - Ошибка при запуске приложения (0xc0000142). На W10 в VBox - тоже (0xc0000142).
В w11 работает Мммдяя - ida free 9.3 в десятке тоже не работает.
У меня какая-то программа на Qt6 падала из-за отстуствия media pack (по незнанию была установлена Windows N). После добавления заработала.
Кароче всё работает, почему на 19041 с первого раза не запустилась - я так и не понял, на VBox тоже не спервого раза. Потестил и на чистой и на кастомной - норм. На разных версиях десятки, не согласилась только на 1703 - This application failed to start because no Qt platform plugin could be initialized. При том - что 9.2 там работает прекрасно. Но 1703 - ужо совсем не актуально
88848299Кароче всё работает, почему на 19041 с первого раза не запустилась - я так и не понял, на VBox тоже не спервого раза. Потестил и на чистой и на кастомной - норм. На разных версиях десятки, не согласилась только на 1703 - This application failed to start because no Qt platform plugin could be initialized. При том - что 9.2 там работает прекрасно. Но 1703 - ужо совсем не актуально
Технически это должно работать на 1703, поскольку ida обеспечивает обратную совместимость с Windows 8, хотя я не знаю ни одного сумасшедшего, который использует Windows 8. Используйте dep walker, например dependencies, в установке w10 1703, чтобы отобразить рекурсивное дерево всех зависимостей.
на макбуке для арма вечно проблема с активацией файлы не пачится я и в корень проги кидал и sudo пробовал скажите как пофиксить или как правильно активировать
88859476на макбуке для арма вечно проблема с активацией файлы не пачится я и в корень проги кидал и sudo пробовал скажите как пофиксить или как правильно активировать
Файлы патчатся
Если вы не знаете, что после модификации исполняемых файлов, у которых была цифровая подпись - подпись ломается и необходимо просто подписать пропатченные файлы заново с помощью codesign - то это, ИМХО, исключительно ваша проблема, как пользователя, который не знает базовых знаний о платформе, на которой работает
Termination Reason: Namespace CODESIGNING, Code 2, Invalid Page VM Region Info: 0x109884b80 is in 0x107c68000-0x109b48000; bytes after start: 29477760 bytes before end: 2897023
REGION TYPE START - END [ VSIZE] PRT/MAX SHRMOD REGION DETAIL
mapped file 105b5c000-107bf0000 [ 32.6M] r--/r-x SM=ALI Object_id=9b67811a
GAP OF 0x78000 BYTES
---> __TEXT 107c68000-109b48000 [ 30.9M] r-x/rwx SM=COW /Applications/IDA Professional 9.3.app/Contents/MacOS/libida.dylib
__DATA_CONST 109b48000-109cac000 [ 1424K] r--/rw- SM=COW /Applications/IDA Professional 9.3.app/Contents/MacOS/libida.dylib
88932452Патчинг ломает запуск на 26.3.1 (25D2128).
Код:
Termination Reason: Namespace CODESIGNING, Code 2, Invalid Page VM Region Info: 0x109884b80 is in 0x107c68000-0x109b48000; bytes after start: 29477760 bytes before end: 2897023
REGION TYPE START - END [ VSIZE] PRT/MAX SHRMOD REGION DETAIL
mapped file 105b5c000-107bf0000 [ 32.6M] r--/r-x SM=ALI Object_id=9b67811a
GAP OF 0x78000 BYTES
---> __TEXT 107c68000-109b48000 [ 30.9M] r-x/rwx SM=COW /Applications/IDA Professional 9.3.app/Contents/MacOS/libida.dylib
__DATA_CONST 109b48000-109cac000 [ 1424K] r--/rw- SM=COW /Applications/IDA Professional 9.3.app/Contents/MacOS/libida.dylib
88859476на макбуке для арма вечно проблема с активацией файлы не пачится я и в корень проги кидал и sudo пробовал скажите как пофиксить или как правильно активировать
Файлы патчатся
Если вы не знаете, что после модификации исполняемых файлов, у которых была цифровая подпись - подпись ломается и необходимо просто подписать пропатченные файлы заново с помощью codesign - то это, ИМХО, исключительно ваша проблема, как пользователя, который не знает базовых знаний о платформе, на которой работает
Да проблема была в этом я не подумал про это и я забыл а не знал))
Ссылка с логом: https://pastebin.com/uPqtFdGH
Пароль: HYGnbkT5wP Винда - Windows 11 25H2 + LTSC (x64) 28in1 +- Office 2024 by Eagle123 (12.2025). Не знаю что делать, какую бы версию иды не ставил: "The processor type 'metapc' is not included in the installed version of IDA.
Please check our web site for information about ordering additional processor modules."
89081000Ссылка с логом: https://pastebin.com/uPqtFdGH
Пароль: HYGnbkT5wP Винда - Windows 11 25H2 + LTSC (x64) 28in1 +- Office 2024 by Eagle123 (12.2025). Не знаю что делать, какую бы версию иды не ставил: "The processor type 'metapc' is not included in the installed version of IDA.
Please check our web site for information about ordering additional processor modules."
Кириллицу в путях не используйте. Возьмите за правило и не будет многих проблем в будущем.
89053025Could not load borrowed licenses: decryuption failed with code: -2 все делал по инструкции, че мне делать?
Для ошибок вроде Could not load borrowed licenses: decryuption failed with code: -2 и could not load borrowed licenses: Signature decryption failed with code -2 как я понял в ~\activation\for compare лежит windows original + patched files.7z в котором ida.dll и ida32.dll которые надо закинуть в корень программы. Hexlic лучше всего положить в корень (как я понял), а программу keygen`а либо открывать от имени администратора и по хорошему в корне IDA. После подобных действий у меня все заработало
89081000Ссылка с логом: https://pastebin.com/uPqtFdGH
Пароль: HYGnbkT5wP Винда - Windows 11 25H2 + LTSC (x64) 28in1 +- Office 2024 by Eagle123 (12.2025). Не знаю что делать, какую бы версию иды не ставил: "The processor type 'metapc' is not included in the installed version of IDA.
Please check our web site for information about ordering additional processor modules."
Ваш лог - страшный сон админа/разработчика.
Цитата:
D:\1. Реверс\IDA Pro 9.3.260213 app\
1. Кириллица в названии папки
2. Пробелы в названии папки Избавляйтесь от этих дурных привычек в мире IT. upd:
Уже было хотел переходить с православной 8.3 на 9.3 но перед началом перехода заметил, что 9.3 не показывает нужные результаты поиска в Local Types.
Устроил себе вынос мозга с тестами версий. Все, что выше 8.3 напрочь отказывается показывать основную структуру в которой есть переменная. Тестил 8.5, 9.0, 9.2, 9.3, 9.3SP1 и 9.3 Free. Загружал тот же exe с тем же pdb, без анализа и с ним.
Все столбцы включены, поиск по всем так же. При чем если саму структуру по названию найти и посмотреть её, переменная там, как в Edit.. так и в структуре.
Даже ставил на другую машину чистый 8.3, все ок, находит, а на новых нет) upd2:
Hex-rays вроде приняли мой репорт и сказали мол создали добавили в баг трекер upd3:
Выкатили IDA 9.3sp2, но проблема не исправлена.