2017-05-21 10 views
1

나는 ELF에 대해 배우고있다. 파일 클래스는 ELFCLASS32, ELFCLASS64 또는 ELFCLASSNONE 중 하나 일 수 있습니다.ELFCLASSNONE은 언제 ELF 파일에 사용됩니까?

그러나 ELFCLASSNONE의 사용 예는 찾을 수 없습니다.

무엇입니까? 그리고 언제 ? 실제로 어디서나 사용됩니까?

답변

1

Is it actually used anywhere ?

번호

(단지 잘못된 ELF 파일을 탐지하는 데 사용.) ELF 파일의

Used where?

어느 곳이나 유효성이 확인됩니다. 다음은 Linux 커널 도구의 example입니다. 이 .bashrc는 ELF 파일이 아닌 것으로 결론을 내렸다 전에

even there, ELFCLASSNONE is not used.

당신은 조사 된 ELF 헤더 readelf 어떤 부분을 모른다. 그것은 ei_ident[EI_CLASS]을보고 ELFCLASSNONE과 값을 비교했을 수 있습니다 (가능하지는 않지만).

예를 들어 /bin/date을 복사하고 복사 (EI_IDENT == 4)의 5 번째 바이트에 0 바이트를 써서 손상시킨 다음 readelf -h을 실행하면 "유효하지 않은 ELF 클래스"또는 비슷한 메시지가 표시됩니다.

+0

도움 주셔서 감사합니다. 어디에서 사용 했습니까? 'readelf -h .bashrc'와 같은 유효하지 않은 ELF 파일에서이 파일을 사용하려고하면 'readelf : Error : ELF 파일이 아닙니다'라는 메시지가 나타나고, 'ELFCLASSNONE'이 사용되지 않습니다. – conradkdotcom

+1

@conradkdotcom 답변을 업데이트했습니다. –