El software de terceros o las aplicaciones de terceros (en inglés, third-party software) son componentes de software desarrollados por personas o empresas distintas del fabricante del producto principal y del usuario, que se incorporan a ese producto o funcionan sobre él. Los terceros son, en este sentido, quienes no son ni el primero, el fabricante, ni el segundo, el cliente. Son software de terceros las extensiones de un navegador, las aplicaciones de un teléfono que no ha hecho el fabricante del sistema, los complementos de un programa de edición y, sobre todo, las bibliotecas (libraries) que los programadores usan dentro de sus propios programas.
Este último uso es el que más ha crecido. Casi ningún programa actual se escribe desde cero: se construye combinando decenas o cientos de bibliotecas ajenas, llamadas dependencias (dependencies), que resuelven problemas comunes, como leer un formato de archivo, cifrar una conexión o dibujar un gráfico. Los gestores de paquetes (package managers), como npm para JavaScript o pip para Python, permiten instalarlas con una orden, y el registro de npm contiene varios millones de paquetes. Gran parte de ellos son software libre. Esa manera de trabajar hace posible una programación modular muy productiva, en la que se añaden funciones sin tener que programarlas, pero también crea una cadena de confianza en la que cada eslabón es un punto débil.
Varios incidentes lo han mostrado. En 2016, un programador retiró del registro de npm un paquete de once líneas, left-pad, que servía para rellenar un texto con espacios, y miles de proyectos que dependían de él, directa o indirectamente, dejaron de poder compilarse durante unas horas. En diciembre de 2021 se descubrió Log4Shell, un fallo grave en Log4j, una biblioteca para escribir archivos de registro en Java presente en cientos de millones de sistemas. Y en 2020, los atacantes que comprometieron a la empresa SolarWinds introdujeron código malicioso en una actualización de su programa, que después instalaron sin saberlo miles de clientes, entre ellos varias agencias del gobierno estadounidense. Son los llamados ataques a la cadena de suministro (supply chain attacks).
Por eso el fabricante de un producto suele advertir de que no responde del funcionamiento de los componentes de terceros, y por eso las normas recientes piden conocerlos. Una orden ejecutiva del gobierno estadounidense de 2021 impulsó la lista de materiales del software (software bill of materials, SBOM), un inventario de todos los componentes que lleva un programa, y el Reglamento de Ciberresiliencia de la Unión Europea, de 2024, obliga a los fabricantes a responder de la seguridad de todo el software que incorporan a sus productos, sea propio o ajeno.