외규장각 도서 환수 모금 캠페인

아- 어제의 삽질 (샘플분석)

Posted 2007. 7. 26. 10:38, Filed under: Study/Computer Science

으~~ 죽겠다.

전까지는 이선임님이 할당해준 악성코드 샘플을 한개씩 받아서 분석한 다음에 결과를 메일로 보내는식으로
했는데 본격적으로 샘플을 분석하는 일을 인턴의 업무로 정착시키기 위해서인지, 그리고 어느 정도 트레이닝이
되서인지 다른 직원분들에게도 참조 메일을 보내기로 했었던 그 첫날!
(이선임님이 다른 직원들의 피드백을 통해서 더 많이 배울 수 있을꺼라고 그러셨다.)

대망의 삽질 -0-
dll 파일이었는데 아무리 올리디버거에서 로딩을 하려해도 당췌 로딩이 안되서 읽을 수 조차 없는거다.
그래서 파일이 깨진 줄 알고 열심히 헤더도 뜯어보고 팩정보도 찾아보고 (UPack이었음) 동일한 종류의
다른 팩과도 비교해보고 그랬는데 도무지 모르겟어서 그냥 깨진 파일이라고 실행 안된다고 내보냈는데..

바로 고흥환선임님한테서(내가 속해있는 보수적인 C조ㅋ 의 조장이심;; ) 실행되는 파일이라고
게임핵으로 진단추가 하라고 메일이 왔다 ㄷㄷㄷ

아 쪽팔려.. 더구나 고선임님은 인턴에게 샘플분석 시키지 말고 인턴 숫자를 줄이자는 쪽의 대장-_-;
우리 인턴들과는 별로 말도 안하시고 그래서 평소에도 좀 거리감도 느끼고 그랬는데
바로 저렇게 날아오니까 진짜 난감하고 쪽팔렸다.
내 딴에는 이리저리 알아보고 안되서 그랬는데 바로 그렇게 메일 와서 기분도 좀 나빴고 자존심도 상했다.

젠장- 공부 많이 해서 잘하게 되고 말테다 -_-
근데 이놈의 샘플 분석은 메뉴얼 같은 것도 없고 경험과 감, OS와 파일구조, API에 대한 전반적인 지식으로
맨땅에 헤딩하듯이 배워야 하는 거라..
힘들다.

이번 신입사원 분들도 실수도 많이 하고 그래서 다른 정직원들이 가르쳐주고 그러더만
인턴들은 기간도 짧고 배워봐야 오래 못써먹어서인지 업무에 부담느껴가면서 가르쳐주지 않으려는 분위기.
게다가 이번 주는 우리조가 긴급조라 딱히 물어볼 사람도 없다. 다들 일이 바빠서..
안바빠도 크게 잘 가르쳐주진 않더라만 ㅋ
여튼 어제 실수해서 난감했다.

로딩이 안된 이유
=================
PE파일의 경우에 헤더에 파일의 종류(dll인지 exe 인지)를 나타내는 플래그가 있어서 디버거에서 로드할 때 알아서 해준다. 그렇지만 올리에서 로드할 때 간혹 확장자가 없으면 dll로 인식하여 olly loader 실행되지만 읽을 수 없는 경우가 발생한다.  경험부족 경험부족 ㅠ


  DLL 분석법
=================
dll의 경우 다른 프로세스에 인젝션되어 실행된다.
크게 두가지로 나누어 로딩된 후에 expot하는 함수가 있는 경우와 없는 경우가 있다.

1. expot 함수가 없는 경우
dll 메인에서 수행하는 루틴만 따라가보면 뭐하는지 대충 알 수 있다.
대부분 스레드를 만들어서 수행되는 경우가 많으므로 스레드를 하나하나 확인해볼 것.
olly loader 에서 생성한 스레드가 아니어서인지 따라가 보는게 힘들다.

EIP를 강제로 옮기는 경우에 파라메터나 레지스터 상태가 다르고, 조건이 달라서 악의적 루틴으로
분기하지 못하는 수도 있으므로 유의해야한다.
대부분 iexplorer.exe, winlogon.exe 등 특정 프로세스에 붙어서 자기를 로딩한 프로세스를 확인한 후에
실행되는데 이러한 루틴들을 잘 확인해 볼 것.
나머지는 exe 파일과 동일~

2. export 함수가 있는 경우
dllmain에서 하는 작업들을 잘 살펴보고- 익스포트 함수가 있으므로 메인에서는 별 거 안할 수도 있다- 그 후에 중요한 것이 어떤 export 함수를 제공하는가. 한번 따라가 보는 것.

olly 에서 call exported funcion 인가 하는 기능을 제공해서 export 함수를 호출해 볼 수 있다.
(최근에 발견한 사실 ㅋ)

export 함수의 위치에 브레이크 포인트를 걸고 콜해주면 거기로 EIP가 이동. 뭘 하는지 따라가 볼 수 있다.
단 이 경우에도 파라미터를 정확히 넘겨주지 못하므로 이 점에 유의하여 트래킹-
Response : ,


Recent Posts

Recent Comments

Recent Trackbacks

Total hit (Today , Yesterday )

Admin Write Post