[활동 정리]/[2023]동계 모각코 개인

[중단발머리] 3회차 개인 목표 및 결과

DevCat_ 2024. 1. 20. 23:01

1월 20일 3회차 모임


개인 목표 : 정보보안 공부- 입문

정보보안(해킹) 공부로 Dream Hack 사이트 강의 듣기

 

 

 


개인 결과 :

CTF에 대하여.
Capture The Flag의 줄임말로 숨겨진 Flag를 찾아서 제한 시간 내에 고득점을 하면 우승하는 대회이다.

Web, Cryptography, Pwnable, Forensic, Reverse Engineering, Network, Miscellaneous..

PicoCTF로 시작해보는 것도 좋다고 한다.

 

드림핵 강의에서는 비트와 바이트를 공부하였고, 저번 학기 때 배운 MSB와 LSB도 설명이 있었다.

가장 왼쪽 비트를 MSB, 가장 오른쪽 비트를 LSB라고 한다.

 

 메모리에 각 바이트가 정렬되는 방식을 바이트 오더링이라고 하는데, 빅 엔디안과 리틀 엔디안 두 방식이 있다.

0x01234567 에서 0x01이 가장 큰 바이트, 가장 작은 바이트가 0x67이다. 빅 엔디안은 큰 바이트부터 가장 낮은 메모리에 저장되고, 리틀 엔디안은 작은 바이트부터 가장 낮은 메모리에 저장된다. 리틀 엔디안 - x86 CPU

 

 이는 해킹에서 꽤 중요하다.

 리버스 엔지니어링 분야에서 메모리에 저장된 값을 역연산하여 어떤 값이 있는 지 확인하는 쪽에서 메모리에 어떤 엔디안으로 저장되어 있는지 아는 것은 중요하다.

 시스템 해킹에서는 메모리에 데이터를 덮어 씌워야 할 때, 이런 바이트 오더링에 따라서 데이터를 삽입해야 한다.

 

문자열은 바이트 오더링에 상관 없이 저장되는 순서대로 저장이 된다.

그 외 다른 데이터들은 바이트 오더링을 따른다.

 

인코딩, 디코딩에 대해서 배웠다.

아스키, UTF, Base64 방식 등등

 

운영체제

프로세스(프로그램)에게 시스템 자원을 할당하는 복잡한 관리작업을 해주는 것이 운영체제라는 소프트웨어가 한다.

응용 프로그램과 유저는 직접 컴퓨터 하드웨어에 접근하지 못 하는데, 중간에서 중재하여 접근할 수 있도록 하는 것이 OS(운영체제)이다.

 

  • CPU 스케쥴링
  • 각 프로세스에 메모리 할당 및 해제
  • 컴퓨터 입출력 장치와 정보를 주고받는 과정 관리.

운영체제는 크게 커널과 셸로 구분할 수 있다.

커널은 운영체제의 핵심 기능인 하드웨어를 관리하는 프로그램이고, 셸은 유저와 커널 사이에서 운영체제에 명령을 내릴 수 있도록 하는 인터페이스 역할을 한다. 셸이 명령어를 해석하여 OS와 유저가 소통할 수 있게 해준다.

 

 시스템 해킹에서는 셸을 획득하는 것이 성공으로 여겨진다.

 

 

여기까지.

진법, 바이트오더링, 비트연산, 인코딩, 운영체제를 공부하였다.