Skip to content

Commit 4f7df36

Browse files
committed
Revert "try fix when lsass not running"
This reverts commit d7b3f38.
1 parent 1ba130e commit 4f7df36

File tree

2 files changed

+4
-12
lines changed

2 files changed

+4
-12
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ endif()
7171
#
7272
set(PRIVEXEC_VERSION_MAJOR 5)
7373
set(PRIVEXEC_VERSION_MINOR 0)
74-
set(PRIVEXEC_VERSION_PATCH 4)
74+
set(PRIVEXEC_VERSION_PATCH 3)
7575
set(PACKAGE_VERSION "${PRIVEXEC_VERSION_MAJOR}.${PRIVEXEC_VERSION_MINOR}.${PRIVEXEC_VERSION_PATCH}")
7676

7777
string(TOLOWER "${CMAKE_C_COMPILER_ARCHITECTURE_ID}" COMPILER_ARCH_ID)

lib/exec/elevator.cc

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -93,12 +93,6 @@ bool InitializeAsSystem(bela::error_code &ec) {
9393

9494
// bela::EqualsIgnoreCase
9595
[[maybe_unused]] constexpr std::wstring_view LsassName = L"lsass.exe";
96-
[[maybe_unused]] constexpr std::wstring_view WinLogonName = L"winlogon.exe";
97-
98-
inline auto IsSystemProcessName(std::wstring_view name) {
99-
return bela::EqualsIgnoreCase(name, LsassName) || bela::EqualsIgnoreCase(name, WinLogonName);
100-
}
101-
10296
constexpr DWORD INVALID_PROCESS_ID = 0xFFFFFFFF;
10397
DWORD LookupSystemProcess() {
10498
PWTS_PROCESS_INFOW pi{nullptr};
@@ -113,7 +107,7 @@ DWORD LookupSystemProcess() {
113107
});
114108
auto end = pi + count;
115109
for (auto it = pi; it != end; it++) {
116-
if (it->SessionId == 0 && IsSystemProcessName(it->pProcessName) &&
110+
if (it->SessionId == 0 && bela::EqualsIgnoreCase(LsassName, it->pProcessName) &&
117111
IsWellKnownSid(it->pUserSid, WinLocalSystemSid) == TRUE) {
118112
return it->ProcessId;
119113
}
@@ -218,14 +212,12 @@ bool Elavator::impersonation_system_token(bela::error_code &ec) {
218212
HANDLE hExistingToken = INVALID_HANDLE_VALUE;
219213
auto hProcess = ::OpenProcess(MAXIMUM_ALLOWED, FALSE, systemProcessId);
220214
if (hProcess == INVALID_HANDLE_VALUE) {
221-
ec = bela::make_system_error_code(
222-
bela::StringCat(L"Elavator::impersonation_system_token<OpenProcess> ", systemProcessId, L" "));
215+
ec = bela::make_system_error_code(L"Elavator::impersonation_system_token<OpenProcess> ");
223216
return false;
224217
}
225218
auto hpdeleter = bela::finally([&] { CloseHandle(hProcess); });
226219
if (OpenProcessToken(hProcess, MAXIMUM_ALLOWED, &hExistingToken) != TRUE) {
227-
ec = bela::make_system_error_code(
228-
bela::StringCat(L"Elavator::impersonation_system_token<OpenProcessToken> ", systemProcessId, L" "));
220+
ec = bela::make_system_error_code(L"Elavator::impersonation_system_token<OpenProcessToken> ");
229221
return false;
230222
}
231223
auto htdeleter = bela::finally([&] { CloseHandle(hExistingToken); });

0 commit comments

Comments
 (0)