Hacker Geek TTL 및 TCP 창 크기의 지문 인식
네트워크에서 통신하는 방식 만보고 네트워크 장치가 실행중인 운영 체제를 찾을 수 있다는 것을 알고 계셨습니까? 디바이스가 실행중인 운영체제를 어떻게 발견 할 수 있는지 살펴 보겠습니다..
왜 이렇게할까요??
기계 또는 장치가 실행중인 운영 체제를 결정하는 것은 여러 가지 이유로 유용 할 수 있습니다. 먼저 일상적인 관점을 살펴보고, 한 달에 50 달러에 한도없는 인터넷 서비스를 제공하는 새로운 ISP로 전환하려는 경우 상상해보십시오. 그러면 서비스를 시험 사용해 볼 수 있습니다. OS 지문을 사용하면 쓰레기 라우터가 있음을 곧 알게되고 여러 Windows Server 2003 컴퓨터에서 제공되는 PPPoE 서비스를 제공하게됩니다. 더 이상 그런 좋은 거래처럼 들리지는 않아. 응.?
이에 대한 또 다른 용도는 비록 윤리적이지는 않지만 보안상의 취약점은 OS에 따라 다르다는 사실입니다. 예를 들어, 포트 스캔을 수행하고 포트 53이 열려 있고 컴퓨터가 Bind의 오래된 버전과 취약한 버전을 실행하고 있으면 실패한 시도로 인해 데몬이 손상 될 수 있으므로 보안 구멍을 악용 할 수 있습니다.
OS 지문 인식은 어떻게 작동합니까??
현재의 트래픽을 수동적으로 분석하거나 심지어 오래된 패킷 캡처를보고있을 때 OS 지문 인식을하는 가장 쉽고 효과적인 방법 중 하나는 첫 번째 패킷의 IP 헤더에서 TCP 창 크기와 TTL (Time To Live) TCP 세션의 패킷.
다음은 널리 사용되는 운영 체제의 값입니다.
운영 체제 | 살기위한 시간 | TCP 창 크기 |
Linux (커널 2.4 및 2.6) | 64 개 | 5840 |
Google 리눅스 | 64 개 | 5720 |
FreeBSD | 64 개 | 65535 |
윈도우 XP | 128 자 | 65535 |
Windows Vista 및 7 (Server 2008) | 128 자 | 8192 |
iOS 12.4 (Cisco 라우터) | 255 자 | 4128 |
운영 체제가 다른 값을 갖는 주된 이유는 TCP / IP에 대한 RFC가 기본값을 규정하지 않기 때문입니다. 기억해야 할 다른 중요한 점은 장치가 나열된 운영 체제 중 하나를 실행하는 경우에도 TTL 값이 항상 테이블의 최대 값과 일치하지는 않는다는 것입니다. 네트워크를 통해 전송 장치의 운영 체제 해당 OS의 TTL을 기본 TTL로 설정하지만 패킷이 라우터를 통과 할 때 TTL이 1 낮아집니다. 따라서 TTL 117이 표시되면 TTL 128로 전송 된 패킷으로 예상 할 수 있습니다. 캡처되기 전에 11 개의 라우터를 통과했습니다..
tshark.exe를 사용하면 값을 볼 수있는 가장 쉬운 방법입니다. 패킷 캡처가 완료되면 Wireshark를 설치했는지 확인한 다음 다음으로 이동하십시오.
C : \ Program Files \
이제 Shift 버튼을 누른 상태에서 wireshark 폴더를 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴에서 명령 창 열기를 선택하십시오.
지금 입력 :
tshark -r "C : \ Users \ Taylor Gibb \ Desktop \ blah.pcap" "tcp.flags.syn eq 1"-T 필드 -e ip.src -e ip.ttl -e tcp.window_size
"C : \ Users \ Taylor Gibb \ Desktop \ blah.pcap"을 패킷 캡처의 절대 경로로 바꾸십시오. 일단 Enter 키를 누르면 캡처 된 모든 SYN 패킷이 테이블 형식을보다 쉽게 읽을 수 있습니다.
이제 이것은 임의의 패킷 캡처입니다. How-To Geek 웹 사이트에 연결하는 저를 만들었습니다. Windows가하고있는 다른 모든 잡담 중에서, 나는 확실히 두 가지를 말할 수 있습니다.
- 내 로컬 네트워크는 192.168.0.0/24입니다.
- Windows 7 상자에 있습니다.
당신이 테이블의 첫 번째 라인을 보면 나는 거짓말을하지 않을 것입니다. 나의 IP 주소는 192.168.0.84입니다. TTL은 128이고 TCP 윈도우 크기는 8192이며 Windows 7의 값과 일치합니다..
다음으로 보게되는 것은 TTL 44와 TCP Window Size 5720이있는 74.125.233.24 주소입니다. 테이블을 보면 TTL이 44 인 OS는 없지만 Linux는 Google 서버 TCP Window Size 5720을 실행하십시오. IP 주소를 빠르게 웹 검색 한 후에 실제로 Google 서버임을 알 수 있습니다.
tshark.exe를 사용하려면 어떻게해야합니까? 의견을 말하십시오..