应该清理用户通过电话发短信的SMS文本命令

时间:2014-03-19 20:12:52

标签: asp.net security asp.net-mvc-4 twilio sms-gateway

我有一个普遍的问题。我们通常应该清理用户通过他们发送响应的电话输入的SMS文本命令吗?如果是,我们应该立即消毒,即一旦消毒吗?有关在asp.net V4.5 / MVC中完成此操作的方法的任何想法? 我正在使用Twilio。 Twilio Helper有没有APis这样做?

1 个答案:

答案 0 :(得分:0)

  

我们是否应该正常清理用户通过我们发送回复的电话输入的SMS文本命令?

我假设您的意思是"将发送到响应",就像在ASP.NET中的Response对象一样?

与应用程序的所有输入一样,您应该在输出到响应时对其进行正确编码。您通常可以在数据库中以原始的,未编码的格式存储它,但如果将其输出为HTML或JavaScript,则应对其进行正确编码。

e.g。如果将"字符输出为HTML,则应在输出点将其编码为&quot;。在MVC中,这是由Razor使用@variable语法自动完成的。在经典MVC中,语法为<%: variable%>(从不使用<%=variable%>,因为这不会编码)。

如果输出到JavaScript,那么它应该是十六进制实体编码,因此"变为\x22。您可以使用@Html.Raw(HttpUtility.JavaScriptStringEncode(variable))在MVC中执行此操作(此示例使用Razor)。

查看OWASP XSS Prevention Cheat Sheet,了解有关如何根据输出上下文正确编码的提示。