NOTICE


경험을 바탕으로 제가 생각하는 바를 적은 지극히 주관적인 글입니다.

방향을 잡는데 참고만 하시기 바랍니다.



 악성코드 분석으로 진로를 정했다면 이제 본격적으로 공부를 시작해야겠죠??


 그런데 막상 시작하려니 무엇부터 해야할지 모르겠고 막막할겁니다.


악성코드와 관련된 자료나 정보는 차고 넘치는 것 같은데 무슨 말인지 하나도 모르겠고 지금 나한테는 전혀 도움이 안되는 것 같아요. 그렇다고 주변에 물어볼 사람도 없고요. 


그러다가 결국 악성코드 분석과 관련된 서적을 한권 구입했어요.

의지가 충만한 상태에서 책을 펼쳤습니다만 어렵네요...

듣도보도 못한 용어들도 많고 무슨 말을 그렇게 어렵게 적어놨는지...

책이 두꺼워서 냄비 받침으로 쓰기에는 좋을거 같아요.


우선 책은 고이 모셔두고 다시 인터넷을 열심히 서치했죠.

사람들이 크랙미 파일을 분석하는게 도움이 된다고 해요.

인젝션이나 안티 디버깅과 같이 다양한 기법들을 공부하는 것도 괜찮대요.


열심히 공부하다 보니까 하나하나 풀어가는 재미도 있고 뭔가 배우는 것 같아서 뿌듯해요.

그런데 아직까지 악성코드가 뭔지 잘 모르겠어요.

이렇게 공부해서 내가 악성코드를 분석할 수 있을지 확신도 안생겨요.


 제가 처음 공부할 때 겪었던 이야기입니다.


 많은 분들이 악성코드 분석은 진입장벽이 높고 어렵다고 하시는데 이와 비슷한 과정을 겪으신 분들이 아닐까 싶습니다.

 알파벳 ABCD도 모르는 상태에서 영어 문장을 해석하려고 하다보니 당연히 어렵게 느껴지시는 겁니다.


 그러면 어떻게 공부를 해야할까요?? 한가지 예를 들어서 설명해드리겠습니다.(이해하는데 참고만 하세요.)


 커피숍에 들어가서 주문을 한다고 합시다.

 먼저 메뉴를 확인하고 돈을 지불한 뒤에 원하는 음료를 얘기합니다.

 직원이 주문을 받고나면 음료를 만들기 시작할 겁니다.

 이제 기다렸다가 진동벨이 울렸을 때 음료를 받아오기만 하면 됩니다.


 이처럼 작은 커피숍 안에서도 음료를 주문하기 위한 규칙과 절차가 있습니다. 그리고 어떤 행위를 위한 의사소통도 필요합니다.


 우리가 사용하고 있는 운영체제(Windows, Linux 등)도 같습니다. "커피숍(공간) → 운영체제", "손님 → 프로그램", "커피숍 직원 → 커널"이라고 이해하세요. 운영체제에서 만들어 놓은 규칙과 절차에 맞게 작성된 프로그램이 커널이 알아들을 수 있는 언어를 사용해서 요청을 하면 그에 맞는 동작이 이루어집니다.


 동영상을 보기 위해서 플레이어를 많이 사용하죠? 재생 버튼을 눌렀을 때, 플레이어 내부에서 이루어지는 행위가 "동영상을 재생시켜달라고 커널에게 요청"을 하는 것이고 커널은 그에 대한 응답으로 동영상을 플레이시켜주는 것 입니다. 악성코드도 하나의 프로그램이기 때문에 별반 다르지 않습니다.


 이렇게 보면 어디서부터 접근을 해야하는지 알 수 있을 겁니다. "나무를 보기 전에 숲을 보라."라는 말이 있습니다. 프로그램 내부를 들여다 보기 전에 프로그램이 동작하는 원리와 방식에 대해서 먼저 파악시기 바랍니다.


 그래서 뭐부터??라고 했을 때 운영체제와 프로그래밍 언어가 되지 않을까 싶습니다. 사실 운영체제나 프로그래밍을 책으로 공부하면 상당히 지루하고 어렵습니다.


 그래서 리버싱과 병행해서 공부하는 것을 추천드립니다. 대단한게 아니라도 상관없습니다. 직접 코드를 작성해서 프로그램을 만들고 분석해보세요. 그 과정에서 프로그램이 어떤 원리로 동작을 하는지도 찾아보고 같이 공부하는 겁니다.


 기본적인 원리나 동작 방식을 이해하지 않은채 무작정 분석을 하는 것은 실력 향상에 전혀 도움이 되지 않습니다.


 차근차근 열심히 공부하시기 바랍니다.


  1. no picture 2017.10.10 04:52

    비밀댓글입니다

    • no picture BlogIcon itseeyou 2017.10.10 09:52 신고

      안녕하세요~ 질문 잘 봤습니다.
      열정이 많은데 방법을 몰라서 고민하고 계신것 같습니다.
      그만큼 저도 상세히 답변을 드리고 싶은데 글로 제가 원하는 바를 다 전달하기가 어렵네요.
      괜찮으면 토요일날 교육이 끝나고 얘기해도 될까요??

  2. no picture 2017.10.10 12:56

    비밀댓글입니다

  3. no picture BlogIcon 유재랑 2018.01.09 12:03 신고

    차근차근 열심히 공부하라는 말씀
    깊게 새기고 공부하겠습니다.