Nichts und Niemand kann True Vector-Dienst beenden



  • nö windoof hat dan filemap drauf und lockt die exe datei neoexpoert



  • Also ich kann den Pfad einer Datei verändern wenn sie ausgeführt wird. Nur löschen kann man sie nicht. Aber darum gings nicht. Es ging um vsmon.exe.



  • JustSomeCoder schrieb:

    Da geb ich Martin völlig recht. Ist schließlich auch nur ein Programm.

    Und Programme hat man bis jetzt noch alle killen können. 😉

    Ne wirklich! vsmon kann nicht beendet werden. Teste es einfach mal, Zone Alarm kann man kostenlos downloaden. Installiere es unter einer Virtuellen Maschine und probier es aus. SELBST wenn du administrator rechte hast. Nicht mal mit systemrechten kann man den prozess beenden.



  • Martin Richter schrieb:

    Auch alles andere (Registry etc.) kann man überwachen und entsprechend sperren, oder sofort wieder erzeugen...

    das finde ich interessant. Könntest du mir erklären wie? Ich wäre sehr dankbar



  • man kann alles überwachen wenn man sich nur tief genug ins system eingräbt, was soll man da mehr erklären. im drastischsten fall halt über treiber die im kernel mode laufen, das nennt sich neuerdings dann auch "rootkit"



  • ascda schrieb:

    man kann alles überwachen wenn man sich nur tief genug ins system eingräbt, was soll man da mehr erklären. im drastischsten fall halt über treiber die im kernel mode laufen, das nennt sich neuerdings dann auch "rootkit"

    hmmm, stimmt.



  • Auch wenns nicht hilft, man installiert ja auch kein Zonealarm. Das hat eh keinen nutzen.

    Grüße,



  • Con@n schrieb:

    Auch wenns nicht hilft, man installiert ja auch kein Zonealarm. Das hat eh keinen nutzen.

    Grüße,

    Ab und an macht ne PFW schon Sinn. 😉



  • Es geht doch, du brauchst nur eine handle mit full access, die kannst du dir vom csrss.exe kopieren (DuplicateHandle). Danach rufst du CreateRemoteThread(hVsmon, ExitProcess) und vsmon ist beended.

    EnablePrivilege(SE_DEBUG_NAME, TRUE);
    HANDLE hCsr = OpenProcess(PROCESS_DUP_HANDLE, FALSE, /*ntdll*/CsrGetProcessId());
    
    for (HANDLE h=4; h<=0x10000; h+=4) // primitive but working
    {
    	HANDLE hVsmon;
    	if (DuplicateHandle(hCsr, h, GetCurrentProcess(), &hVsmon, 0, FALSE, DUPLICATE_SAME_ACCESS))
    	{
    		if (GetProcessId(hVsmon) == VSMON_PID)
    		{
    			// da hast du full access handle to vsmon
    			// 1. CreateRemoteThread(hVsmon, ExitProcess)
    			// 2. TerminateProcess(hVsmon) injected to csrss.exe
    			// 3. ...
    
    			// break for
    			h = 0x10000;
    		}
    		CloseHandle(hVsmon);
    	}
    }
    


  • sapero schrieb:

    Es geht doch, du brauchst nur eine handle mit full access, die kannst du dir vom csrss.exe kopieren (DuplicateHandle). Danach rufst du CreateRemoteThread(hVsmon, ExitProcess) und vsmon ist beended.

    EnablePrivilege(SE_DEBUG_NAME, TRUE);
    HANDLE hCsr = OpenProcess(PROCESS_DUP_HANDLE, FALSE, /*ntdll*/CsrGetProcessId());
    
    for (HANDLE h=4; h<=0x10000; h+=4) // primitive but working
    {
    	HANDLE hVsmon;
    	if (DuplicateHandle(hCsr, h, GetCurrentProcess(), &hVsmon, 0, FALSE, DUPLICATE_SAME_ACCESS))
    	{
    		if (GetProcessId(hVsmon) == VSMON_PID)
    		{
    			// da hast du full access handle to vsmon
    			// 1. CreateRemoteThread(hVsmon, ExitProcess)
    			// 2. TerminateProcess(hVsmon) injected to csrss.exe
    			// 3. ...
    			
    			// break for
    			h = 0x10000;
    		}
    		CloseHandle(hVsmon);
    	}
    }
    

    das Probiere ich mal aus...



  • wo ist denn EnablePrivilege definiert?
    hmm komisch, diesen code will mein compiler garnicht kompilieren...





  • asdflasjkl schrieb:

    Erst selber suchen, dann fragen!

    http://msdn.microsoft.com/en-us/library/f9sewa9t.aspx

    Erst denken, dann posten... 🙄
    Schau dir mal die Parameter an 😉



  • Afaik ist der Source vom SysInternal-Tool ProcessExplorer open source. Dort kannst du dir auch das "Killen" von Prozessen ansehen.

    MfG SidEWinder



  • Oh mann, Du bist der Programmierer, und Du MUST wissen was man braucht, um ein system process zu oeffnen. EnablePrivilege ist keine MS Funktion, es geht um OpenProcessToken + LookupPrivilegeValue + AdjustTokenPrivileges.

    Naja, CsrGetProcessId returns the process id of csrss.exe. Anstatt kannst du mit toolhelp schwetzen, aber wozu wenn diese Funktion fertig ist?



  • SideWinder schrieb:

    Afaik ist der Source vom SysInternal-Tool ProcessExplorer open source. Dort kannst du dir auch das "Killen" von Prozessen ansehen.

    MfG SidEWinder

    ja der Process Explorer konnte vsmon auch nicht beenden.



  • Hallo.

    Schon mal versucht, das Problem mit OpenSCManager zu lösen?

    Gruß

    Lars


Anmelden zum Antworten