Estuvo de acuerdo en que el acceso físico es malo, pero hay algunas cosas que puede hacer, que al menos demorarán al atacante el tiempo suficiente para que note que falta el PI y cambiar las credenciales en la base de datos.
En primer lugar, no hace falta decirlo, debe asegurar el Pi físicamente y asegurarse de que tiene sistemas en su lugar para detectar que falta lo antes posible. Inspección física diaria - y tal vez una secuencia de comandos remota para verificar si el Pi todavía está conectado a la red que se ejecuta cada 20-30 minutos. Si el Pi está desconectado de la red, el script te alerta y ahora puedes actuar sobre él.
Intente asegurarse de que haya cifrado de disco completo en la Pi. No soy un experto en Raspbian o en el sistema operativo que esté ejecutando, pero un cifrado de disco implementado correctamente, al menos ralentizará al atacante, o al menos los detendrá en seco.
Dependiendo de su base de datos, intente usar el administrador de secretos de AWS. En esta configuración, todo lo que tiene en el Pi es una configuración de la clave de la API de AWS para el USUARIO IAM no root que tiene permisos muy limitados. La llamada a la API devuelve las credenciales de la base de datos para que las use. La magia es que, no solo puede deshabilitar la Clave de la API con un clic / comando, también puede rotar los secretos de la base de datos sin tocar su aplicación. Esto le brinda una flexibilidad mucho más fácil para evitar el acceso una vez que se descubre que falta el Pi.
Todo se trata de la defensa en profundidad. El atacante tiene que eliminar físicamente la tarjeta SD de su Pi (o robar el Pi por completo), omitir el FDE y luego omitir la contraseña del sistema operativo, y luego todos tienen la clave para la base de datos, que esperamos que ya haya desactivado para entonces.
El administrador de secretos cuesta $ 0.50 / secreto por mes y no debería ser demasiado difícil de implementar a través de Boto3 (por defecto Python SDK para AWS). Si está ejecutando algo como DynamoDB, probablemente pueda vivir sin él, simplemente deshabilitando al usuario IAM (o su clave API) que tiene acceso a la base de datos.