Un bot (aféresis de robot) es un programa informático que efectúa automáticamente tareas reiterativas mediante Internet a través de una cadena de comandos o funciones autónomas previas para asignar un rol establecido; y que posee capacidad de interacción, cambiando de estado para responder a un estímulo.[1] Normalmente, estos bots ejecutan tareas simples y estructuralmente repetitivas, que serían imposibles de realizar por una persona.[2]
Algunos ejemplos de bots son los rastreadores web de los motores de búsqueda de Internet, que recorren los sitios web de forma automática y recopilan información de los mismos de manera mucho más rápida y efectiva de lo que lo haría una persona. Los bots "buenos" cumplen los estándares de exclusión de robots, que los operadores de servidores pueden usar para influir en el comportamiento de un robot dentro de unos límites. Los bots "maliciosos" se utilizan, por ejemplo, para recopilar direcciones de correo electrónico con fines publicitarios, para hacer copias masivas no autorizadas de contenidos web o para espiar de manera sistemática las vulnerabilidades de software de los servidores con el objetivo de penetrar en ellos. En las redes sociales, los bots se utilizan para simular la interacción humana, hinchando artificialmente el número de visitas o seguidores, o automatizando respuestas para posicionar mensajes o influir en debates. Los denominados bots conversacionales son sistemas de inteligencia artificial que simulan una conversación con una persona utilizando el lenguaje natural.
Es importante distinguir que bot es una definición funcional, y no hace diferencias en cuanto a su implementación. Un bot puede estar diseñado en cualquier lenguaje de programación, funcionar en un servidor o en un cliente, o ser un agente móvil, etc. A veces son llamados Sistemas Expertos, pues muchos se especializan en una función específica.
La programación de un bot puede estar diseñada para cumplir tareas muy básicas como lo son el recordar alguna tarea o bien automatizar algún proceso, también existen bots con programación más compleja que buscan realizar actividades que conllevan toma de decisiones; estas decisiones son tomadas a partir de filtros o parámetros que el programador incluye en el código de programación. En estos días existen asistentes avanzados amigables que ayudan a manipular más fácilmente el código del bot.
Los principales usos de los bots son:[1]
Algunos bots se comunican con otros usuarios de servicios basados en Internet, mediante mensajería instantánea (MI), Internet Relay Chat (IRC) u otros interfaces web. Estos bots permiten a una persona hacer preguntas en cualquier idioma y recibir las correspondientes respuestas. Los bots a menudo sirven para realizar múltiples tareas a la vez, como por ejemplo dar información sobre el tiempo, sobre geografía, sobre deportes, hacer la conversión de monedas u otras unidades, etc.[5]
Un uso alternativo de los bots de IRC es el de residir en un canal de chat, comentando ciertas frases escritas por los participantes (basándose en el reconocimiento de patrones). Esto se utiliza como servicio de ayuda a los nuevos usuarios, o para censurar el lenguaje soez. En el caso de Telegram, se adoptó una plataforma para que los usuarios puedan desarrollar los bots para moderación, pago de servicios o juegos cooperativos sin requerir de intervención manual.
En el ambiente de los videojuegos, se conoce como bot a programas que son capaces de jugar por sí mismos el juego en cuestión (también conocidos como borgs). La calidad del bot en este caso viene determinada por su capacidad de vencer (y en qué términos) el videojuego. Los bots para juegos CRPG (computer role-playing games) son particularmente conocidos ya que este tipo de aplicaciones requieren una gran capacidad de estrategia para ganarlos. Es muy habitual también usar este término en los juegos disparos en primera persona, en los que sustituyen a un jugador humano cuando no hay contrincantes disponibles o en juego offline.
Los bots utilizados en campañas políticas se llaman bots sociales, se suelen utilizar para generar contenido en las redes sociales con el fin de impulsar y apoyar ciertas ideas o influencias en los procesos políticos, por ejemplo denostando a los candidatos opositores o para hacer crecer la popularidad de un determinado candidato en elecciones presidenciales o parlamentarias.[6] Este uso político del bot que genera contenido en Internet tiene una presencia cada vez mayor en todo el mundo; diversos estudios han encontrado que el porcentaje de la actividad generada por bots durante las elecciones supera en muchos casos el 10% de las publicaciones realizadas.[7][8]
Los bots se pueden usar para fines maliciosos a través de Internet; por ejemplo, el ataque de denegación de servicio, en el que un buen número de máquinas atacan un servidor web (véase Botnet). Otros ejemplos de uso malicioso son los bots de SPAM, que acumulan direcciones de e-mail rastreando páginas de contacto o de libros de visita, bots que ocupan todo el ancho de banda descargando sitios webs enteros, virus, gusanos, bots que incrementan artificialmente visitas a sitios web, etc.[9]
La herramienta más usada contra estos bots es el sistema CAPTCHA, una forma de test de Turing en el que se usa una palabra presentada en formato gráfico que el usuario debe escribir, algo muy difícil de interpretar para un bot.[10] No obstante, este sistema no es fiable al cien por cien, puesto que puede ser esquivado por programas de reconocimiento de caracteres o agujeros de seguridad.
Los bots también se usan para comprar los mejores asientos para conciertos y eventos, con el propósito de revenderlos posteriormente.[11] Los reventas compran automáticamente las entradas a través de bots para obtener de manera fraudulenta los mejores asientos para sí mismos, privando al público general de dichos asientos.
En los juegos en línea, se utilizan bots para desempeñar tareas repetitivas para conseguir recursos o mejorar los valores de los personajes, que de manera ordinaria requerirían mucho tiempo o esfuerzo obtener (farming).
En sitios de chat en línea (IRC o MSN), algunos bots fueron utilizados para simular una persona, intentando hacer creer al "ciberinterlocutor" que chateaban con una persona real. Es por ello que, aquellos sitios que hacen un uso positivo de los bots, como Wikipedia, tienen reglas muy estrictas para su uso. En el pasado, la propia Wikipedia fue víctima de bots maliciosos creados para vandalizar de forma masiva los artículos.
En herramientas de análisis de tráfico web tales como Google Analytics existen bots maliciosos denominados "Referral Spam" o "Ghost Spam" que interfieren con las métricas adulterando el resultado de un estudio. Este tipo de bots ni siquiera accede a las web, simplemente alteran los datos analíticos por diversas razones tales como generar clics ficticios, influir en el resultado de un informe o manipular resultados demográficos.
El uso de bots para usos maliciosos es una de las tendencias clasificables dentro del concepto de tecnofascismo, que intenta explicar la brecha digital que viven muchos individuos en el mundo actualmente y de la que se lucran determinados delincuentes y entidades.