系統(tǒng)識(shí)別有什么方法
系統(tǒng)識(shí)別有什么方法
操作系統(tǒng)的認(rèn)識(shí),對(duì)于每一個(gè)從事計(jì)算行業(yè)的人都是非常重要,要成為一名黑客更是要對(duì)操作系統(tǒng)有深入、深刻的認(rèn)識(shí)。下面就和大家一起來(lái)探討一下這方面的問(wèn)題。
我們先來(lái)看分析一下一個(gè)黑客入侵的基本過(guò)程:1、判斷入侵對(duì)象的操作系統(tǒng)—>2、描掃端口,判斷開(kāi)放了那些服務(wù)(這兩步有可能同時(shí)進(jìn)行)—>3、跟據(jù)操作系統(tǒng)和所開(kāi)放的服務(wù)選擇入侵方法,通常有“溢出”和“弱口猜測(cè)”兩種方法—>4、獲得系統(tǒng)的最高權(quán)力—>5、安放后門,清除日志走人(也許有格盤走人的)。
由上面可以知道,在整個(gè)過(guò)程當(dāng)中對(duì)操作系統(tǒng)類型的判斷識(shí)別是最基本也是很關(guān)系的一步??上攵绻氵B對(duì)方的操作系統(tǒng)是什么都不知道,要想入侵跟本無(wú)從談起。
也許很少人問(wèn)過(guò)自己,我們?yōu)槭裁匆攘私鈱?duì)方的操作系統(tǒng)呢?其實(shí),我們了解操作系統(tǒng)的原因是因?yàn)槲覀円私庀到y(tǒng)內(nèi)存的工作況態(tài),了解它是以什么方式,基于什么樣的技術(shù)來(lái)控制內(nèi)存,以及怎么樣來(lái)處理輸入與輸出的數(shù)據(jù)的。世上任何東西都不可能是盡善盡美的(當(dāng)然這也是我們?nèi)祟惒粩嘧非蟮膭?dòng)力所在),作為復(fù)雜的!
計(jì)算機(jī)系統(tǒng)更如此,它在控制內(nèi)存與處理數(shù)據(jù)的過(guò)程中總是有可能出錯(cuò)的(特別是在安裝了其它的應(yīng)用程序以后),系統(tǒng)本身也會(huì)存在各種各樣的弱點(diǎn)與不足之處。黑客之所以能夠入侵,就是利用了這些弱點(diǎn)與錯(cuò)誤。現(xiàn)在網(wǎng)上流行的各種各樣的入侵工具,都是黑客在分析了系統(tǒng)的弱點(diǎn)及存在的錯(cuò)之后編寫出來(lái)的。(其中以“緩沖區(qū)溢出”最為常見(jiàn))
作為一般的黑客,我們只要善于使用現(xiàn)成的入侵工具,就可以達(dá)到我們?nèi)肭值哪康?。但是因?yàn)椴煌南到y(tǒng),其工作原理不一樣,所以不同的入侵工具只能針對(duì)相應(yīng)的操作系統(tǒng)。因此,對(duì)操作系統(tǒng)的識(shí)別是必不可少的,這就需要我們對(duì)操作系統(tǒng)有相當(dāng)?shù)牧私猓瑢?duì)網(wǎng)絡(luò)有一定的基礎(chǔ)識(shí)(要作黑客還是不那么容易的),關(guān)于各類操作系統(tǒng)的介紹,在網(wǎng)上有成堆的文章,大家可以自己去查閱。
在此介紹一此簡(jiǎn)單的操作系統(tǒng)識(shí)別方法給大家,希望對(duì)大家有用。
一、用ping來(lái)識(shí)別操作系統(tǒng)
C:\>ping 10.1.1.2
Pinging 10.1.1.2 with 32 bytes of data:
Reply from 10.1.1.2: bytes=32 time<10ms TTL=128
Reply from 10.1.1.2: bytes=32 time<10ms TTL=128
Reply from 10.1.1.2: bytes=32 time<10ms TTL=128
Reply fr!
om 10.1.1.2: bytes=32 time<10ms TTL=128
Ping statist!
ics for
10.1.1.2:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
C:\>
C:\>ping 10.1.1.6
Pinging 10.1.1.6 with 32 bytes of data:
Request timed out.
Reply from 10.1.1.6: bytes=32 time=250ms TTL=237
Reply from 10.1.1.6: bytes=32 time=234ms TTL=237
Reply from 10.1.1.6: bytes=32 time=234ms TTL=237
Ping statistics for 10.1.1.6:
Packets: Sent = 4, Received = 3, Lost = 1 (25% loss),
Approximate round trip times in milli-seconds:
Minimum = 234ms, Maximum = 250ms, Average = 179ms
我們跟據(jù)ICMP報(bào)文的TTL的值,我們就可以大概知道主機(jī)的類型。如:TTL=125左右的主機(jī)應(yīng)該是windows系列的機(jī)子,TTL=235左右的主機(jī)應(yīng)該是UINX系列的機(jī)子。如上面的兩個(gè)例子,10.1.1.2就是win2000的機(jī)子,而10.1.1.6則是UINX(Sunos 5.8)的機(jī)子。這是因?yàn)椴煌到y(tǒng)ICMP報(bào)文的處理與應(yīng)答是有所不同的,TTL值每過(guò)一個(gè)路由器會(huì)減1。所以造成了TTL回復(fù)值的不同。對(duì)于TTL值與操作系統(tǒng)類型的對(duì)應(yīng),還要靠大家平時(shí)多注意觀察和積累。
二、直接通過(guò)聯(lián)接端口根據(jù)其返回的信息來(lái)判操作系統(tǒng)
這種方法應(yīng)該說(shuō)是用得最多的一種方法,下面我們來(lái)看幾個(gè)實(shí)例。
1、如果機(jī)子開(kāi)了80端口,我們可以telnet(當(dāng)然如果有NC最好用NC,它可以不用盲打)它的80端口。
Microsoft Windows 2000 [Version 5.00.2195]
(C) 版權(quán)所有 1985-1998 Microsoft Corp.
C:\>telnet 10.1.1.2 80
輸入get 回車(注意這里是盲打)
如果返回,
HTTP/1.1 400 Bad Request
Server: Microsoft-IIS/5.0
Date: Fri, 11 Jul 2003 02:31:55 GMT
Content-Type: text/html
Content-Length: 87
The parameter is incorrect.
遺失對(duì)主機(jī)的連接。
C:\>
那么這臺(tái)就肯定是windows的機(jī)子。
如果返回,
!
; &!
nbsp;&nb
sp; &nbs!
p;
Method Not Implemented
get to / notsupported.
Invalid method in request get
Apache/1.3.27 Server at gosiuniversity.com Port 80
Y>
遺失對(duì)主機(jī)的連接。
C:\>
那么多數(shù)就是UINX!
系統(tǒng)的機(jī)
子了。
2、如果機(jī)子開(kāi)了21端口,我們可以直接FTP上去
C:\>ftp 10.1.1.2
如果返回,
Connected to 10.1.1.2.
220 sgyyq-c43s950 Microsoft FTP Service (Version 5.0).
User (10.1.1.2:(none)):
那么這就肯定是一臺(tái)win2000的機(jī)子了,我們還可以知道主機(jī)名呢,主機(jī)名就是sgyyq-c43s950。這個(gè)FTP是windows的IIS自帶的一個(gè)FTP服務(wù)器。
如果返回,
Connected to 10.1.1.3.
220 Serv-U FTP Server v4.0 for WinSock ready...
User (10.1.1.3:(none)):
也可以肯定它是windows的機(jī)子,因?yàn)镾erv-U FTP是一個(gè)專為windows平臺(tái)開(kāi)發(fā)的FTP服務(wù)器。
如果返回,
Connected to 10.1.1.3.
220 ready, dude (vsFTPd 1.1.0: beat me, break me)
User (10.1.1.3:(none)):
那么這就是一臺(tái)UINX的機(jī)子了。
3、如果開(kāi)了23端口,這個(gè)就簡(jiǎn)單了,直接telnet上去。
如果返回,
Microsoft (R) Windows (TM) Version 5.00 (Build 2195)
Welcome to Microsoft Telnet Service
Telnet Server Build 5.00.99201.1
login:
那么這肯定是一臺(tái)windows的機(jī)子了
如果返回,
SunOS 5.8
login:
不用說(shuō)了,這當(dāng)然是一臺(tái)U!
INX的機(jī)子了,并且版本是SunOS 5.8的。
三、利用專門的軟件來(lái)識(shí)別
這種有識(shí)別操作系統(tǒng)功能的軟件,多數(shù)采用的是操作系統(tǒng)協(xié)議棧識(shí)別技術(shù)。這是因?yàn)椴煌膹S家在編寫自己操作系統(tǒng)時(shí),TCP/IP協(xié)議雖然是統(tǒng)一的,但對(duì)TCP/IP協(xié)議棧是沒(méi)有做統(tǒng)一的規(guī)定的,廠家可以按自己的要求來(lái)編寫TCP/IP協(xié)議棧,從而造成了操作系統(tǒng)之間協(xié)議棧的不同。因此我們可以通過(guò)分析協(xié)議棧的不同來(lái)區(qū)分不同的操作系統(tǒng),只要建立起協(xié)議棧與操作系統(tǒng)對(duì)應(yīng)的數(shù)據(jù)庫(kù),我們就可以準(zhǔn)確的識(shí)別操作系統(tǒng)了。目前來(lái)說(shuō),用這種技術(shù)識(shí)別操作系統(tǒng)是最準(zhǔn)確,也是最科學(xué)的。因此也被稱為識(shí)別操作系統(tǒng)的“指紋技術(shù)”。當(dāng)然識(shí)別的能力與準(zhǔn)確性,就要看各軟件的數(shù)據(jù)庫(kù)建立情況了。
下面是簡(jiǎn)單介紹兩款有識(shí)別功能的軟件。
1、著名的nmap,它采用的是主動(dòng)式探測(cè),探測(cè)時(shí)會(huì)主動(dòng)向目標(biāo)系統(tǒng)發(fā)送探測(cè)包,根據(jù)目標(biāo)目標(biāo)機(jī)回應(yīng)的數(shù)據(jù)包來(lái),叛斷對(duì)方機(jī)的操作系統(tǒng)。用法如下:
F:\nmap>nmap -vv -sS -O 10.1.1.5
Starting nmap V. 3.00 ( www.insecure.org/nmap )
Host IS~123456ADCD (10.1.1.5) appears to be up ... good.
Initiating SYN Stealth Scan against IS~123456ADCD (10.1.1.5)
Ad!
ding open port 139/tcp
Adding open port 7070/tcp
Adding !
open por
t 554/tcp
Adding open port 23/tcp
Adding open port 1025/tcp
Adding open port 8080/tcp
Adding open port 21/tcp
Adding open port 5050/tcp
Adding open port 9090/tcp
Adding open port 443/tcp
Adding open port 135/tcp
Adding open port 1031/tcp
Adding open port 3372/tcp
Adding open port 25/tcp
Adding open port 1433/tcp
Adding open port 3389/tcp
Adding open port 445/tcp
Adding open port 80/tcp
The SYN Stealth Scan took 1 second to scan 1601 ports.
For OSScan assuming that port 21 is open and port 1 is closed and neither ar
rewalled
Interesting ports on IS~123456ADCD (10.1.1.5):
(The 1583 ports scanned but not shown below are in state: closed)
Port State Service
21/tcp open ftp
23/tcp open telnet
25/tcp!
open smtp
80/tcp open http
135/tcp open loc-srv
139/tcp open netbios-ssn
443/tcp open https
445/tcp open microsoft-ds
554/tcp open rtsp
1025/tcp open NFS-or-IIS
1031/tcp open iad2
1433/tcp open ms-sql-s
3372/tcp open msdtc
338!
9/tcp open &nbs!
p;
ms-term-serv
5050/tcp open mmcc
7070/tcp open realserver
8080/tcp open http-proxy
9090/tcp open zeus-admin
Remote operating system guess: Windows 2000/XP/ME
OS Fingerprint:
TSeq(Class=RI%gcd=1%SI=21F8%IPID=I%TS=0)
T1(Resp=Y%DF=Y%W=FAF0%ACK=S++%Flags=AS%Ops=MNWNNT)
T2(Resp=Y%DF=N%W=0%ACK=S%Flags=AR%Ops=)
T3(Resp=Y%DF=Y%W=FAF0%ACK=S++%Flags=AS%Ops=MNWNNT)
T4(Resp=Y%DF=N%W=0%ACK=O%Flags=R%Ops=)
T5(Resp=Y%DF=N%W=0%ACK=S++%Flags=AR%Ops=)
T6(Resp=Y%DF=N%W=0%ACK=O%Flags=R%Ops=)
T7(Resp=Y%DF=N%W=0%ACK=S++%Flags=AR%Ops=)
PU(Resp=Y%DF=N%TOS=0%IPLEN=38%RIPTL=148%RIPCK=E%UCK=E%ULEN=134%DAT=E)
TCP Sequence Prediction: Class=random positive increments
&nbs!
p; Difficulty=8696 (Worthy challenge)
TCP ISN Seq. Numbers: 5B9022E2 5B914E12 5B92A495 5B93915A 5B94A9B5 5B95CC64
IPID Sequence Generation: Incremental
Nmap run completed -- 1 IP address (1 host up) scanned in 2 seconds
其中 Remote operating system guess: Windows 2000/XP/ME 這行就是NMAP對(duì)操作系統(tǒng)類型的判斷。還返回了好多信息,NMAP不愧為掃描之王。(哈哈,黑客必備哦!)
2、天眼,采用的是被動(dòng)式的探測(cè)方法。不向目標(biāo)系統(tǒng)發(fā)送數(shù)據(jù)包,只是被動(dòng)地探測(cè)網(wǎng)絡(luò)上的通信數(shù)據(jù),通過(guò)分析這些數(shù)據(jù)來(lái)判斷操作系統(tǒng)的類型。配合supersan使用,較果很好。
具體的使用方法,在此就不具體介紹了。有興趣的的朋友可以到網(wǎng)上搜一下關(guān)于天眼使用方法的文章,會(huì)有很多的。