Intenta obtener acceso raíz a todos los servidores y presentarlos en un formato fácil de ver y usar.
General
Este script obtiene todos los servidores, abre todos los puertos posibles e intenta obtener acceso a la raíz, todo mientras presenta al usuario información útil y fácil de leer.
Instrucciones de uso
Cree cada secuencia de comandos a continuación y pegue el código de manera adecuada.
¡Ejecuta el guión!
comandos:
ejecutar RootAccessor.ns
Ejecuta el script en todos los servidores. Muestra resultados.
ejecutar RootAccessor.ns -h
abre el menú de ayuda para el script. El script no procesa más si contiene "-h" como argumento.
ejecutar RootAccessor.ns -s
enumera todos los servidores con acceso raíz como una lista separada por espacios si los usuarios desean utilizarlos como argumentos en otras secuencias de comandos.
ejecutar RootAccessor.ns joesguns n00dles max-hardware
intenta obtener acceso raíz en los servidores de destino (cada argumento es un nombre de servidor).
ejecutar RootAccessor.ns joesguns n00dles max-hardware -s ejecutar RootAccessor.ns -s joesguns n00dles max-hardware ejecutar RootAccessor.ns joesguns n00dles -s max-hardware
"-s" se puede agregar como argumento en cualquier momento.
Secuencia de comandos RootAccessor.ns
Cree un nuevo script con el nombre que desee. Llamé al mío "RootAccessor.ns". Pegue el siguiente código en él. Contiene 3 funciones que componen todo el script.
/** @param {NS} ns **/ import {allServers} from "./lib-getServers.ns"; exportar función asíncrona principal (ns) { var aprobado = []; var denegadohack = []; var puertos denegados = []; var negado = []; var otro = []; var archivos = [0, 0, 0, 0, 0]; var maxPorts = 0; //suprimir todos los mensajes de registro predeterminados ns.tail(); ns.disableLog('TODO'); ns.clearLog(); //comprobar el argumento de ayuda.
Guión lib-getServers.ns
Cree un nuevo script llamado "lib-getServers.ns" y pegue la siguiente función auxiliar.
/** @param {NS} ns **/ export function allServers(ns, removePurchased=true) { if (removePurchased) var pservs = ns.getPurchasedServers(); const nodos = nuevo Conjunto; function dfs(nodo) { nodos.add(nodo); for (const vecino de ns.scan(nodo)) { if (eliminarComprado) { if (!pservs.includes(vecino)) { if (!nodes.has(vecino)) { dfs(vecino); } } } else { if (!nodes.has(vecino)) { dfs(vecino); } } } } dfs("inicio"); volver [... nodos]; }
Eso es todo lo que estamos compartiendo hoy para este Quemador de bits guía. Esta guía fue originalmente creada y escrita por nuez crujiente. En caso de que no actualicemos esta guía, puede encontrar la última actualización siguiendo este liga.