Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
| | | |
BugFix :-))) 09.01.03 23:20 Число просмотров: 1107
Автор: amirul <Serge> Статус: The Elderman
|
> printf("Voila!!!\n");
> return 0; > > fail: > printf("Error occured :-(((\n"); > return -1; > }
Хэндлы конечно сами закроются, но лучше бы закончить так:
// ...
printf("Voila!!!\n");
RegCloseKey(hKey);
CloseHandle(hToken);
return 0;
fail:
if (hKey != INVALID_HANDLE_VALUE)
RegCloseKey(hKey);
if (hToken != INVALID_HANDLE_VALUE)
CloseHandle(hToken);
printf("Error occured :-(((\n");
return -1;
}
---
|
<miscellaneous>
|
2 z0 08.01.03 17:06
Автор: ZaDNiCa <indeed ZaDNiCa> Статус: Elderman
|
Помнится как-то ты присылал исходник на сях проги для считывания файла SAM на физическом уровне с работающей НТ/в2к
не мог бы еще раз его прислать?
|
|
А нужен именно файл? 09.01.03 15:58
Автор: amirul <Serge> Статус: The Elderman
|
> Помнится как-то ты присылал исходник на сях проги для > считывания файла SAM на физическом уровне с работающей > НТ/в2к > не мог бы еще раз его прислать?
Просто все подветку SAM из реестра экспортировать нельзя? Или нужно рассчитывать на руткиты?
Если что у меня где-то валялись сырцы (по мойму даже какой-то версии l0pht - хотя не уверен) которые анализировали SAM на живой системе - если надо могу поискать
|
| |
нужен исходник 09.01.03 17:47
Автор: ZaDNiCa <indeed ZaDNiCa> Статус: Elderman
|
> Если что у меня где-то валялись сырцы (по мойму даже > какой-то версии l0pht - хотя не уверен) которые > анализировали SAM на живой системе - если надо могу > поискать это если имеешь права админа. такой метод не подходит - нужно исходники доступа к файлу на физическом уровне
|
| | |
А для физического доступа права не нужны? 09.01.03 23:09
Автор: amirul <Serge> Статус: The Elderman
|
Вообще-то те сырцы о которых я говорил работали с обычными RegOpenKeyEx и т.д. предварительно настроив все права. Но если это не подходит, то вот еще вариант (набросал только что):
#include <windows.h>
#include <stdio.h>
int
main() {
HANDLE hToken = INVALID_HANDLE_VALUE;
char buffer[sizeof(TOKEN_PRIVILEGES) + sizeof(LUID_AND_ATTRIBUTES)];
HKEY hKey = INVALID_HANDLE_VALUE;
PTOKEN_PRIVILEGES pPriv = (PTOKEN_PRIVILEGES)buffer;
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES, &hToken))
goto fail;
pPriv->PrivilegeCount = 1;
LookupPrivilegeValue(NULL, SE_BACKUP_NAME, &pPriv->Privileges[0].Luid);
pPriv->Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
if (!AdjustTokenPrivileges(hToken, FALSE, pPriv, 0, NULL, NULL))
goto fail;
if (RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SAM", 0, KEY_READ, &hKey))
goto fail;
if (RegSaveKey(hKey, "C:\\sam", NULL))
goto fail;
printf("Voila!!!\n");
return 0;
fail:
printf("Error occured :-(((\n");
return -1;
}
Только что из MsDev-а - выдает "Voila". Сохраняет в формате хайва (если вдруг нужна спецификация - могу подкинуть).
Если вдруг надо писать, а не читать, то можно глянуть на RegRestoreKey с флагом REG_FORCE_RESTORE.
Если дело в руткитах, то отловить эту функцию сложнее, чем обычные реестровые апишки и насколько мне известно никто этого пока не делает. И если уж на то пошло, то перехватить можно и прямое чтение с винта, но кому оно надо.
Если же опять не то. Просьба, сформулировать задачу, может ее все-таки можно решить без лишнего усложнения. Кстати, самому интересно: вот впервые в жизни использовал RegSaveKey :-))) Мало ли чего я еще узнаю по ходу дела.
|
| | | |
BugFix :-))) 09.01.03 23:20
Автор: amirul <Serge> Статус: The Elderman
|
> printf("Voila!!!\n");
> return 0; > > fail: > printf("Error occured :-(((\n"); > return -1; > }
Хэндлы конечно сами закроются, но лучше бы закончить так:
// ...
printf("Voila!!!\n");
RegCloseKey(hKey);
CloseHandle(hToken);
return 0;
fail:
if (hKey != INVALID_HANDLE_VALUE)
RegCloseKey(hKey);
if (hToken != INVALID_HANDLE_VALUE)
CloseHandle(hToken);
printf("Error occured :-(((\n");
return -1;
}
---
|
| | | | |
сенкс... но 10.01.03 15:50
Автор: ZaDNiCa <indeed ZaDNiCa> Статус: Elderman
|
я наверное не совсем правильно выразился...
нужны исходники для чтения на физическом уровня любого файла... упомянул SAM только потому, что обращался к человеку который мне когда-то мне его давал (чтобы он вспомнил о чем идет речь)
|
| | | | | |
У меня когда-то идея дикая была по этому поводу 10.01.03 19:16
Автор: amirul <Serge> Статус: The Elderman
|
Если уж не получается файл открыть значит у кого-то он уже есть.
Я просто хотел (но конечно же не дошли руки) найти процесс, который этот хендл держит и им и пользоваться.
ЗЫ: Если надыбаешь, плиз отмыль мне. Найти другое решение оно, конечно, хорошо, но и иметь такие сырцы тоже очешь неплохо.
ЗЗЫ: Звиняй за неконструктивные (как оказалось предложения), но как в анекдоте говорится: "Нужно ТЗ правильно формулировать"
|
| | | | | | |
ок- замылю 13.01.03 13:11
Автор: ZaDNiCa <indeed ZaDNiCa> Статус: Elderman
|
|
|
|