일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- DEFCON
- C 프로그래밍
- c언어
- 다운로드
- 코딩
- sql
- 리버싱
- 설치
- C
- 오늘의 영어
- 코드업
- 보안
- 멀웨어
- 악성코드
- 랜섬웨어
- 리버싱 핵심원리
- SQLD
- 정보보안기사
- C language
- Volatility
- Memory Forensics
- 오늘의 보안
- cmd
- 보안동향
- Code Up
- 오늘의 보안동향
- codeup
- ctf
- defcon.mem
- Defcon DFIR CTF 2019
- Today
- Total
목록전체 글 (169)
오브의 빛나는 별
안녕하세요, 오브입니다. 오늘은 디버거를 이용해서 프록램의 내용을 간단히 패치하는 방법에 대해 알아보겠습니다. https://staraube.tistory.com/46 1부 2장 Hello World! 리버싱(1) 안녕하세요, 오브입니다. 오늘은 HelloWorld.exe 실행 파일을 디버깅하여 어셈블리 언어로 변환된 main() 함수를 찾아보겠습니다. Hello World! 리버싱 2.2.1. 디버깅 목표 main() 함수 찾기 2.2.2. 디버깅 시작 staraube.tistory.com https://staraube.tistory.com/47 1부 2장 Hello World! 리버싱(2) 안녕하세요, 오브입니다. 오늘은 디버거 명령어를 간단하게 알아본 다음 베이스캠프를 설치하는 4가지 방법에 대해 ..
안녕하세요, 오브입니다. 오늘은 원하는 코드를 빨리 찾아내는 4가지 방법에 대해 알아보겠습니다. Hello World! 리버싱 2.4.1. 코드 실행 방법 디버거로 HelloWorld.exe를 디버깅[F8]하다 보면, 언젠가 main() 함수의 MessageBox() 함수가 실행되어 “HelloWorld” 메시지 박스 출력 코드의 크기가 작고 기능이 명확한 경우 사용 가능 실습 베이스캠프(40104F)에서부터 명령어를 한 줄씩 실행[F8] 디버거 재실행[Ctrl+F2] 반복해보면 특정 함수를 호출한 이후 메시지 박스가 나타나는 것 파악 가능 ‘401144’ 주소에 있는 CALL 00401000 명령어에서 호출하는 함수 주소 401000으로 가보면[F7] main() 함수 코드 영역임 40100E 주소에 ..
안녕하세요, 오브입니다. 오늘은 디버거 명령어를 간단하게 알아본 다음 베이스캠프를 설치하는 4가지 방법에 대해 살펴보겠습니다. https://staraube.tistory.com/46 1부 2장 Hello World! 리버싱(1) 안녕하세요, 오브입니다. 오늘은 HelloWorld.exe 실행 파일을 디버깅하여 어셈블리 언어로 변환된 main() 함수를 찾아보겠습니다. Hello World! 리버싱 2.2.1. 디버깅 목표 main() 함수 찾기 2.2.2. 디버깅 시작 staraube.tistory.com Hello World! 리버싱 2.3.1. 디버거 명령어 디버거 동작 명령 명령어 단축키 설명 Go to [Ctrl+G] 원하는 주소로 이동(코드/메모리를 확인할 때 사용, 실행되는 것은 아님) Ex..
안녕하세요, 오브입니다. 오늘은 HelloWorld.exe 실행 파일을 디버깅하여 어셈블리 언어로 변환된 main() 함수를 찾아보겠습니다. Hello World! 리버싱 2.2.1. 디버깅 목표 main() 함수 찾기 2.2.2. 디버깅 시작 OllyDbg 관리자 모드로 실행 후 [File]-[Open]-’HelloWorld.exe’ 파일 열기 메인 화면 구성 Code Window: 기본적으로 disassembly code를 하여 각종 comment, abel 을 보여주며, 코드를 분석하여 loop, jump 위치 등의 정보 표시 Register Window: CPU register 값을 실시간으로 표시하며 특정 register들 수정 가능 DumpWindow: 프로세스에서 원하는 memory 주소 위..
안녕하세요, 오브입니다. 오늘은 소프트웨어가 무엇인지 알아보고 적용 사례를 찾아보겠습니다. 소프트웨어 및 하드웨어 - 소프트웨어: 사전적 의미로 컴퓨터 프로그램 및 그와 관련된 문서들을 통틀어 이르는 말이다. 컴퓨터를 관리하는 시스템 프로그램과, 문제 해결에 이용되는 다양한 형태의 응용 프로그램으로 나눈다. - 윈도우, 리눅스, 유닉스와 같은 운영체제와 어셈블러, 컴파일러, 인터프리터와 같은 언어 번역 프로그램이 대표적인 시스템 소프트웨어이다. - 한글, 워드, 엑셀, 파워포인트, 오라클 또는 액세스와 같은 데이터베이스 관리 시스템, 포토샵, 웹 브라우저 및 FTP와 같은 통신 프로그램이 대표적인 응용 소프트웨어이다. - 이와 반대되는 개념으로는 하드웨어가 있다. - 하드웨어: 사전적 의미로 컴퓨터를 구..
[1059] 비트단위로 NOT 하여 출력하기 입력 된 정수를 비트단위로 참/거짓을 바꾼 후 정수로 출력해보자. #include int main(void) { long long int a; scanf("%d", &a); printf("%d", ~a); return 0; } ※ 비트단위(bitwise)연산자 ~ 를 붙이면 됨 ※ ~ : tilde, 틸드 ※ 비트단위(bitwise) 연산자는, ~(bitwise not), &(bitwise and), |(bitwise or), ^(bitwise xor), (bitwise right shift) ex) 1을 32비트 2진수로 표현하면 00000000 00000000 00000000 00000001 이고, ~1은 11111111 11111111 11111111 1..
안녕하세요, 오브입니다. 오늘은 리버스 엔지니어링과 리버스 코드 엔지니어링에 대해 알아보고 리버싱 방법과 코드, 패치와 크랙을 살펴보겠습니다. 리버싱 스토리 1.1. 리버스 엔지니어링(RE, 역공학): 물건이나 기계장치 혹은 시스템 등의 구조, 기능, 동작 등을 분석하여 그 원리를 이해하며 단점을 보완하고 새로운 아이디어를 추가하는 일련의 작업 1.2. 리버스 코드 엔지니어링(RCE): 소프트웨어 분야의 리버스 엔지니어링 RCE, RE, 역공학, 리버싱 등의 용어를 사용 1.2.1 리버싱(분석) 방법 정적 분석: 파일의 겉모습을 관찰하여 분석. 파일의 종류, 크기, 헤더, Import/Export API, 내부 문자열, 실행 압축 여부, 등록 정보, 디버깅 정보, 디지털 인증서 등의 내용 확인. 디스 어..
안녕하세요, 오브입니다. 영화나 드라마, 책에서도 오래전부터 상상한 미래 기술들이 등장합니다. 이 미래 기술들이 상상 속에만 있는 것이 아니라 현재 우리 세상에 나타나고 있습니다. 한 온라인 커뮤니티에 올라온 '100년전 유럽인들이 상상한 오늘'이라는 제목의 여러 장의 그림을 살펴보겠습니다. 100년 전 유럽인들이 상상한 오늘의 모습 1. 혼자 모든 공사 장비 조정 작업자가 혼자 앉아서 버튼으로 기계를 조작하여 자동으로 건물을 짓고있습니다. 2. 자기 부상 열차 대륙과 대륙을 잇는 기차로 동양인과 서양인이 대화를 하는 모습이 담겨있습니다. 3. 바퀴 달린 신발 바퀴가 달린 신발을 신고 놀고 있는 모습입니다. 뒤에 배터리를 보면 전기동력으로 달리는 스케이트 신발로 보입니다. 4. 미용 자동 기계 기계가 사..