원격 시스템이 Windows 또는 Linux를 사용 중인지 어떻게 알 수 있습니까?


10

명령 (예 : ICMP 메시지 또는 다른 프로토콜)을 실행하고 원격 시스템 (나의 개인 로컬 네트워크가 아닌)에서 응답을 얻고 메시지를 분석하여이 시스템이 Windows 또는 Windows를 실행하고 있다는 증거를 찾을 수있는 방법이 있습니까? 리눅스 운영 체제?


이 정보로 무엇을 하시겠습니까? 신뢰할 수 없을 수도 있습니다.
pjc50

실제로 나는 지난 주에 custumer에 있었고, 그는 자신의 네트워크에서 Windows 시스템을 사용하지 못하게하는 시스템을 사용하고있었습니다. 그것은 동일한 네트워크가 아닌 원격 서버에 의해 만들어졌습니다. 나는 그것이 어떻게 만들어 졌는지 알지 못했기 때문에 매우 이상하다고 말했습니다.
Diogo

그렇게 할 수있는 방법에는 여러 가지가 있습니다. 예를 들어 DHCP를 사용하여 네트워크 주소를 제공하는 경우 DHCP 요청에는 클라이언트 OS에 대한 정보가 포함됩니다.
Harry Johnston

답변:



10

IPv4 네트워크를 사용하는 경우 핑을 사용하십시오. 응답의 TTL이 128 인 경우 대상이 Windows를 실행 중일 수 있습니다. TTL이 64 인 경우 대상은 아마도 일부 유닉스 변형을 실행하고있을 것입니다.


적절하게 무엇을 의미합니까?
Dchris

TTL = 255는 어떻습니까? 유닉스입니다 ..
Dchris

1
TTL 255를 본 적이 없다고 생각합니다.
Harry Johnston

이것에 대한 설명은 무엇입니까?
Hervian

1
@Hervian, 특정 TTL을 선택한 이유를 알고 있다면 원래 프로그래머에게 문의해야합니다. 대부분의 또는 모든 UNIX 변형이 모두 동일한 이유 및 / 또는 TTL이 모든 Windows 버전에서 동일한 이유를 의미하는 경우 이는 관성이 될 수 있습니다. 무언가를 변경해야 할 특별한 이유가없는 경우에는 같은.
Harry Johnston

2
: Presumes ping service enabled on Windows local and remote hosts
:
del _IX.txt, Windows.txt
ping -n 1 [computername|ipaddress] | findstr /i /c:"Reply" > ttl.txt
for /f "tokens=1-9* delims=:=< " %%a in (ttl.txt) do (
    if %%i leq 130 (
       if %%i geq 100 (
          echo Windows & rem or echo %%c >> Windows.txt
       ) else (
          if %%i equ 64 (
             echo *IX & rem or echo %%c >> _IX.txt
          )
       )
    )
)

다양한 IP에서 작동하도록 수정할 수 있습니까? 이것을 실행하여 전체 서버 스택에 대한 모든 ttl을 찾으십시오.
Eddie Studer

1

한 가지 방법은 NMap 을 사용하는 것입니다 . 응답에서 원격 OS를 추측 할 수 있습니다.


1

패키지 : xprobe 'OR'xprobe2
설명 : 원격 OS 식별 Xprobe2를 사용하면 원격 호스트에서 실행중인 운영 체제를 확인할 수 있습니다. 호스트에 여러 패킷을 보내고 반환 된 응답을 분석합니다. Xprobe2의 기능은 nmap의 OS 지문 인식 기능과 비슷합니다.

예 :
$ sudo apt-get install xprobe
$ sudo xprobe2 -T21-23,80,53,110 ###. ###. ###. ###

참조 :
http://www.sys-security.com/html/projects/X.html
http://sourceforge.net/projects/xprobe/


0

이전 게시물이지만 이것도 추가 할 것이라고 생각했습니다. 장치가 SNMP를 사용할 수 있으면 사용중인 OS를 알려주는 sysDescr을 쿼리 할 수도 있습니다.

MIB 브라우저를 다운로드하십시오. http://www.ireasoning.com/downloadmibbrowserfree.php 내가 사용하는 좋은 브라우저 입니다. 기본적으로 장치의 IP 주소를 지정하고 도보 작업을 수행합니다.


이를 달성하는 방법을 설명하기 위해 답을 넓힐 수 있습니까? 감사.
fixer1234

MIB 브라우저를 다운로드 할 수 있습니다 . 제가 사용하는 좋은 브라우저는 ireasoning.com/downloadmibbrowserfree.php 입니다. 당신은 기본적으로 장치의 IP 주소를 제공하고 도보 작업을 수행
Johnathon64

0

Johnathon64의 제안에 따라 원격 서버 자체가 SNMP를 사용하도록 구성되어 있다고 가정하면 SNMP를 사용하여 서버에서 직접 쿼리 할 수 ​​있습니다. 아래와 같은 명령 줄 쿼리를 시작할 수 있습니다.

snmpget -v1 -c public <RemoteServerIP> sysDescr.0 | sed -n 's/.*STRING: //p' | tr -d \"

명령 자체를 설명 :

  1. snmpget 객체의 기본 이름을 포함하는 객체 sysDescr을 쿼리합니다.
  2. 다음 sed은 폴링 된 OID와 문자열의 시작 만 포함하는 시작 출력을 제외합니다.
  3. 마지막 명령 인 tr은 일반적으로 SNMP 쿼리에서 발견되는 큰 따옴표를 제외합니다.

마지막 두 명령은 출력 형식을 지정하기위한 것입니다. 필요하지 않은 경우 첫 번째 명령을 사용하여 전체 출력을 추출 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.