배경지식

🌇│System_Study/📗│Dreamhack_Reversing

Exercise: Helloworld

분석(Export)! 예제로 HelloWorld.exe를 분석해보는 실습을 해봅시다. 예제엔 1초를 대기 후 Hello, world!를 출력하는 프로그램으로, 오른쪽에서 내려받을 수 있습니다. 여러분이 직접 컴파일하고 분석할 수 있게 코드도 친절히 올려야죠 우리는 이 코드에 대하여 아무것도 모른단 전재하에 진행해야 리버싱이겠죠 자 그럼 한번 밑에 exe 파일을 다운로드 받거나 컴파일 하셔서 확인해봅시다 참고로 전 IDA 쓸거예요 /* File: hello-world.cpp Build opts: - /MT -> Library Static Linking - /DYNAMICBASE:NO -> Disable ASLR - /od -> Disable Optimization */ #include #include ch..

🌇│System_Study/📗│Dreamhack_Reversing

x86 Assembly

x86 Assembly🤖: Essential Part x86 Assembly: Essential Part 해커의 언어: 어셈블리💬 PC에서 복잡한 논리적 인과관계, 여러 개체가 상호작용하며 그 세계에서 통용되는 기계어(Machine Code)언어 핵심! 시스템 해킹을 할 때는 컴퓨터 언어, 운영체제, 네트워 dystopia050119.tistory.com Quiz: x86 Assembly Quiz: x86 Assembly dystopia050119.tistory.com 기존에 정리된 부분이 있었네요.. 시스템을 하기전에 이 커리큘럼을 먼저할걸.. ㅠ 제가 이 블로그를 하는 이유는 여러 이유가 있지만 그 중에 하나가 포폴용이라서 이번만 날먹할께요 헷 참고 자료 x86 Assembly🤖: Essential ..

🌇│System_Study/📗│Dreamhack_Reversing

Background: Static Analysis vs. Dynamic Analysis

리버스 엔지니어링 정적 분석(Static)과 동적 분석(Dynamic) 구분 정적 분석 : 외적인 관찰만을 통해 정보를 취득 동적 분석 : 실행을 통해 동작을 분석하는 것! 대게 정적인 방법과 동적인 방법을 적절히 혼용하면 대상을 효과적으로 분석 가능! 동적인 방법만을 고수하면 큰 구조를 놓칠 수 있고, 반대로 정적만 고수하면 실행을 통해 직관적으로 알 수 있는 부분을 분석하느라 시간을 허비할 가능성이 농후하죠.. 따라서 우리는 정적 분석과 동적 분석 중 한 방법만을 고수하는 것이 아닌 상황에 따라 적절한 방법으로.. 어떤 상황에 어떤 방법을 선택할 것이냐가 실력을 좌우하는 중요한 요소죠 정적 분석(Static Analysis)🔍 정적 분석(Static Analysis) : 프로그램을 실행시키지 않고 분..