Офлайновая идентификация версии Windows в среде Linux

Могло случиться так, что Вы отправляете на адрес, который возвращает перенаправление? Так, например, если бы у Вас был http://example.com/directory, то сервер перенаправил бы Ваш клиент на http://example.com/directory/, и полезная нагрузка запроса сообщения обычно не становится 'снова посланной' новому месту назначения...

1
задан 23 September 2015 в 14:13
5 ответов

Вы можете использовать команду strings для доступа к файлам реестра, я тестировал на моей машине, и это сработало:

strings /media/cuonglm/Windows/Windows/System32/config/SOFTWARE | grep -e '^6.1.*' | head -n 1

Результат:

6.1.7601.17608

Это означает, что моя версия - Windows 7. SP1.

Я думаю, что это более быстрый способ, чем использование некоторых инструментов для управления свойствами PE-файлов или файлов реестра.

3
ответ дан 3 December 2019 в 17:09

Вы можете получить доступ к реестру Windows с помощью таких инструментов, как chntpw . Вам потребуются следующие ключи, расположенные в HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion :

ProductName
Version
VersionNumber
SubVersionNumber

Вы можете создать сценарий, который автоматизирует chntpw и проанализирует ключи реестра для определения версии Windows. .

1
ответ дан 3 December 2019 в 17:09

Есть несколько решений без окон и команд, которые вы можете использовать для решения своей проблемы. Вот несколько идей, о которых я подумал:

Boot.ini

Попробуйте прочитать boot.ini из текстового файла загрузочного раздела Windows (то есть C: \ boot.ini). Это (обычно) информация о загрузке по умолчанию, если она не была изменена вручную. Вы можете прочитать текстовый файл и выполнить RegEx, чтобы узнать версию.

Например, в моем boot.ini есть часть «Microsoft Windows XP Professional», которую можно легко проанализировать с помощью любого регулярного выражения.

Проверить структуру файловой системы

Вы можете получить представление об общей версии Windows, посмотрев на структуру каталогов, которую она использует: Windows XP - семейство использует каталог типа C: \ Documents and Settings. структура (зависит от языка), поскольку в других более поздних версиях используются каталоги другого типа.

Это не очень хорошее решение, но это одно из решений.

cmd.exe

В этом случае я не совсем уверен, но мне кажется, что я помню двоичный файл командной строки Windows (cmd .exe) имеет версию, сохраненную в нем. Чтение двоичного файла и его ресурсов может помочь определить правильную версию.

Тем не менее, из всех этих решений я предлагаю вам попробовать прочитать boot.ini. Он настраивается пользователем, но очень редко изменяется обычными пользователями.

1
ответ дан 3 December 2019 в 17:09

Просмотр информации о версии ntoskrl.exe дает как числовые, так и текстовые результаты

me@host:/mnt$ iconv -cf utf16 Windows/System32/ntoskrnl.exe|strings|grep  6\\.
6.1.7601.18409 (win7sp1_gdr.140303-2144)
6.1.7601.18409
1
ответ дан 3 December 2019 в 17:09

Получите волшебный бобовый ключ. Бесплатная портативная версия работает нормально.

Запустите его и в меню инструментов выберите >> загрузить куст. Затем он показывает все ваши диски, выберите папку Windows соответствующего диска.

-1
ответ дан 3 December 2019 в 17:09

Теги

Похожие вопросы