본문 바로가기

[+] Information

ECU 펌웨어의 표준 구조와 급발진 해킹, 포렌식 전문가로서의 대응방법 최근에 SBS에서 방영되고 있는 '유령' 이라는 드라마에서 자동차가 해킹을 당하면 어떤 위험이 생기는지에 대해서 직설적이고 흥미롭게 그려낸 적이 있었다. 실제로 충분히 가능한 일이다. 자동차는 요즘 그냥 자동차가 아닌 하나의 컴퓨터가 탑재 된 첨단기기라고 불릴 만큼 그 기능의 수준이 정말 높으며 그 기능들은 모두 PC의 CPU가 컴퓨터를 제어하는 것처럼 ECU라는 프로세서에 의해 관리 된다. 사실 자동차 해킹은 하드웨어 해킹에 일부분으로 하드웨어 해킹은 해커들에 의해 이전부터 꾸준히 연구되어 왔고 근래에 들어 연구되어왔던 연구결과들이 각종 컨퍼런스에서 발표되고 문서로 배포 되고 있는 상황이다. 하지만 자동차 해킹만큼은 그 결과를 보기 힘든데 그 이유는 아직 관심부족인 이유도 있지만 ECU라는 프로세서에 .. 더보기
Windows OS의 구조 및 원리 - 쓰레드 이전 글에서 프로세스에 대해 언급하고 간략하게나마 어떻게 구성되어 있는지 알아보았다. 이번에는 쓰레드라는 것에 대해서 알아 볼텐데 일단 쓰레드가 무엇인지 한번 알아보자. 쓰레드란, 실제 CPU에 의해서 명령어가 실행되는 주체를 말한다. 프로세스와 쓰레드의 관계는 지주와 소작농이라고 보면 된다. 프로세스는 자신 밑에 쓰레드를 두어 일을 시키고 쓰레드는 프로세스의 관리를 받으며 일을 한다. 프로세스는 EPROCESS 구조체를 이용해 메모리에서 구성된다고 하였는데 쓰레드는 ETHREAD 구조체를 이용해 그 구조가 형성 된다. 프로세스는 무조건 쓰레드 1개 이상을 가지고 있다. ETHREAD의 주요 멤버들은 다음과 같다. - struct _DISPATCHER_HEADER Header : 쓰레드의 종료와 관련된 .. 더보기
Windows OS의 구조 및 원리 - 프로세스 Windows 에서는 실행중인 프로그램을 프로세스라고 부른다. 프로세스는 두가지의 의미 또는 단위로 사용 된다. - 자원 소유의 단위(의미) : 프로세스는 Memory에 독자적인 영역을 가지고 있으며 실행 이미지 로더와 I/O 장치도 독자적으로 할당 받아야 한다. - Dispatching 단위(의미) : 프로세스는 CPU의 자원을 일정기간 동안 할당 받아 명령어를 실행해야 하며 OS는 병렬 명령처리를 위해 CPU의 사용시간을 각 프로세스들에게 골고루 나누어 주어야 한다. Windows 에서 프로세스는 여러가지 구조체들로 관리되고 이루어진다. 그 중 중요한 구조체와 멤버들에 대해서 알아보도록 하겠다. Windows Kernel에서는 EPROCESS 구조체를 사용 해 kernel Memory의 프로세스를 구.. 더보기
Windows OS의 구조 및 원리 - 컴퓨터의 역사와 구조 요즘은 OS에 대해서 심층적으로 공부를 하고 있다. 아무래도 무엇인가를 분석하려면(특히 루트킷과 같은 커널 단에서 동작하는 프로그램) OS에 대한 깊은 지식이 필요하다. 이전까지는 얼핏 들어가며 분석을 했지만 이제부터는 조금 더 효율적이고 정확하게 분석하기 위해 방학을 이용해 OS에 대한 지식을 쌓고자 앞으로 꾸준히 이렇게 글을 작성하고자 한다. 처음의 시작은 Windows이며 그 후는 Linux, Mac OS X순으로 진행할 생각이다. 해당 글들은 인터넷에서 검색하여 얻은 여러 문서들을 토대로 작성하는 것이다. 그렇기에 그 내용이 조금 빈약할수도 있고 분량이 작을 수도 있다. 추후에 전문서적을 참고하여 내용을 보충할게 있다면 더 보충할 생각이다. 자, Windows OS를 공부하기 전 Windows O.. 더보기
ARE(Android Reverse Engineering) 환경 소개 제목 그대로 ARE 환경을 소개 하려는 글이다. 현재 Android 악성 App을 분석할 수 있게 도와주는 여러 도구들은 꽤 많이 배포되고 업데이트 되고 있다. 하지만 이 대부분의 도구들을 하나의 환경에서 설치하고 실행하기란 여간 귀찮고 까다로운일이 아닐 수 없다. 이러한 작업들을 Honeynet에서 대신해주었다. 바로 지금부터 소개할 ARE 프로젝트이다. ARE 프로젝트는 여러가지의 Android 악성 App 분석 도구들을 하나의 OS, 즉 ubuntu에 모아 설치하여 분석가에게 편의를 제공하는 프로젝트이다.이러한 환경은 오라클에서 개발하고 배포하는 무료 가상 소프트웨어 Virtual Box 이미지로 배포되고 있다. 프로젝트 및 다운로드 주소 : http://redmine.honeynet.org/pro.. 더보기