Toutes les publications

Piloter un écran ne vaut pas droit de tout cliquer

AgentsPérimètreSécuritéIntégration2024-10-2210 min

Un modèle qui manipule une interface accède à tout ce qu'un utilisateur peut faire. La capacité technique arrive avant les garde-fous, et l'écart est le risque.

La capacité et ce qu'elle contourne

Un modèle capable de lire un écran et de cliquer accède à des applications qui n'exposent aucune interface programmable. C'est le verrou qu'il fait sauter, et il est réel dans la plupart des grandes organisations.

Une part importante du travail administratif se déroule dans des logiciels anciens sans API : un progiciel métier, un portail fournisseur, un outil interne développé il y a quinze ans. Automatiser ces gestes exigeait jusqu'ici un développement spécifique et fragile.

Un modèle qui manipule l'interface directement contourne l'obstacle. C'est une capacité utile, et c'est aussi la plus large jamais accordée à un système automatique : il peut faire tout ce que l'utilisateur dont il emprunte la session peut faire.

Un modèle pilotant un écran, avec un bouton d'action irréversible interdit
L'accès à l'écran donne tous les droits de la session : le périmètre doit être posé ailleurs.

Pourquoi les garde-fous habituels ne s'appliquent pas

Un périmètre défini par une liste d'appels autorisés ne fonctionne plus quand le système agit par l'écran, puisqu'il n'y a plus d'appels à lister. C'est la difficulté propre à cette capacité.

Avec une interface programmable, on autorise quatre appels et on en interdit le reste. C'est le cadre posé dans le périmètre avant l'autonomie, et il est net.

Avec un écran, tout est cliquable. Le bouton « valider » et le bouton « annuler » se ressemblent, et rien dans le mécanisme n'empêche le second d'être atteint.

Le périmètre doit donc être posé en amont, dans les droits du compte utilisé. Un système qui pilote une session dont le compte n'a pas le droit de valider un paiement ne peut pas valider un paiement, quelle que soit son erreur d'interprétation. C'est la seule barrière qui tienne.

Les quatre règles à poser avant tout usage

  • Un compte dédié aux droits minimaux, jamais la session d'un utilisateur humain. C'est la barrière principale.
  • Un enregistrement de la session : ce qui a été vu, ce qui a été cliqué. Sans trace visuelle, aucun incident n'est analysable.
  • Une validation humaine sur tout ce qui est irréversible, présentée avant le clic et pas après.
  • Une limite de durée et d'actions par exécution, pour qu'une boucle d'erreur s'arrête d'elle-même.

Le risque de manipulation par le contenu affiché

Un système qui lit l'écran peut être influencé par ce qui y est affiché, y compris par un texte placé là pour lui. Cette vulnérabilité est structurelle et sérieuse.

Si une page web, un courriel ouvert ou un document affiché contient une instruction rédigée à destination du modèle, ce modèle la lit au même titre que le reste de l'écran. La distinction entre l'interface et son contenu n'existe pas pour lui.

Le risque est plus élevé que dans un système documentaire, parce que la capacité d'action est plus large. Un système qui ne peut que répondre produit une réponse fausse ; un système qui pilote un écran peut agir.

La parade reste la même et elle est la seule : restreindre les droits du compte. Aucune consigne, aussi bien rédigée soit-elle, ne remplace une interdiction technique, le principe posé dans quand un modèle commence à agir.

Le test à faire avant tout déploiement

Placer volontairement une fausse instruction dans un document que le système va afficher, et vérifier qu'il ne l'exécute pas. Si le test échoue, ce n'est pas la consigne qu'il faut corriger, ce sont les droits du compte.

Où cette capacité crée réellement de la valeur

Les usages qui tiennent sont ceux où le geste est répétitif, borné et vérifiable a posteriori. Les autres relèvent de la démonstration.

Trois familles fonctionnent bien. La saisie répétitive dans un progiciel sans interface programmable, où le système recopie des données déjà validées ailleurs. L'extraction depuis un portail qui n'exporte rien, où le système ne fait que lire. Et le contrôle systématique, où le système parcourt des écrans pour signaler des anomalies sans rien modifier.

Ces trois usages partagent une caractéristique : soit ils ne modifient rien, soit ils recopient une donnée dont l'original fait foi ailleurs. L'erreur y est détectable et rattrapable.

À l'inverse, confier à un tel système une action qui engage l'organisation sans point de contrôle revient à parier sur l'interprétation correcte d'une interface graphique par une machine. Ce pari se perd régulièrement.

La question de la preuve en cas de litige

Une action réalisée par un système pilotant l'écran est indiscernable d'une action humaine dans la plupart des journaux applicatifs, et c'est un problème juridique avant d'être technique. Il faut le traiter avant le déploiement.

Le progiciel enregistre qu'un compte a cliqué. Il n'enregistre pas si le clic venait d'une personne ou d'un automate. En cas de contestation, une commande passée à tort, une validation indue, l'organisation ne peut pas démontrer ce qui s'est réellement produit.

La parade tient en deux gestes : un compte technique distinct, identifiable dans les journaux, et un enregistrement horodaté de la session côté automate. Voir supervision humaine : la concevoir, pas la promettre.

Questions fréquentes

Comment limiter ce qu'un modèle peut faire sur un écran ?

Par les droits du compte utilisé, jamais par la consigne. Un compte dédié aux droits minimaux est la seule barrière qui tienne, puisque sur un écran tout est cliquable.

Faut-il utiliser la session d'un utilisateur ?

Non, jamais. Le système hériterait de tous ses droits, y compris ceux qui engagent l'organisation, et aucune trace ne distinguerait ses actions de celles de la personne.

Quels usages fonctionnent réellement ?

La saisie répétitive depuis une donnée déjà validée ailleurs, l'extraction depuis un portail sans export, et le contrôle qui signale sans modifier. Ces trois cas rendent l'erreur détectable et rattrapable.

Un texte affiché peut-il manipuler le système ?

Oui. Le modèle ne distingue pas l'interface de son contenu : une instruction placée dans un document affiché est lue comme le reste. La seule parade est la restriction des droits du compte.