我正在开发一个用户可以发布笔记的网站。我考虑允许用户通过提供图像的URL(而不是通过表单上传)来发布图像。
然而,我了解到这可能会被用于某些黑客行为,例如,用户可以粘贴一个不是图像的URL,因此当页面加载时,将会向该URL发出GET请求。
我想知道:
1. 还有哪些恶意行为可能发生,以及如何阻止它们?
2. 是否有一种简单的方法(只使用JavaScript)来检查URL是否为图像?
我正在开发一个用户可以发布笔记的网站。我考虑允许用户通过提供图像的URL(而不是通过表单上传)来发布图像。
然而,我了解到这可能会被用于某些黑客行为,例如,用户可以粘贴一个不是图像的URL,因此当页面加载时,将会向该URL发出GET请求。
我想知道:
1. 还有哪些恶意行为可能发生,以及如何阻止它们?
2. 是否有一种简单的方法(只使用JavaScript)来检查URL是否为图像?
然而,我发现这可以用于某种类型的黑客攻击,例如,用户可以粘贴一个不是图像的url,因此当页面加载时,将对该url进行GET请求。
用户会粘贴指向图像的链接还是上传自己电脑上的文件?
- 还有哪些黑客攻击可能利用这个漏洞?
我们这样说吧:用户正在向您的服务器上传任意文件
- 有没有一种简单的方法(只需使用JavaScript)来检查url是否为图像?
实际上没有,而且这也没有帮助。您需要进行服务器端检查。
您需要阅读的内容列表:
http://www.scriptygoddess.com/archives/2004/10/19/gifs-that-execute-a-php-script/
有更多的问题...
如果在HTML中嵌入一个未知的URL作为图像,则无论它是否真正是图像,都会执行对此URL的GET请求。
问题是这可能会造成一些损害,例如: