Regedit Deaktivieren

Ich habe mal eine kleine frage zur regedit.
Und zwar im XPAnti-Spy kann man die Regedit deaktivieren nun dachte ich mir,die meiste Malware die Public ist wie SDbot,Rbot oder RXbot usw starten alle über die regedit.

Nun kann der Bot auch in die regedit schreiben wen diese deaktiviert wurde ?
Wen er das nicht kann ist dies eine möglichkeit um sich Public Malware soweit es geht vom Hals zu halten,dann kommt die Malware beim nächsten Reboot nicht wider.
 
die registry kann man nicht mal eben 'deaktivieren', da sie ein wesentlicher bestandteil von windows ist. gibt es zu der funktion keine dokumentation? was ich mir nämlich vorstellen kann, ist, daß damit der zugriff auf die registry für bestimmte prozesse unterbunden wird, oder einfach der registryeditor 'regedit' nichtmehr aufrufbar ist.

also:
registry = konfigurationsdatenbank von windows
regedit = editor für selbige

schau da mal etwas genauer hin, vielleicht klärt sich dann schon alles auf.
 
Malware benutzt nicht den für den Benutzer gedachte Editor ("regedit") um etwas in die Registry zu schreiben.
Dafür gibt es Funktionen in der Winapi, die das erledigen. Darum wird es auch nix bringen regedit zu deaktivieren...

also: xeno hat recht^^
 
Ich habe eine bessere Idee: Warum meldest du dich nicht als einfacher User am System an und nicht als Administrator? Als User darfst du nicht in die Registry schreiben.
 
Ok der XPAnti-Spy macht nix anderes als zu verhindern das der Angemeldete User an der regedit spielt.

Ich dachte es wäre so möglich das Programme keine einträge schreiben können,also sowas wie ein schreibschutzt für die regedit.

@Machine viele Public Malware nutzt die regedit um beim Restart des Systems mit gestartet zu werden.

Ein Beispiel dafür ist der NZM Bot und das ist nur einer von vielen,ich habe mal ein paar Bot Sources Compiled und viele starten über die regedit.Wen man sie aus der msconfig abschaltet startet der ganze Bot beim Reboot nicht mehr.

Ist zwar uralt diese Methode aber noch immer sehr weit verbreitet wen man sich so manche Sources anschaut.
 
Ich habe es gerade in der VMware getestet mit dem H-Bot NZM Mod und er kann nicht ausgeführt werden ^^

so hat man einen Schutz gegen Public Bots die von den Kiddies verwendet werden und mit Cryptern FUD gemacht wurden.

2w4wavc.jpg
 
Original von zerohaxxor
Ich habe es gerade in der VMware getestet mit dem H-Bot NZM Mod und er kann nicht ausgeführt werden ^^

Wir brauchen hierbei wohl eher einen Schutz gegen die eigene Naivität, als eine weitere technische Einschränkung. Wer mit Administrationsrechten einfache Arbeiten und tägliche Aufgaben (Office, Internet, ...) ausführt muss sich seiner Situation bewusst sein. Da reicht es bei weitem nicht, nur die Ausführungsrechte für regedit.exe zu setzen...
 
Erkläre mir mal warum das nciht ausreichen sollte als zusätzlicher schutz ?

Der Bot den ich Kompilliert habe wie oben im Screen Trägt sich in der Regedit im Autostart ein damit er beim nächsten Systemstart gestartet wird.

Nun habe ich die Regedit Deaktiviert und der Bot konnte sich nicht eintragen und der Bot konnte nach einem neustart keine Verbindung zum C&C aufnehmen.Ich habe für diesen Test einen eigenen C&C eingerichtet mit dem der Bot Komunizierte.

Nach meinem Fazit:Es bringt etwas.
 
Wenn du Regedit in den Autostart schreibst, dann wird auch Regedit gestartet und nicht der Bot.

Du vergisst das es immer 2 Schnittstellen bei einem Betriebssystem gibt.
Die die der user benutzt, sprich regedit und diejenigen welche von Programmen benutzt werden, die sg API.
Regedit benutzt zwar auch die API aber die API kann auch von anderen Programmen verwendet werden und da kannst du dann nicht mal eben mit dem Rechtemanagment helfen.

//edit
Ich rede hierbei nicht von einem systemcall in deinem Programm, sondern davon die API direkt durch das Programmbenutzen zu lassen.
 
zerohaxxor, wenn ich mir deine beiträge so durchlese, dann hast du immernoch nicht begriffen, dass regedit und registry zwei unterschiedliche dinge sind.

der bot schreibt sich in die registry unter autostart ein. klar. das hat aber mit dem editor, regedit, welcher für den benutzer der vor dem pc sitzt gemacht ist, nichts zu tun.

du sagst, du hast den bot kompiliert? dann müsstest du ja auch in den source schauen können.. schau doch mal rein, wie implementiert ist, dass der regetry gesetzt wird...
oder sag mir, wo ich den source finde, dann seh ich rein :rolleyes:
 
jo, schon klar.. sorry, habs vergessen zu sagen: wenn, dann bitte per pm den link zum source...
ich will nur interessahalber mal reinsehen wie sich das teil nun wirklich in die registry schreibt. kann mir echt nicht vorstellen, dass das irgendwie über regedit gelöst sein soll :rolleyes:
 
Die "Beschriftung" kannst du ruhig allen geben ;) ich will nur mal in den Source schauen...

Hier für alle seine PM:

Hier schicke ich dir den Source per PM da Links ja nciht erlaubt sind.

*eigentlich der Link*
Password: ******

Ich habe einen eigenen IRC eingerichtet mit UNrealIRCD dann habe ich den bot einmal in den IRC Joinen lassen befor ich die regedit deaktiviert habe,danach habe ich den boot aus dem System entfernt und die regedit Deaktiviert und dann den Bot neu Installiert,bei der Install des Bots kommt die meldung wie auf dem Screen und beim Neustart des Systen konnte der bot nicht mehr in den IRC joinen um Befehle entgegen zu nehmen.

EDIT: hab ja ganz und gar mein VPN nach hause vergessen ;) hab grad mal in den Source geschaut.. da wird eindeutig, wie ich es vorher auch schon vermutet habe, die Winapi benutzt um in die Registry zu schreiben. Hat also nix mit Registry-Editor zu tun:

Code:
void AutoStartRegs(char *nfilename)
{
	HKEY key;

	for (int i=0; i < (sizeof(autostart) / sizeof(AUTOSTART)); i++) {
		fRegCreateKeyEx(autostart[i].hkey, autostart[i].subkey, 0, NULL, REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, NULL, &key, NULL);
		if (nfilename)
			fRegSetValueEx(key, valuename, 0, REG_SZ, (const unsigned char *)nfilename, strlen(nfilename));
		else
			fRegDeleteValue(key, valuename);
		fRegCloseKey(key);
	}

	return;
}

Du kannst also den Editor an sich deaktivieren, der Zugriff bleibt auf die Registry erhalten...
 
Ich zitiere mal aus der misc.cpp:

Code:
void sp2mod(void)
{
HANDLE f;
char batfile[256];
char buffer[] = "@echo off\r\n"
//"net stop \"Security Center\"\r\n"
//"net stop SharedAccess\r\n"
"Echo REGEDIT4>%temp%\\1.reg\r\n"
"Echo.>>%temp%\\1.reg\r\n"
"Echo  [HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\NetBT\\Parameters]>>%temp%\\1.reg\r\n"
"Echo \"TransportBindName\"=\"\">>%temp%\\1.reg\r\n"
"Echo.>>%temp%\\1.reg\r\n"
//------
// Ausgabe gekuerzt!
//------
"Echo \"MaxConnectionsPer1_0Server\"=dword:00000050>>%temp%\\1.reg\r\n"
"Echo \"MaxConnectionsPerServer\"=dword:00000050>>%temp%\\1.reg\r\n"
"Echo.>>%temp%\\1.reg\r\n""START /WAIT REGEDIT /S %temp%\\1.reg\r\n"
"DEL %temp%\\1.reg\r\n"
"DEL %0\r\n";

sprintf(batfile, "c:\\a.bat");

if ((f = CreateFile(batfile, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, 0)) > (HANDLE)0)
    {
    DWORD r;
WriteFile(f, buffer, strlen(buffer), &r, NULL);
CloseHandle(f);
PROCESS_INFORMATION pinfo;
STARTUPINFO sinfo;
memset(&sinfo, 0, sizeof(STARTUPINFO));
sinfo.cb = sizeof(sinfo);
sinfo.dwFlags = STARTF_USESHOWWINDOW;
sinfo.wShowWindow=SW_HIDE;
CreateProcess(NULL, batfile, NULL, NULL, TRUE, NORMAL_PRIORITY_CLASS | DETACHED_PROCESS, NULL, NULL, &sinfo, &pinfo);
}
}

Ein Zugriff per regedit wird also dennoch durchgeführt. Daher resultiert auch die Fehlermeldung auf dem Screenshot. Ich hab mir die Datei nicht weiter angeschaut, daher überlasse ich euch nun die Interpreation der Registry-Einträge. Ich wollte das nur anmerken, um die Fehlermeldung erklären zu können ;)
 
hm.. ich hatte nicht die zeit alles genau durchzusehen... ich schau heut abend nochmal rein..
aber komisch, dass die das mal so und mal so machen... scheinbar nich so die coding-asse ;)
 
@Machine:

Den Grund wirst du sehen, wenn du Zeit hattest, in den Source zu gucken. Da steht drin, dass einzelne Funktionalitäten von unterschiedlichen Quellen genommen und zusammengepackt wurden.
 
Zurück
Oben