!analyze -v

이 블로그는 Windows Platform 에 대한 내용을 담고 있습니다.

Browse by Tags

Tagged Content List
  • Blog Post: VirtualBox나 VMware 위의 VM 빠르게 디버깅하기

    VirtualKD를 사용하여 IDA와 WinDbg를 이용한 Virtual Machine(VMware 나 VirtualBox에 설치된) 디버깅 빠르게 하기 http://hexblog.com/2010/04/kernel_debugging_with_ida_pro_1.html VirtualKD를 다운 받을 수 있는 곳 http://virtualkd.sysprogs.org/   위의 글에서는 VirtualKD라는 별도의 팩키지를 사용하여 Virtual machine 에 대한 디버깅을 빠르게 할 수 있는 방법을 설명 합니다. 45배까지...
  • Blog Post: Windbg 바탕화면 색 설정

    하루종일 Dump를 분석하면 눈이 무척 아파서 고민하고 있었는데 눈이 아픈 하얀색 바탕화면이 아닌 다른 색을 설정하는 방법을 정리해 보았습니다. View – Options 에서 Change를 클릭하여 Define Custom Colors를 클릭 합니다. 다음과 같이 Hue, Sat, Lum, 79,106,169 Red, Green, Blue 148,213,146 를 설정하여 Add to Custom Colors 로 설정 합니다. Background 와 Normal level command window text background를 위에서...
  • Blog Post: [Dumpanalysis]LPC, Thread, Process, Excutive resource wait chains 들로 인한 행 문제

    Inconsistent dump, stack trace collection, LPC, thread, process, executive resource wait chains, missing threads and waiting thread time: pattern cooperation http://www.dumpanalysis.org/blog/index.php/2010/02/27/inconsistent-dump-stack-trace-collection-lpc-thread-process-executive-resource-wait-chains...
  • Blog Post: [Ntdebugging]Named Pipe 의 서버 Process 찾기

    How to Find the Owner of a Named Pipe http://blogs.msdn.com/ntdebugging/archive/2008/03/18/how-to-find-the-owner-of-a-named-pipe.aspx   위의 포스트에서는 NamedPipe 의 서버 프로세스를 찾는 방법에 대해서 설명하고 있습니다. NamedPipe 의 FileObject 의 FsContext는 CCB 를 가리키고 있고 FsContext2는 NonPaged_CCB를 가리키고 있습니다. ReadFile 의 첫번째 파라미터인...
  • Blog Post: [ntdebugging]커널 스택 오버플로우 (일명 BugCheck 0x7F)

    Kernel Stack Overflows http://blogs.msdn.com/ntdebugging/archive/2008/02/01/kernel-stack-overflows.aspx   위 포스트에서는 커널 스택 오버플로우에 대해서 설명하고 있습니다.  일반적으로 Dump 파일에서 BugCheck 0x7F, 8 이라는 패턴을 띄게 되는데 12kb의 제한을 가지고 있는 커널스택이 모두 사용되어 시스템이 크래시 되는 것 입니다. 어떤 경우에는 Bugcheck 0x1E, 0x7E, 0x8E가 발생하기도 합니다. x86...
  • Blog Post: LPC 문제를 Debuggin 하는 방법

    LPC (Local procedure calls) Part 1 architecture http://blogs.msdn.com/ntdebugging/archive/2007/07/26/lpc-local-procedure-calls-part-1-architecture.aspx LPC part 2 Kernel Debugger Extensions http://blogs.msdn.com/ntdebugging/archive/2007/09/05/lpc-part-2-kernel-debugger-extensions.aspx LPC Part 3: Debugging...
  • Blog Post: Hyper-V 위에서 실행중인 VM을 재 부팅 없이 Dump 파일로 만들기

    Hyper-V How-To: Convert VM Memory Contents to a Dump File http://blogs.technet.com/tonyso/archive/2010/02/01/hyper-v-how-to-convert-vm-memory-contents-to-a-dump-file.aspx VM2DMP - Hyper-V (tm) VM State to Memory Dump Converter http://blogs.technet.com/virtualworld/archive/2010/02/02/vm2dmp-hyper-v-tm...
  • Blog Post: [Analyze-V]x64 덤프 파일에서 파라미터 찾기.

    Reconstructing parameters from x64 crash dumps http://analyze-v.com/?p=482   위의 포스트에서는 x64 dump 파일에서 파라미터를 찾는 방법에 대해서 설명하고 있습니다. x64에서는 첫 4개의 파라미터를 레지스터를 통해서 전달하기 때문에 Call stack 을 분석할때 그 값을 직접 계산해야 할 때가 많이 있습니다. 이 포스트에서는 크게 3가지 경우를 설명하고 있습니다. 쉬운 경우 – rcx 가 어떤 레지스터에 값을 넣은 것이 보이는 경우 중간 경우 – rcx 가...
  • Blog Post: Windows 7에서의 커널 변경

    아래 포스트들은 Windows 7 에서 커널이 변경된 것에 대한 글들 입니다.   Windows 7 에서 kernel 이 변경되었습니다. 아래 블로그에 따르면 api-ms-win-core….dll 과 같은 파일들이 많이 추가되었다고 합니다. Dependency walker를 사용해서 Advapi32.dll을 열어 보면 API-MS-Win-Core… 과 같은 dll 들을 많이 Import 하고 있는 것을 보실 수 있습니다. 그리고 이 dll 들이 advapi32에서 export 하고 있는 것과 동일한 함수들을 export 하고...
  • Blog Post: [Dumpanalysis]lmu 와 lmk command

    보통 어떤 module 이 load 되어 있는지 확인할 때 lm 명령을 많이 사용하는데 이 경우 kernel 와 user module 이 섞여서 보이기 때문에 불편한데 user 또는 kernel 만 보고자 할때는 lmu 또는 lmk 명령을 사용하면 된다고 하는군요. http://www.dumpanalysis.org/blog/index.php/2010/01/05/windbg-shortcuts-lmu-and-lmk/
  • Blog Post: WinDbg Extension 만들기

    아래 포스트에서는 WinDBG Extension을 어떻게 만드는지 설명하고 있습니다. 우리가 WinDbg 에서 ! 로 시작하는 명령을 사용하는데 이런 것들이 특정 Extension dll 들이 export 하고 있는 함수들을 사용하는 것 입니다. 여러분이 만든 Driver 에 대한 Extension을 만들 수도 있고 Windows 를 분석하는 자신만의 Extension을 만들 수도 있습니다. Tools of the Trade: Part IV - Developing WinDbg Extension DLLs http://blogs.msdn...
  • Blog Post: VM 안에서 실행되고 있는지 파악하는 방법

    Windows 가 VM에서 실행되고 있는 것인지 물리 장비 에서 실행되고 있는 것인지 확인해야 할 때가 있습니다. 아래 포스트의 내용과 같이 WMIC 명령으로 Bios 정보를 확인하면 쉽게 구분이 가능합니다.   Detecting The Virtualization Layer From Within A Guest / Child Instance http://blogs.technet.com/enterprise_admin/archive/2009/10/20/detecting-the-virtualization-layer-from-within...
  • Blog Post: Dmp 파일을 Windbg로 열리게 하기

    Dump 분석을 하다 보면 WinDbg 를 실행 시킨 후 Dump 파일을 열어서 작업을 진행해야 합니다. 아래 포스트를 보면 DMP 파일이 WinDbg에 연결되도록 하여 DMP 파일을 더블 클릭하면 WinDbg에서 자동으로 실행 됩니다. http://analyze-v.com/?p=477
  • Blog Post: x64 Stack Frame layout

    아래 포스트에 따르면 rsp 가 return address를 가리키고 있을 때 x64의 rsp+8 에는 rcx를 저장하기 위한 공간이 있다고 합니다. rsp+10 에는 RDX를 위한 공간이 있고요 물론 항상 그 공간이 사용되는 것 같지는 않은데 다음 번 x64 Dump 분석을 할 때 확인해 봐야겠습니다.   x64 Stack Frame layout http://analyze-v.com/?p=468
  • Blog Post: x64 Calling Convention

    아래 포스트에서는 x64의 calling convention에 대해서 설명하고 있습니다. 파라미터가 rcx, rdx, r8, r9 순서로 들어가게 되고 5번째 부터는 스택에 들어가게 됩니다. 하지만 이후 다른 함수들을 호출하면서 해당 레지스터 값들이 변경되기 때문에 x64는 정말 분석하기 힘듭니다. x64 Calling Convention http://analyze-v.com/?p=458
  • Blog Post: 많은 Thread 가 TCPip!tcpcleanup에서 대기하고 있는 패턴

    시스템이 Hang 된 상태에서 원인을 찾는 내용으로 먼저 locks 명령으로 resource를 소유하고 있는 Thread를 파악한 후 tcpip 의 disconnect 와 연관되어 있는 것을 확인한 후 tcpip와 관련된 IRP들이 대부분 tcpipcleanup에서 멈추어 있는 것에 대한 분석 입니다. Wait chain, blocked thread, waiting thread time, IRP distribution anomaly and stack trace collection: pattern cooperation http://www...
  • Blog Post: x64 Trap Frames에 대한 이야기

    WinDbg를 사용해서 x64장비의 덤프를 분석 하다 보면 parameter를 믿을 수가 없는 경우가 많이 있습니다. 아래 포스트에서는 trap frame 의 rbx, rbp, rdi, rsi 그리고 r12-r15를 믿지 말라고 합니다. 자세한 내용은 osronline을 참고 하셔야 합니다.   x64 Trap Frames http://analyze-v.com/?p=451
  • Blog Post: Internet 에 연결되어 있지 않은 경우 liveKD를 이용한 덤프 수집 방법

    서버를 Down 하지 않고 Dump를 만드는 경우 Sysinternals 의 liveKD를 많이 사용하게 됩니다. 하지만 Dump를 수집해야 하는 서버가 Internet 에 연결되어 있지 않은 경우 Symbol 서버에 접근할 수 없어 livekd가 실행되지 않습니다. 아래 포스트에서는 Dump를 수집할 서버에서 커널과 관련된 파일을 Internet 연결이 가능한 다른 장비로 복사한 후 Windbg 안에 있는 툴인 SymChk.exe를 사용해 Symbol 서버로부터 심볼을 받은 후 덤프를 생성할 수 있습니다. http://blogs.technet...
  • Blog Post: [UnderTheHood]Microsoft System Journal 중 좋은 글 모음

    안녕하세요 이태화 입니다.   저도 다 읽어 보지는 않았지만 WSJ 에 있는 좋은 글 모음 입니다.   Matt Pietrek shows how to call NtQueryInformation APIs in order to gain system-level information from WindowsNT. http://www.microsoft.com/msj/0197/hood/hood0197.aspx   Sure, you may use _try and _except in your C++ code, but have...
  • Blog Post: [UnderTheHood]분석에 필요한 어셈블리 언어

    안녕하세요 이태화 입니다. Dump 분석을 하��� 위해서는 어셈블리 언어를 알고 있어야 합니다. 하지만 어셈블리 언어로 코딩을 할 수 있을 정도의 레벨이 아니라 어셈블리 코드를 보고 흐름을 따라갈 수 있을 정도만 알고 있으면 됩니다. 굉장히 방대한 어셈블리 언어 중 어디까지 알아야지 Dump 분석을 위한 레벨에 올랐다고 할 수 있을지 많은 분들이 궁금해 하셨으리라 생각 합니다. Microsoft 의 아주 오래된 잡지인 Microsoft Systems Journal 에는 Matt Pietrek 가 작성한 Under The Hood 라는...
  • Blog Post: [Mark’s Blog]Pushing the Limits of Windows: Handles

    번역을 할 시간이 부족해서 원문의 링크를 걸어 놓았습니다. http://blogs.technet.com/markrussinovich/archive/2009/09/29/3283844.aspx Handle 은 Object 를 가리키는 것이라고 하고 있으며  Mark가 만든 툴인 testlimit 을 사용해서 핸들을 최대 몇 개나 만들 수 있는지 확인해 보고 있습니다. 64bit 시스템에서는 16,711,657 개의 핸들이 생성 되었고 32Bit 시스템에서는 16,744,434 개의 핸들이 생성 되었습니다. Windows Excutive...
  • Blog Post: [Ntdebugging]실력이 시험되는 장, 하드웨어 조사하기

    "이 문서는 http://blogs.msdn.com/ntdebugging blog 의 번역이며 원래의 자료가 통보 없이 변경될 수 있습니다. 이 자료는 법률적 보증이 없으며 의견을 주시기 위해 원래의 blog 를 방문하실 수 있습니다. (http://blogs.msdn.com/ntdebugging/archive/2007/06/22/where-the-rubber-meets-the-road-or-in-this-case-the-hardware-meets-the-probe.aspx ) 실력이 시험되는 장, 하드웨어 조사하기 안녕하세요...
  • Blog Post: [Channel9]David Grant and Ryan Kivett: !Analyze - Automatic Root Cause Analysis

    Windbg를 사용하면서 !analyze –v 명령을 사용해 보지 않으신 분은 없으리라 생각 합니다. 자동으로 문제점을 진단하는 !analyze 를 개발하는 Engineer 두 명의 인터뷰 입니다. David Grant and Ryan Kivett: !Analyze - Automatic Root Cause Analysis !Analyze is an automatic root cause analysis tool for software failures. For years, it has provided insight to engineers...
  • Blog Post: [CDA]크래쉬 덤프 분석 케이스 스터디 (1)

    " 이 문서는 http://www.dumpanalysis.org/blog/ blog 의 번역이며 원래의 자료가 통보 없이 변경될 수 있습니다 . 이 자료는 법률적 보증이 없으며 의견을 주시기 위해 원래의 blog 를 방문하실 수 있습니다 . ( http://www.dumpanalysis.org/blog/index.php/2007/02/21/crash-dump-analysis-case-study-1/ )   크래쉬 덤프 분석 케이스 스터디 (1) 덤프를 WinDbg로 열어 보았을때 아래와 같이 빨간색으로 되어 있는 코드를...
  • Blog Post: [DebuggingToolbox]Portable Executable 헤더 얻기

    "이 문서는 http://blogs.msdn.com/debuggingtoolbox/default.aspx blog 의 번역이며 원래의 자료가 통보 없이 변경될 수 있습니다. 이 자료는 법률적 보증이 없으며 의견을 주시기 위해 원래의 blog 를 방문하실 수 있습니다. ( http://blogs.msdn.com/debuggingtoolbox/archive/2007/05/03/windbg-script-get-portable-executable-headers.aspx )   [Windbg Script] Portable Executable...
Page 1 of 2 (35 items) 12