2015-07-28 25 views
0

我無法訪問我的客戶服務器(生產)上的特定文件類型。Apache,僅在特定文件類型和HTTP上重置連接

下面是結果與捲曲:

curl "http://domain.tld/fonts/glyphicons-halflings-regular.eot" -I 
HTTP/1.1 200 OK 
Date: Tue, 28 Jul 2015 12:06:23 GMT 
Server: Apache/2.2.15 (Red Hat) 
Last-Modified: Tue, 19 May 2015 15:32:20 GMT 
ETag: "14023-4f42-516710421e900" 
Accept-Ranges: bytes 
Content-Length: 20290 
Connection: close 
Content-Type: application/vnd.ms-fontobject 

的文件是在這裏。 但是,當我試圖讓文件內容:

curl "http://domain.tld/fonts/glyphicons-halflings-regular.eot" 
curl: (56) Recv failure: Connection was reset 

我(還)沒有訪問客戶的服務器,所以我試圖猜測什麼是錯在這裏。

什麼是工作迄今:

curl "https://domain.tld/fonts/glyphicons-halflings-regular.eot" --insecure 

它在HTTPS工作,即使沒有證書(這就是爲什麼我用--insecure)。我收到文件內容。

如果用戶從本地URL訪問文件,客戶可以獲取該文件。

我可以訪問服務器上的所有其他文件,即使是在字體目錄中。 我無法訪問所有.eot文件,即使在其他目錄中也是如此。

所以我認爲這是2個問題之一: - Apache配置/ .htaccess問題。 - 代理/反向代理問題。

您對此有何看法? 我應該做什麼樣的其他測試? 我應該向客戶詢問什麼信息?

謝謝。

回答

0

好的,這是原因: 客戶防火牆阻止.eot文件內容。

A vulnerability in Embedded Web Fonts Could Allow Remote Code Execution. 

http://www.checkpoint.com/defense/advisories/public/2006/cpai-2006-010.html

由於.eot文件由IE8和更低的使用,並深受客戶不需要這些版本的瀏覽器,我只是刪除了所有引用.eot文件。

另一個解決方案是要求客戶防火牆管理員添加一個異常,因爲嚴重程度很低。