2012-02-06 144 views
1

的OS版本有沒有辦法使用IP地址(與知識的Web服務器正在運行PHP)來檢測Web服務器的操作系統版本。如何檢測Web服務器

我還沒有嘗試它尚未代碼,因爲我是一個初學者。這簡單嗎?有沒有可能嗎?

回答

6

有檢測所有操作系統和配置遠程服務器上的操作系統沒有正式的辦法。暴露此類信息通常被認爲是安全風險,因爲它可以用來研究基於OS版本及其運行的任何服務的定向攻擊。

但是,您可以指紋系統來「猜測」的操作系統,這取決於暴露的服務。許多服務將揭示當前正在運行的操作系統,其中一些會暗示它或提供有關係統的廣泛信息。

我肯定不會建議任何人在PHP嘗試這樣的項目經驗不足,但這裏有一些鏈接,讓你開始:

如果你只是想找到從用戶瀏覽網站的操作系統,你應該看看User-Agent HTTP標頭:http://en.wikipedia.org/wiki/User_agent

+0

耶只是OS,如果我想從用戶代理得到它,我有什麼樣的代碼有沒有什麼固定的格式'用戶Agent'使用剛剛輸出的Linux或Windows Server 2003等。 – 2012-02-06 17:25:25

+0

,但是對於「PHP檢測用戶代理操作系統」的快速Google應該爲您提供數百個可以讓您開始實現它的地方。通常,我只會在代理程序字符串中查找「Windows」,「Linux」或「OS X」並將它們標記爲這樣。 – Polynomial 2012-02-06 17:27:28

+0

謝謝:)讓我們看看它是否可以幫助:) – 2012-02-06 17:28:30

-4

你的問題是怎樣的一個尚不清楚,但我asume要顯示你的網站上運行的系統的操作系統?你可以試試:

<?php 
echo (string)(PHP_OS); 
?> 

<?php 
echo $_SERVER['SERVER_SOFTWARE']; 
?> 

但這不會返回您的操作系統的精確版本,因爲它只會指示平臺(Windows,Linux和MacOS的,等等),而後者的腳本也在窗口下顯示32/64位。

+0

這不是問什麼。問題標題說明了這一切:「如何獲得*遠程機器*操作系統版本在PHP」 – Polynomial 2012-02-06 17:23:37

+0

我想知道你在這裏描述爲遠程IP /服務器的平臺不是我的:)是否有可能? – 2012-02-06 17:24:41

+0

@Polynomial究竟:) – 2012-02-06 17:25:48