'readelf'에 해당되는 글 1건

  1. 2009.02.23 elf format 분석용 binutils - objdump, readelf, ldd (4)
Linux2009.02.23 17:34
카페에서 우연히 주워들은 프로그램이름인데..
검색해보니 readelf가 조금 더 분석에 강력하다고 한다.

#include <stdio.h>

void main()
{
        unsigned char b = 0xF1;
        unsigned short c = 0xF1;
        unsigned int d = 0xF1;

        printf("%X\n",b);
        printf("%X\n",c);
        printf("%X\n",d);
}


위의 소스를 분석한 내용이다. 내용이 많으므로 눌러서 보기바람.

$ gcc -S test.c
$ more test.s

더보기


$ gcc -Wl,-Map -Wl,test.map test.c
$ more test.map

더보기


$ gcc test.c
$ objdump -x a.out

더보기


$ readelf -a a.out

더보기


$ ldd a.out

더보기


솔찍히 머가 먼지 모르겠다.

덧 : 생각해보니 이것저것 생각나는거 다 붙이다 보니 제목이 안 맞네 ㄱ- 바꿔야 하나?
Posted by 구차니

댓글을 달아 주세요

  1. 헥.. 분석은 뭐하는건가요??? 거 참 길기도 하네요.
    저는 C언어는 코딩하고 컴파일 하는 것 밖에 모르는데...
    하여튼 원리에 대해서 깊게 파고 들어가시는가 봅니다.

    2009.02.23 22:33 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 분석이라고 함은 두가지로 나뉩니다. reverse engineering을 위한분석과, 문제점 해결을 위한 분석으로 말이죠. 리버스엔지니어링은 나쁜 목적과 좋은 목적이 있는데, 나쁜 목적으로는 시리얼키 해킹이라던가 이런 것이 있고, 좋은 목적으로는 이미 만들어진 제품을 업그레이드 해야할 필요가 있을떄 하지만 프로그램 소스가 없을때 행해집니다.
      문제점 해결을 위한 분석은, 원인을 알 수 없는 프로그램 다운을 해결하기 위해서 프로그램의의 특정 부분이 어느 메모리에 존재하고 어떠한 작동으로 어떤 메모리 부분을 침범하는지 등을 체크하고, 죽을때 뱉어 내는 메시지가 어느 부분에서 죽었기 때문에 나타나는지를 알아내기 위해서 보는 거랍니다.

      아직 저도 갈길이 멀어서 이정도로 밖에 추상적으로 설명을 해드릴수는 없어서 죄송하네요 ㅠ.ㅠ
      언넝 열심히 파고 들어야겠습니다.

      2009.02.23 22:41 신고 [ ADDR : EDIT/ DEL ]
    • 헥헥.. 하여간 프로그래밍은 끝이 없네요. ㅎㅎ 뭐.. '디버그'같은 건가요?

      지금도 충분히 엄청난 내공의 소유자이시네요.
      CD마니님 처럼요... ㅎㅎㅎ

      2009.02.24 10:41 신고 [ ADDR : EDIT/ DEL ]
    • 아직 많이 부족해요 ^^;

      2009.02.24 10:54 신고 [ ADDR : EDIT/ DEL ]