我正在开发一个网络应用程序,在Django documentation我读到了这个:
模板系统对不受信任的模板作者不安全。例如,网站不应允许其用户提供自己的模板。
鉴于我不允许最终用户上传任何代码,我认为只有当用户以某种方式获得对服务器的访问并上传他的(恶意)模板时才能实现上述功能。或者通过XSS攻击。
我在这里缺少什么,应该知道吗?是否有任何其他措施(保护我的服务器和寻找XSS攻击除外)我必须采取以防止这种情况发生?
答案 0 :(得分:0)
模板代码不必在文件中。因此,可以创建一个django网站,用户可以在常规表单中提交django模板代码,就像你可以在StackOverflow使用markdown一样。模板代码将存储在数据库的模型字段中。
开发人员可能会试图以这种方式使用django模板代码。例如,如果您使用django构建了博客站点或论坛。
您不需要采取任何特殊措施来防止这种情况发生。只有当您为用户创建某种方式提交在服务器上执行的模板代码时,才能利用它。