동글동글 라이프
2008년말 쯤에 한글 문자열을 자판에 입력되는 영문으로 바꾸는 방법 이라는 글을 쓴적이 있습니다.당시에는 별 생각없이 기술연구 목적으로 테스트 용으로 만들었는데...가끔 이 모듈을 이용해서 응용작품을 만들어 봐야 겠다는 생각을 하곤 했었죠.최근에는 인문학이나, 감성, Design for humans 등등 사람 중심의 문화가 많이 생기고 정착되고 있는 시기입니다.이렇듯 소프트웨어를 통해 사람의 마음을 움직이는 프로그램이 필요하다고 느꼈고, 향후에는 사람에게 메세지를 전달하는 정성을 넣어 감동으로 연결시키는인간적인 프로그램이 앞으로는 크게 이슈가 될 것 같더라구요 ㅋㅋ그런면에서 Notepad Letter은 그런 부분을 충족시켜주는 부분이 많았습니다.4년만에 다시 열린 Korean Perl Workshop..
회사생활에 바쁘다보니 어느새 블로그를 쓴지도 꾀 오래 되었네요^^; 간만에 쓰는글인데 좋은 정보 알려드려야죠!! ㅋ Korean Perl Workshop 2012 KPW2012 가 10월 20일(토요일)에 서울에서 진행된다는 사실! Perl 을 즐겨쓰고 좋아하는 사람들과 서로의 지식을 공유하는 자리로 재밌게 했던 프로젝트와 알찬 정보 , 그리고 최신 기술들을 워크샵에서 들을 수 있습니다! 으아~ 이런 엄청난 컨퍼런스를 꼭 가셔야죠! 어서 이날 시간 비우시고 고고싱 합시다!! Korean Perl Workshop 2012on Sat. Oct. 20th, 2012 크고 작은 세미나는 중간에 지속적으로 있었지만 이런 큰 행사는 오랜만이라 긴장되고 기대 되네요! 등록은 아래 주소에서 하시면 됩니다. 아참!! 참..
지금까지 Harlan Carvey님의 Offline Registry File Parser 버전 1.1의 코드를 조금씩 코드를 추가시키며 완성해보는 작업을 하였습니다.이 코드는 2006년에 작성 되었으며, NT Registry Hive access library 인 ntreg.h 를 참고하여 만들었다고 합니다. Harlan Carvey님은 다들 아시겠지만, http://windowsir.blogspot.com/ 블로그를 운영하고, Forensic 책으로 유명한 'Windows Forensic Analysis' 를 쓰신 분입니다. 코드도 직접 짜시고 책까지 쓰셨으니 대박이죠!! 국내에는 '인사이드 윈도우즈 포렌식' 으로 2010년에 번역서가 나왔습니다 저는 이때 알았네요 ^^;; ( 번역서는 나오자말자 친한..
UserAssist 는 시스템에서 실행되었던 프로그램의 목록과 실행 횟수 그리고 마지막 실행시간 등의 정보를 가지고 있습니다. UserAssist 정보를 가지는 Registry 키의 전체 경로는 아래와 같습니다.HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist 레지스트리 키로 접근하면 아래와 같이 2개의 서브 키가 있는 것을 확인할 수 있습니다.Count 안의 값들이 실행한 프로그램의 목록과 횟수들을 가지고 있다고 보시면 됩니다 :)( 제가 쓰고 있는 Windows 버전은 Windows7 입니다. )음? 영문자이긴 한데 뭔가 읽을 수 없는 영어단어가 아닌 듯한 목록입니다. 이것은 key의 이름이 ROT13 으로 ..
Value Data Storage는 value-list의 offset을 통해 vk record 의 데이터 구성 형태 입니다.이전 시간에 설명드린 Subkey 를 통해 폴더를 설정했다면 이제 세부적으로 파일들을 채우는 단계라고 생각하시면 됩니다.이 장에서는 VK record 와 타입별로 데이터를 출력해보는 샘플 코드를 작성해 보겠습니다. 이제껏 hive 파일을 통해서 레지스트리 값을 복구 시킬때전체 Key들을 구성하는 부분을 주로 처리 하였습니다.이제는 각 Key 들에 들어있는 데이터들을 접근해서 직접적으로 뽑아보는 작업을 해보겠습니다.(아래 그림에서 오른쪽의 값들을 구성해보는 겁니다 ㅋㅋ) 각각의 레지스트리 키들은 여러개의 Value들을 가질 수 있습니다. 이런 Value list 들은 subkey 에서..
Nk Record 밑의 Subkey list 들은 하위 목록들을 나열해주는 역활을 합니다. Subkey List 까지 뽑았다면 Registry 구조 복구의 전체적인 밑그림이 그려지며 파일 구성의 절반 이상이 끝났다고 할 수 있습니다.결국은 Tree 구조로 되어 있으므로 재귀적으로 함수가 호출이 되는 부분을 주목하여 봐주세요 :) 아!! 월요일입니다!말이 필요없는 월요일.. 그냥 푹~ 쉬고 싶은 월요일이지만 강좌는 멈추지 않습니다!ㅋ 소스를 잘 짜기 외해서는 기존의 공개된 소스를 어려움 없이 볼 줄 알고 코드를 짜는 사람의 내면의 고민을 같이 공유 할 수 있는 스킬을 익혀야 합니다.그러므로 창의적으로 소스를 짜는 능력과, 코드를 세부적으로 분석하는 있는 스킬두개를 다 골고루 키워야 한다는 것이 저의 생각입..
NK Record 들은 레지스트리 구조를 연결하는데 가장 중요한 역활들을 해주는 Record 입니다.이 Record는 각 Key 에 따른 하위 목록들의 연결값들을 가지고 있고 최종으로 수정한 시간도 담겨 있습니다.이 장에서는 NK Record 의 세부적인 값들을 추출하여 나열하는 샘플을 만들어 보겠습니다. 람쥐..^^;최근 일주일동안 블로그에 열심히 글을 올렸습니다. 오랜만에 강좌를 적어서 그런지 홍보를 안해서 그런지 조회수는 높은데 댓글이 없군요 ㅡ_ㅠ 글을 적는 재미는 쏠쏠합니다~피드백이 좀 들어왔으면 하는데.. 딴지도 환영입니다.( 적당히만 해주시면 ㅡ_ㅠ...) 그러면 시작~~! Key Records 는 각 Cell 에 대한 사이즈나 정보들을 담고 있습니다. 첫번째 4Byte 는 사이즈가 담겨 있..
Hive Bins 은 블록 단위로 이루어져 있으며 각각의 Cell 값을 담고 있습니다. 즉 세부적인 정보를 가진 큰 틀이라고 보시면 됩니다. 이 장에서는 Hive Bin Header 를 살펴보고 root key 값을 찾는 샘플을 만들어 보도록 하겠습니다. Hive Bin들은 일반적으로 4096Byte 단위로 할당이 됩니다. 하지만 Hive Bin의 크기가 꼭 4096Byte 보다 클 수도 있죠 :)이전 글에서 'hbin' 값을 확인했었는데 bin size는 1000h(4096)Byte 인 것을 확인 할 수 있습니다. 아래와 같이 Hive Bin Header 밑에는 Cell 들이 존재합니다. Hive Bin Header 밑에 바로 Cell 들이 쭉~ 연결해서 붙어 있습니다. 하지만 이 Cell 들을 바로 ..
Registry Hive 파일을 통해 원본 레지스트리값들을 알아내기 위해서는 먼저 Hive 파일의 구조를 알아야 합니다.이 장에서는 샘플 Hive 파일을 추출하여 Hex Editor를 통해 값을 확인하고 프로그래밍으로 Hive 파일을 불러와서 값들을 체크하는 샘플을 만들어 보도록 하겠습니다. 레지스트리 Hive 파일을 분석하기 위해서는 먼저 Hive 파일을 추출해야 합니다.정확한 레지스트리 Hive 파일을 얻어오기 위해서는 컴퓨터를 종료 한 뒤, 하드 디스크에 있는 Hive 파일을 추출하여 사용하는게 가장 좋은 방법이지만 하드 디스크를 빼려면 본체도 열어야 하고 나사도 풀어야 하고 ㅡ_ㅠ보통 힘든일이 아닙니다. (쉬우신 분들도 있겠지만요 ^^;) 그래서 간단하게 샘플 파일을 얻는 방법을 설명해 드리겠습니..
안녕하세요 h0ney 입니다!이번 강좌에 설명할 내용은 레지스트리 Hive 파일 포멧 분석기(Registry Hive File Format Analyzer) 입니다.사이버 포렌식에서 Registry Hive 파일 분석은 선택이 아니라 필수일 정도로 중요도가 높습니다.이를 프로그래밍 도구를 만들면서 전체 구조를 파악하며 공부하는 글을 적어보려고 합니다.프로그래밍 분석에 사용될 언어는 perl 이며 Windows Forensic Analysis의 regpl.pl 을 참고하여 설명드리겠습니다. 보안 공부를 할때 기본적으로 배우는 개념 중 PE 구조 라는 것이 있습니다.(PE구조란 윈도우 운영체제에서 지원되는 실행 파일의 형식을 뜻하며 실행을 할 수 있는 구조를 가진 파일입니다. ) 이런 PE구조를 분석 및 공..