防止X-Forwarded-使用ELB和Node进行欺骗

时间:2017-11-02 10:33:15

标签: node.js amazon-web-services amazon-elb pm2 spoofing

我正在分析一个公共路由的堆栈,该路由依赖于Elastic Load Balancer,它打开PM2公开的端口,该端口使用koa模块启动节点应用程序。此时,将记录IP,这仅取决于X-Forwarded-For标头。如果使用curl手动创建此标头,则应用程序会将其写为IP地址。

是否有一种简单的方法可以防止欺骗此标头或设置AWS的ELB,因此它会忽略手动插入的标头,或者是否有比欺骗性标头更好的方式来获取访问者的真实IP地址? / p>

1 个答案:

答案 0 :(得分:7)

根据doc

  

如果来自客户端的请求已包含X-Forwarded-For标头,则Elastic Load Balancing会在标头值的末尾附加客户端的IP地址。在这种情况下,列表中的最后一个IP地址是客户端的IP地址。

所以最后一个IP总是真正的IP。