Nunca debe confiar en las entradas de su software, independientemente de la fuente. No solo es importante validar los tipos, sino también los rangos de entrada y la lógica empresarial. Según un comentario, esto está bien descrito por OWASP
Si no lo hace, en el mejor de los casos le dejará con datos basura que luego tendrá que limpiar, pero en el peor de los casos, dejará una oportunidad para explotaciones maliciosas si ese servicio ascendente se ve comprometido de alguna manera (por ejemplo, el pirateo de Target). El rango de problemas intermedios incluye poner su aplicación en un estado irrecuperable.
De los comentarios puedo ver que quizás mi respuesta podría necesitar un poco de expansión.
Por "nunca confíe en las entradas", me refiero simplemente a que no puede asumir que siempre recibirá información válida y confiable de los sistemas ascendentes o descendentes, y por lo tanto, siempre debe desinfectar esa entrada lo mejor que pueda o rechazarla eso.
Un argumento surgió en los comentarios que abordaré a modo de ejemplo. Si bien sí, tiene que confiar en su sistema operativo hasta cierto punto, no es irrazonable, por ejemplo, rechazar los resultados de un generador de números aleatorios si le pide un número entre 1 y 10 y responde con "bob".
Del mismo modo, en el caso del OP, definitivamente debe asegurarse de que su aplicación solo acepte entradas válidas del servicio ascendente. Lo que haga cuando no esté bien depende de usted y depende en gran medida de la función comercial real que esté tratando de lograr, pero mínimamente lo registraría para una depuración posterior y de lo contrario se aseguraría de que su aplicación no se ejecute en un estado irrecuperable o inseguro.
Si bien nunca puede saber cada entrada posible que alguien / algo pueda darle, ciertamente puede limitar lo que está permitido en función de los requisitos comerciales y hacer alguna forma de entrada en la lista blanca de entrada en función de eso.