It’s a well known truth, that you don’t can trust user inputs. These inputs can be even an security-problem, if they are used unfiltered. XSS and SQL-injections are possible problems coming from using unfiltered user-input (or input, that can be changed by the user).
To avoid such problems, you have to control all strings, that can be influenced by external resources. Perl supports this with it’s ‘Taint-mode’.
The problems I know about, all are arising from manipulated Strings. Are you know examples of security-problems coming from ints, floats etc. manipulated by external influences? Or can this datatypes assumed to be safe?
Ultimately, all values are passed as strings to your program, whether you eventually convert them or not. All should be seen as potentially harmful, and not just for this reason.
For example, if you put non-numeric characters in a number field, you can get a parsing error. If you put a zero in where it isn’t anticipated, you can get a divide by zero error. If you put a much larger value in than is expected, or a negative when not expected, or any number of other things, you can get an error of some sort. And it is quite possible for system errors to leak more information than you want. For instance, in an ASP.NET application, if custom errors aren’t turned on, then database connection information, physical path information or information on third part libraries that your site uses can be leaked in the default error messages.
Strings are probably more likely to be problems than other values, but all user input should be treated as potentially harmful.