Este repositorio contiene una utilidad que el proyecto Ray está lanzando para ayudar a los usuarios de Ray a validar que sus clústeres no estén configurados incorrectamente de una manera que pueda permitir que clientes que no son de confianza ejecuten código arbitrario en sus clústeres.
Ejecuta un conjunto de tareas de Ray en todo el clúster para recopilar la lista de puertos que Ray está utilizando actualmente. Luego, cada nodo envía su conjunto local de puertos activos a un servicio operado por el equipo de Ray que se ejecuta en la Internet pública, que luego intenta conectarse nuevamente y validar si son accesibles. Si se encuentra que alguno es accesible, el script informará los detalles.
Cluster has 26 node(s). Scheduling tasks on each to check for exposed ports
[?] No open ports detected checked_ports=[6822, 6823, 8076, 8085, 8912, 10002, 44973] node='defb6868434e23ba21c3f9fc84ec523f1378b11e5d289547234edb07'
[...]
[?] No open ports detected checked_ports=[6822, 6823, 8076, 8085, 8912, 10002, 10003, 10004, 10005, 60094] node='d368a5fdbe8147bdefafbf9eb4358eae796c168f24f1b297e13a0af6'
Check complete, results:
[?] No open ports detected from any Ray nodes
Cluster has 26 node(s). Scheduling tasks on each to check for exposed ports
[?] No open ports detected checked_ports=[6822, 6823, 8076, 8085, 8912, 10002, 44973] node='defb6868434e23ba21c3f9fc84ec523f1378b11e5d289547234edb07'
[...]
[?] open ports detected open_ports=[8265] node='53fca104c1bb17cd3e996b01e0900aa2a24c2f473d845f56eb3f7aa2'
[...]
[?] No open ports detected checked_ports=[6822, 6823, 8076, 8085, 8912, 10002, 10003, 10004, 10005, 60094] node='d368a5fdbe8147bdefafbf9eb4358eae796c168f24f1b297e13a0af6'
Check complete, results:
[?] An server on the internet was able to open a connection to one of this Ray
cluster's public IP on one of Ray's internal ports. If this is not a false
positive, this is an extremely unsafe configuration for Ray to be running in.
Ray is not meant to be exposed to untrusted clients and will allow them to run
arbitrary code on your machine.
You should take immediate action to validate this result and if confirmed shut
down your Ray cluster immediately and take appropriate action to remediate its
exposure. Anything either running on this Ray cluster or that this cluster has
had access to could be at risk.
For guidance on how to operate Ray safely, please review [Ray's security
documentation](https://docs.ray.io/en/master/ray-security/index.html).
El script de verificación (checker.py) se puede encontrar en la raíz de este repositorio. Está destinado a ser fácil de implementar al ser un script de Python de un solo archivo sin dependencias más allá del propio Ray.
¿Por qué esto no puede ejecutarse exclusivamente sin conexión? / ¿Por qué necesitas responder a un servidor externo?
server
.¿Cuáles son mis otras opciones?
Tenga en cuenta que si utiliza el servidor alojado de Anyscale: podemos recopilar información de acuerdo con nuestra política de privacidad enviada al servidor (por ejemplo, dirección IP, puertos abiertos) para ayudar a mejorar Ray y determinar en qué medida estas configuraciones erróneas continúan siendo un problema. .