일부 임베디드 코드를 실행하는 장치가 있는데(정확히 무엇이 실행되는지 알고 있습니다) nmap
이를 인식하지 못합니다.
PORT STATE SERVICE VERSION
8266/tcp open unknown
정확한 세부정보를 알려드리고 싶지만 에서 제공하는 지문이 없습니다 nmap
.
지문을 강제로 표시하는 방법이 있나요? 아니면 서비스를 인식할 수 있으려면 특정한 조건이 있어야 합니까? (지문이 없는 경우 = 어떠한 경우에도 서비스가 인식되지 않습니다)
답변1
Nmap에 새 지문 제출Nmap은 서비스 프로브 중 하나에 대한 응답을 받아야 합니다. 프로브에 대한 응답이 수신되지 않으면 지문이 인쇄되지 않습니다. 표시된 출력 배너에서 nmap -sV
배너에 "VERSION" 제목이 있으므로 이러한 서비스 프로브를 보내기 위해 실행 중입니다. 따라서 당신이 해야 할 일은 Nmap이 서비스로부터 응답을 이끌어내는 프로브를 보내는 것입니다.
이를 시도하는 한 가지 방법 --version-all
은 의 별칭인 옵션을 사용하는 것입니다 --version-intensity=9
. 이렇게 하면 정의된 모든 서비스 프로브가 응답을 유발할 가능성이 거의 없더라도 식별되지 않은 서비스에 대해 시도됩니다. 이것이 작동하지 않으면 서비스 프로브를 직접 정의해야 할 수도 있습니다.
서비스 프로브는 파일에 정의되어 nmap-service-probes
있으며 형식은 Probe TCP nameOfProbe q|probe bytes here|
. 프로토콜을 알고 있다면 응답을 이끌어내는 프로브를 생각해 낼 수 있어야 합니다. 서비스 프로브에 대한 설계 목표는 다음과 같습니다.
- 충돌이나 종료 등 조사 중인 서비스에 부정적인 영향을 미치지 마십시오.
- 서비스를 실행하는 소프트웨어에 대한 일부 정보를 제공하는 응답(예: "버전" API 요청 또는 서버 배너를 유도하는 핸드셰이크 메시지)을 유도합니다.
- 로그인 시도, 취약점 악용 등 시스템 관리자에게 우려를 불러일으킬 수 있는 상태 변경을 피하세요.
새로운 서비스 프로브가 Nmap이 서비스 지문을 인쇄하도록 작동하는 경우 다음과 같이 제출하세요.Github의 문제아니면 다음 주소로 보내세요.[이메일 보호됨]메일링 리스트.