我正在修改一个网络工具,给定一个 URL,它将检索文本并为用户提供有关内容的一些统计信息。
我担心为用户提供一种从我的盒子向网络上任意 URL 发起 GET 请求的方法可能会成为攻击的载体(例如 to http://undefended.box/broken-sw/admin?do_something_bad
)。
有没有办法将这种风险降到最低?提供公共 URL 检索能力时有什么最佳实践吗?
我想过的一些想法:
- 尊重
robots.txt
- 仅接受或拒绝某些 URL 模式
- 检查适当网站的黑名单/白名单(如果存在这样的事情)
- 通过知名的第 3 方的公共网络代理工作,假设他们已经内置了这些保护措施
谢谢你的帮助。
编辑:它将仅评估 HTML 或文本内容,而不下载或评估链接脚本、图像等。如果是 HTML,我将使用 HTML 解析器。