Zum Inhalt springen
Riot-Bits

Riot-Bits

  • Heim
  • Nachricht
  • Führer
  • Videoanleitungen
  • Klebenotizzettel
  • Missbrauch melden
  • Suchformular umschalten
Bitburner

Bitburner – Root Accessor Skript

Veröffentlicht am 12/29/2021 Von Crunchynut Keine Kommentare zu Bitburner – Root Accessor Skript
  • Titel: Bitburner
  • Veröffentlichungsdatum:
  • Entwickler:
  • Herausgeber:
Informationen zu Bitburner sind noch unvollständig. Bitte helfen Sie uns dabei, die Details des Spiels auszufüllen Kontaktformular.

Versuche, den Root-Zugriff auf alle Server zu erhalten und sie in einem leicht zu sehen.

Überblick

Dieses Skript erhält alle Server, öffnet alle möglichen Ports, und Versuche, Wurzelzugriff zu erhalten, Während der Benutzer den Benutzer leicht zu lesen und nützliche Informationen präsentieren.

Verwendung

Erstellen Sie jedes Skript unten und fügen Sie den Code angemessen ein.

Führen Sie das Skript aus!

Befehle:

Rennen Sie RootAccessor.ns

Führt das Skript gegen alle Server aus. Zeigt Ergebnisse an.

Run rootAccessor.ns -h

Zieht das Hilfmenü für das Skript an. Das Skript verarbeitet nicht weiter, wenn es enthält „-H“ als Argument.

Führen Sie RootAccessor.ns -s

Listet alle Server mit dem Root-Zugriff als speicher getrennte Liste auf, wenn Benutzer sie als Argumente in anderen Skripten verwenden möchten.

Run rootAccessor.ns Joesguns n00dles Max-Hardware

Versuche, Root -Zugriff auf Zielserver zu erhalten (Jedes Argument ist ein Servername).

run RootAccessor.ns joesguns n00dles max-hardware -s
run RootAccessor.ns -s joesguns n00dles max-hardware
run RootAccessor.ns joesguns n00dles -s max-hardware

„-S“ kann jederzeit als Argument hinzugefügt werden.

RootAccessor.ns Skript

Erstellen Sie ein neues Skript mit jedem Namen, den Sie möchten. Ich rief meine an „RootAccessor.ns“. Fügen Sie den folgenden Code in ihn ein. Es enthält 3 Funktionen, die das gesamte Skript ausmachen.

/** @param {NS} ns **/
Import {Allerter} aus "./lib-Getservers.ns";

Asynchrone Funktion main exportieren(ns) {
	Wurde genehmigt = [];
	wurde verweigert [];
	wurde denedports = [];
	var verweigert = [];
	vr. Andere = [];
	waren Dateien = [0, 0, 0, 0, 0];
	war maxports = 0;

	//suppress all default log messages
	ns.tail(); ns.disableLog('ALLE'); Ns.Clearlog();

	//Überprüfen Sie das Argument für Hilfe.
	Wenn (ns.args.includes("-H")) {helfen(ns); zurückkehren;}
	ns.print("Für Skript helfen Sie bei der Verwendung von Argument '-h' ");
	
	ns.print("Ausführung ...");
	
	//process argument calls
	var target = [];
	Wenn (Ns.Args.length > 0) {
		Wenn (Ns.Args[0] === "-S") {
			target = wartung auf all servers(ns);
		} anders {
			target = ns.args;
		}
	} anders {
		target = wartung auf all servers(ns);
	}

	//check max ports available to open
	if (Ns.fileExists("Brutessh.exe"))  {Dateien[0] = 1; Maxports ++; ns.print("Die brutessh.exe -Datei gibt es");}  anders {ns.print("Brutessh.exe nicht gefunden");}
	Wenn (Ns.fileExists("Ftpcrack.exe"))  {Dateien[1] = 1; Maxports ++; ns.print("Ftpcrack.exe -Datei existiert");}  anders {ns.print("Ftpcrack.exe nicht gefunden");}
	Wenn (Ns.fileExists("relaysmtp.exe")) {Dateien[2] = 1; Maxports ++; ns.print("RelaysMtp.exe -Datei existiert");} anders {ns.print("RelaysMtp.exe nicht gefunden");}
	Wenn (Ns.fileExists("Httpworm.exe"))  {Dateien[3] = 1; Maxports ++; ns.print("Die Datei httpworm.exe existiert");}  anders {ns.print("Httpworm.exe nicht gefunden");}
	Wenn (Ns.fileExists("Sqlinject.exe")) {Dateien[4] = 1; Maxports ++; ns.print("Sqlinject.exe -Datei existiert");} anders {ns.print("Sqlinject.exe nicht gefunden");}
	ns.print("Maximale Ports öffnen: [" + Maxports + "]\N");

	//open all ports and attempt root access
	for (const n von Target) {
		Wenn (Ns.Serverexists(N)) {
			const serverhacklvl = ns.getServerRequiredHackinglevel(N);
			const Playerhackinglvl = nshackinglevel();
			
			Wenn (PlayerHackinglvl >= serverhacklvl) {
				Wenn (Dateien[0]) { ns.brutessh(N); }
				Wenn (Dateien[1]) { Ns.ftpcrack(N); }
				Wenn (Dateien[2]) { Ns.RelaysMtp(N);}
				Wenn (Dateien[3]) { Ns.httpworm(N); }
				Wenn (Dateien[4]) { Ns.SQLINJECT(N);}

				Gainrootaccess(N, Maxports, genehmigt, Denedports, bestritten, andere, ns);

			} anders {
				verweigert.push(N);
				Deniedhack.push("[BESTRITTEN] - Hack Level zu niedrig [" + PlayerHackinglvl + '/' + serverhacklvl + "] für " + N);
			}
		}
	}

	//output results
	if (Deniedhack.length>0) ns.print(Deniedhack.Join("\N"));
	Wenn (Denedports.length>0) ns.print(Denedports.Join("\N"));
	Wenn (Andere.Length>0) ns.print("[Bereits erworbener Root -Zugriff] für " + Andere.Join("\N[Bereits erworbener Root -Zugriff] für "));
	Wenn (genehmigt.länge>0) ns.print("[Wurzelzugang genehmigt] für " + genehmigt.Join("\N[Wurzelzugang genehmigt] für "));

	Wenn (ns.args.includes("-S")) {
		ns.print("Copierliste der verwurzelten Server:\N" + genehmigt.Join(" ") + Andere.Join(" "));
	}
}

Funktion Gainrootaccess(Server, Portcount, genehmigt, Denedports, bestritten, andere, ns) {
	Wenn (!Ns.Hasrootaccess(Server)) {
		Wenn (Portcount >= Ns.GetServernumportsRequeured(Server)) {
			Ns.wull(Server);
			genehmigt.push(Server);
		} anders {
			verweigert.push(Server);
			Denedports.push("[Root Access verweigert] für " + Server + " - Nicht genug offene Ports");
		}
	} anders {
		other.push(Server);
	}
}

Funktionshilfe(ns) {
	const text = [
		"<==================================================>\N",
		"- Skript nimmt auf [N] Argumente oder gar keine.",
		"  [N]: Servernamen, die Sie verwurzelt werden möchten.",
		"  z.B.: run rootAccessor.ns n00dles joesguns zer0\n",
		"- No args will attempt root access on all servers\n",
		"- Fügen Sie Argument "-S" als Argument zum Drucken ein",
		"  copiable list of all rooted servers\n",
		"<=====================================================>"
		];
	ns.print(text.join("\N"));
}

lib-Getservers.ns Skript

Erstellen Sie ein neues Skript mit dem Namen „lib-Getservers.ns“ und fügen Sie die folgende Helferfunktion ein.

/** @param {NS} ns **/

Exportfunktion Allserver(ns, removePurchased = true) {
	Wenn (gepirche entfernen) var pServs = ns();
	const nodes = neuer set;
	Funktion DFS(Knoten) {
		Knoten.Add(Knoten);
		für (Const Neighbor von Ns.Scan(Knoten)) {
			Wenn (gepirche entfernen) {
				Wenn (!PServs.includes(Nachbar)) {
					Wenn (!Knoten.has(Nachbar)) {
						DFS(Nachbar);
					}
				}
			} anders {
				Wenn (!Knoten.has(Nachbar)) {
					DFS(Nachbar);
				}
			}
		}
	}
	DFS("heim");
	zurückkehren [...Knoten];
}

Das ist alles, was wir heute dafür teilen Bitburner Führung. Dieser Leitfaden wurde ursprünglich erstellt und geschrieben von Crunchynut. Für den Fall, dass wir diesen Leitfaden nicht aktualisieren können, Sie können das neueste Update finden, indem Sie diesem folgen Verknüpfung.

Wenn Sie der Meinung sind, dass der Inhalt dieser Website Ihre Rechte verletzt, einschließlich Ihrer geistigen Eigentumsrechte, Bitte kontaktieren Sie uns umgehend über unser Kontaktformular.
Führer Stichworte:Bitburner

Beitrags-Navigation

Vorherigen Post: Eisenbahngesellschaft – Wie man leichtes Geld verdient
Nächster Beitrag: Bitburner – So scannen Sie jeden Server

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

  • Titel: Bitburner
  • Veröffentlichungsdatum:
  • Entwickler:
  • Herausgeber:
Informationen zu Bitburner sind noch unvollständig. Bitte helfen Sie uns dabei, die Details des Spiels auszufüllen Kontaktformular.

Haftungsausschluss

Alle zitierten Inhalte stammen aus den jeweiligen Quellen. Wenn Sie der Meinung sind, dass wir Ihre Inhalte ohne Erlaubnis verwendet haben, Stellen Sie sicher, dass Sie uns erreichen, wir werden es ernst nehmen.
  • Über uns
  • Kontaktiere uns
  • Datenschutz-Bestimmungen
  • Nutzungsbedingungen

Urheberrechte © © 2025 Riot-Bits.

Bereitgestellt von PressBook News WordPress-Theme