background image

另外:该 IP 想篡改将很难实现,在传递知道生成 php server

 

值,都是直接生成的。

2.'HTTP_X_FORWARDED_FOR','HTTP_CLIENT_IP' 为了能在大型网络中,获取到最原
始用户 IP,或者代理 IP 地址。对 HTTp

 

协议进行扩展。定义了实体头。

HTTP_X_FORWARDED_FOR = clientip,proxy1,proxy2 所有 IP

用 ,”分割。 

HTTP_CLIENT_IP 在高级匿名代理中,这个代表了代理服务器 IP。既然是 http 协议扩展一
个实体头,并且这个值对于传入端是信任的,信任传入方按照规则格式输入的。以下以
x_forword_for 例子加以说明,正常情况下,这个值变化过程。

分析 Bug 风险点:通过刚刚分析我们发现,其实这些变量,来自 http 请求的:x-forword-
for 字段,以及 client-ip

 

字段。 正常代理服务器,当然会按 rfc 规范来传入这些值。但是,

当一个用户直接构造该 x-forword-for 值,发送给用户用户,那将会怎么样呢?

图(1)
第 2 步,修改 x-forword-fox 值,我们看看结果