바이너리가 컴파일된 컴퓨터 이름을 알아보세요.

바이너리가 컴파일된 컴퓨터 이름을 알아보세요.

최근에 우리는 직장에서 알 수 없는 오래된 컴퓨터에서 유래된 매우 오래된 바이너리 파일을 우연히 발견했습니다. 그러나 이 바이너리를 실행하려면 일부 로컬 리소스를 확보하고 바이너리에 대한 로컬 추가 문서를 확보해야 합니다. 사무실 대중에 대해 이야기해 보세요... 이제 우리는 이에 대한 모든 종류의 정보를 추출하기 위해 "dumpelf" 바이너리를 사용했습니다. 이 정보와 프로그래밍 방식을 기반으로 바이너리가 운영 체제용 크로스 vxworks 5.3.1컴파일로 운영 체제용으로 컴파일된다고 가정합니다(여기서는 실제 레거시에 대해 이야기하고 있습니다!).Solaris 2.6gcc version 2.95

나는 이것이 불가능하다고 굳게 믿고 있지만 내가 틀렸기를 바란다고 말했습니다. 이름을 검색할 수 없는 경우 다른 속성(예: IP 주소, NIC의 MAC 주소, 사용자 이름, 컴퓨터 모델 등)을 사용하여 검색 범위를 좁힐 수 있습니다.

앞으로의 노력에 감사드립니다

편집: strings명령이 제안되고 실행되었지만 표시 출력이 제공되지 않습니다.

답변1

strings프로그램을 실행해야 합니다 .

strings /path/to/binary

이는 기본적으로 인쇄 가능한 4개 이상의 연속 문자로 구성된 문자열을 터미널에 인쇄합니다. 쓰레기인 경우가 많지만만약에호스트 이름은 실제로 바이너리 어딘가에 있습니다.

컴파일 호스트의 MAC 주소나 호스트 이름과 같은 내용이 포함될 가능성이 없다는 점에 동의합니다. 그러나 바이너리가 제거되지 않은 경우(즉, 디버깅 기호가 포함된 경우) 여전히 컴파일 소스의 경로 이름이 포함될 수 있습니다. 이를 통해 원래 어떤 환경에서 구축되었는지에 대한 단서를 얻을 수 있습니다.

관련 정보