os를 탐지하기 위한 방법에는 어떤방법이 있을까요?

codekim의 이미지

보통 포트스캐너를 이용하여 어떤 포트가 열려있는지 아는데요.
포트로 패킷을 날려서 응답을 보고 아는데..
근데 상대방의 os를 알기 위해서는 어떤 방식으로 해야하는지요?
혹시 님들이 가지고 있는 소스나 방법이 있으면.. 알려주십시요.^^
그럼 님들 모두모두 좋은 하루 되십시오..
고수님들의 답변 부탁드립니다.

beta의 이미지

nmap 같은툴을 이용합니다.
아래 링크를 참고하세요.
http://www.insecure.org/nmap/nmap-fingerprinting-article.html

발 담갔다. 이제 익숙해 지는길만이..

nachnine의 이미지

가장 쉬운 방법으로는 banner scanning도 있죠 :)

특수한 목적 ( 대부분 보안상의 이유 )

으로 변조해 놓으면 ;; 이것은 무용지물.

bh의 이미지

nmap 만든 사람 참 대단하더이다,,

--
이 아이디는 이제 쓰이지 않습니다.

nthroot의 이미지

핑으로 돌아오는 TTL 값이 OS마다 다릅니다.

예를 들면 리눅스는 64 이고

윈도우는 128입니다.

중간에 홉 수에 따라 감소할테니 근처의 값이 나옵니다.

------식은이 처------
길이 끝나는 저기엔 아무 것도 없어요. 희망이고 나발이고 아무 것도 없어.

jyj9782의 이미지

C:\Documents and Settings\정경주>ping 192.168.2.12

Pinging 192.168.2.12 with 32 bytes of data:

Reply from 192.168.2.12: bytes=32 time<1ms TTL=255

Ping statistics for 192.168.2.12:
Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
Control-C
^C
C:\Documents and Settings\정경주>

힘내세요.

Saintlinu의 이미지

Quote:

Reply from 192.168.2.12: bytes=32 time<1ms TTL=255

TTL로 판단하는게 지금은 그렇게 정확하지 않습니다만 그래도 유용하기는

합니다.

kernel의 network 부분이 TTL을 얼마로 시작하고 ICMP를 구성했느냐에

따라서 다양하기 때문이죠.

그래서 TCP flag조합 / ping ttl / TCP session handshaking No.등

다양한 방법을 조합해서 아마 '무슨무슨' OS 이다. 라고 하는 것으로

알고 있습니다.

행복하세요 ^_^

saxboy의 이미지

OS fingerprinting 으로 구글링해보세요. ;-)