Ce dépôt contient un utilitaire publié par le projet Ray pour aider les utilisateurs de Ray à valider que leurs clusters ne sont pas mal configurés d'une manière qui pourrait permettre à des clients non fiables d'exécuter du code arbitraire sur leurs clusters.
Il exécute un ensemble de tâches Ray sur le cluster pour collecter la liste des ports que Ray utilise actuellement. Chaque nœud envoie ensuite son ensemble local de ports actifs à un service exploité par l'équipe Ray fonctionnant sur l'Internet public, qui tente ensuite de se reconnecter et de valider s'ils sont accessibles. Si certains sont accessibles, le script rapportera les détails.
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).
Le script du vérificateur (checker.py) se trouve à la racine de ce dépôt. Il est censé être facile à déployer en étant un script python à fichier unique sans aucune dépendance au-delà de Ray lui-même.
Pourquoi cela ne peut-il pas fonctionner uniquement hors ligne ? / Pourquoi avez-vous besoin de répondre à un serveur externe ?
server
.Quelles sont mes autres options ?
Veuillez noter que si vous utilisez le serveur hébergé d'Anyscale : nous pouvons collecter des informations conformément à notre politique de confidentialité envoyée au serveur (par exemple, adresse IP, ports ouverts) pour aider à améliorer Ray et déterminer dans quelle mesure ces mauvaises configurations continuent de poser problème. .