2011-06-09 23 views
5
<?php 
setcookie('test', "test\r\n<script>alert(1)</script>"); 
echo 1; 

但事實證明PHP自動執行編碼:PHP對「HTTP Response Splitting」漏洞有免疫力嗎?

Set-Cookie: test=test%0D%0A%3Cscript%3Ealert%281%29%3C%2Fscript%3E 

這是否意味着它不可能再現HTTP response splitting在PHP?

+0

即使php版本過濾所有標頭和setcookie調用。爲什麼不用echo輸出腳本標籤呢? – mario 2011-06-09 03:16:57

+0

@mario,請通過我上面提供的鏈接。 – cpuer 2011-06-09 03:18:20

+0

那麼它呢?它沒有解釋*你*問題的目的。否則答案很簡單:是的,在當前的PHP版本中不可重現。維基百科的文章專門講解了這一段。 – mario 2011-06-09 03:22:50

回答

8

linked維基百科的文章:

[...]雖然響應拆分爲不特定於PHP,PHP解釋器包含自4.4.2版本5.1.2抗攻擊保護。 [1]

headersetcookie含有針對響應/報頭分割緩解。這是不可能的。

+0

是否可以禁用保護? – Arin 2016-12-24 07:29:46