有没有办法向网页访问者证明Web服务器上托管的开源服务器端应用程序是完全未修改的(没有恶意代码)?应用程序必须是服务器端,客户端是不可能的。是否有任何托管服务提供商确认只有未修改的脚本正在运行?
e.g。确认随机数生成器不存储其计算值。
答案 0 :(得分:0)
不,没有客户端用户可以保证服务器是"没有恶意代码"。实际上,您可以在没有网站本身被感染的情况下托管网站,同时让恶意程序在您不知情的情况下在服务器上执行其他操作。如果您没有将代码写入可执行文件并且已执行,则无法保证它不是恶意的。
答案 1 :(得分:0)
你应该缩小你的问题范围。首先,就像杰克提到的那样,服务器可以向其他人(例如,发送垃圾邮件)做恶意内容,而不会与显示它的访问者进行任何交互。所以,您可以询问的是:"用户可以确定正在运行的脚本不会对访问者数据做任何错误,或者如果初始开源脚本没有攻击他们没有按' T"
但那还不够窄。比如说,脚本是从一些高级模式(这是用户的输入)生成一些代码,并且生成是在服务器端完成的。你可以确定输出代码不是恶意的,除非你之前没有输入完全相同的东西并得到不同的输出(如果你有相同的输出,它不会告诉任何东西因为只能为某些输入插入恶意代码。)
可以检查的是http响应是否相同(相同的html和其他资源作为响应)。但要做到这一点,必须存储以前的响应,除非有客户端应用程序,否则无法以非技术方式完成。此外,当人们认为响应绝对安全时,唯一的情况是至少没有与服务器进行进一步的交互(ajax调用等)并且检查这不是一项简单的任务。
所以实际上你必须添加一个客户端应用程序,即使在这种情况下,也可以在非常罕见的情况下完全确定服务器是正常的。毕竟,如果服务器端没有改变(没有存储的数据?),那么创建一个客户端应用程序是很自然的。
如果缩小主题,您可能会得到更多有用的答案:您的服务器端应该做什么?