Study 52

Windows 이벤트 로그 파일 경로

Windows 부팅 시간을 확인하려면, FTK Imager를 사용하여 특정 이벤트 로그 파일을 수집해야 합니다. 주요 이벤트 로그 파일과 경로는 다음과 같습니다.🔍 1. 시스템 부팅 관련 주요 이벤트 로그 파일Windows의 부팅 시간은 "System" 이벤트 로그에서 확인할 수 있습니다. 다음 파일을 수집해야 합니다.📁 Windows 이벤트 로그 파일 경로📌 시스템 이벤트 로그 파일C:\Windows\System32\winevt\Logs\System.evtx✅ 이벤트 ID:6005 → "Event Log Service Started" (Windows 부팅 완료)6006 → "Event Log Service Stopped" (Windows 종료)6008 → "Unexpected Shutdown" (..

Study/Forensics 2025.02.22

RWX메모리를 만드는 mprotect(), mmap()

📌 RWX 메모리 생성이란?RWX 메모리 생성이란, 메모리에서 읽기(Read), 쓰기(Write), 실행(Execute) 모두 가능한 영역을 만드는 것을 의미해.➡️ 프로그램이 실행 중일 때, 코드(명령어)와 데이터를 저장하는 공간이 필요한데,RWX 메모리를 사용하면 새로운 코드를 작성한 후 즉시 실행할 수 있어.🔹 RWX 메모리 생성의 일상 예시✅ 1️⃣ 프로그램이 스스로 새로운 기능을 추가하는 경우📌 게임 업데이트 시스템🎮 예시: 오버워치 같은 게임이 실행 중에 새로운 패치를 다운로드한 후, 즉시 적용(실행)💻 컴퓨터 동작: 새로운 패치 파일을 메모리에 쓰기(Write) → 그리고 즉시 실행(Execute)✅ 해결 방법: 게임 업데이트는 RWX 메모리를 생성해서 새 기능을 실행할 수도 있음...

Study/System 2025.02.22

2의 보수 (Two’s Complement) 역사와 유래

2의 보수 (Two’s Complement)란?2의 보수는 컴퓨터에서 음수를 표현하는 표준적인 방법입니다. 컴퓨터는 0과 1로만 데이터를 저장할 수 있기 때문에, 음수를 다루기 위해 특별한 방식이 필요합니다. 2의 보수는 이러한 음수 표현 방식 중 가장 널리 쓰이는 방법입니다.2의 보수 계산 방법음수를 2의 보수로 표현하는 과정은 다음과 같습니다:양수의 이진수를 먼저 구함각 비트를 반전 (1의 보수, 즉 0 → 1, 1 → 0)1을 더함예를 들어, -5를 8비트 2의 보수로 표현하는 방법:5를 이진수로 변환 (8비트 기준)0000 0101 (5의 이진수)비트 반전 (1의 보수)1111 10101을 더함 (2의 보수)1111 1011 (-5의 2의 보수 표현)왜 2의 보수를 사용할까?덧셈과 뺄셈을 동일한 ..

Study/Mathematics 2025.02.21

dex2jar랑 jd-gui 디컴파일

https://devkwon97.tistory.com/9 dex2jar과 jd-gui를 이용한 디컴파일툴 다운로드 1. Java : jar파일 실행 하기 위해 1.8이상 버전다운 https://java.com/ko.download 2. Dex2jar : dex파일을 jar 파일로 변환 할때 사용하는 도구 https://sourceforge.net/projects/dex2jar/ 3. jd-GUI : 변환된 .jar 파devkwon97.tistory.comhttps://liveyourit.tistory.com/150 jar 로 " data-og-host="liveyourit.tistory.com" data-og-source-url="https://liveyourit.tistory.com/150" data-..

Study/Mobile 2025.02.20

Smali vs Dalvik: 차이점

📌 Smali vs Dalvik: 차이점 정리🔹 Dalvik: 안드로이드에서 실행되는 바이트코드 (기계어에 가까움)🔹 Smali: Dalvik 바이트코드를 사람이 읽고 수정할 수 있도록 변환한 중간 언어즉, Dalvik 바이트코드는 기계가 실행하는 코드이고, Smali는 사람이 이해하고 수정할 수 있도록 표현한 코드야.1️⃣ Dalvik 바이트코드란?Dalvik 바이트코드는 Java 바이트코드를 Dalvik 가상 머신(DVM)이 이해할 수 있도록 변환한 것이야.🔹 특징.dex 파일로 저장됨 (Android 앱의 실행 코드)Dalvik 가상 머신(DVM) 또는 ART(Android Runtime)에서 실행됨레지스터 기반(Register-based) 구조 → Java의 스택 기반(Stack-based..

Study/Mobile 2025.02.20

APK 개발 파일 구조 & Java 코드 변환 과정

📌 APK 개발 파일 구조 & Java 코드 변환 과정 (일상 비유 포함)APK는 Android 앱의 설치 파일이고, 여러 파일과 폴더들로 구성돼 있어.Java 코드가 어떻게 변환되어 APK로 패키징되는지도 같이 설명해볼게!1️⃣ APK 파일 구조 (📂 마트 & 제품 비유)📂 APK 파일은 마트의 창고 같은 개념이야.여기엔 앱이 실행되기 위한 코드, 이미지, 설정 파일 등이 다 들어있어.📂 파일명 🔍 역할 (설명) 🛒 일상적인 비유AndroidManifest.xml앱의 기본 정보 (권한, 액티비티, 서비스 등)📜 마트의 운영 규칙 (영업시간, 직원 역할 등)classes.dexJava 코드 → Dalvik 바이트코드 (실행 가능한 코드)🔧 조립된 완성 제품 (판매 가능한 상태)res/이미지..

Study/Mobile 2025.02.20

onCreate() 매서드

onCreate() 메서드는 Android 앱에서 액티비티(Activity)가 처음 생성될 때 실행되는 메서드야.📌 일상적인 비유👉 "카페에서 새 가게를 처음 오픈하는 과정"카페 창업새로운 카페를 오픈하기로 결심 (앱 실행됨)가게 인테리어 & 준비 작업테이블, 의자 배치메뉴판 세팅커피 머신 설치직원들에게 기본 업무 교육창고에 재료 보충→ onCreate()에서 UI 요소들을 설정하고, 초기 데이터를 준비하는 과정과 같음.가게 문을 엶모든 준비가 끝나고 손님을 받을 수 있는 상태 (액티비티 실행됨)onCreate()는 앱의 "시작 준비"를 담당하는 메서드야. 여기서 화면 레이아웃을 설정하고, 필요한 초기 데이터를 불러오고, 버튼 같은 UI 요소들을 연결하는 작업을 해.✨ 코드 예시@Overridepro..

Study/Mobile 2025.02.20