반응형

Major Study. 162

네트워크 소프트웨어의 계층 구조

/* * http://sosal.kr/ * made by so_Sal */ 네트워크 소프트웨어의 주요 작업은, 다양한 컴퓨터들 사이에서 필요한 메시지를 주고받기 위해 필요한 인프라를 제공하는 것이다. 위 계층 구조는, 택배에 많이 비유한다. 1. 선물을 보낸 사람이 물건과 목적지를 적음. //사용자 계층 2. 회사가 가져간 후, 컨테이너에 넣어 항공사에 전달. //전송 회사 3. 항공사가 목적지 도시에 전달 (중간 기착지들을 거친다) //항공사 4. 도시에서 정확한 목적지까지 물건을 전달. 네트워크 소프트웨어라고 다를것 없다. 응용계층, 전송계층, 네트워크 계층, 링크 계층으로 택배와 유사하게 동작한다. (에고, 허접하지만 -_-; 힘들게 그렸습니다 ㅠㅠ) 일단 그림을 보시면, 가장 왼쪽 상단에서 메시지..

데이터 압축 (Data compression)

/* * http://sosal.kr/ * made by so_Sal */ 데이터의 저장, 전송을 위해서 원래의 정보를 유지하면서도 데이터 크기를 줄이는 것은 경우에 따라서 효율적이고, 필수적이다. 이러한 기법을 데이터 압축이라 부름. 데이터 압축 : 1. 무손실 압축 방법, 2. 손실 압축 방법. 무손실 압축방법이란 압축 과정에서 완벽히 정보를 다시 복원할 수 있는 방법이며, 손실 압축방법은 압축 과정에서 본래의 정보를 잃을 수도 있는 방법이다. RLE (Run-Length Encoding) : 동일한 값이 연속하여 나타나는 긴 열이 있을 경우, 반복되는 원소와 반복 횟수를 나타내는 코드로 대체한다. 빈도 종속 인코딩 (Frequency-dependent encoding): 데이터 항목을 표현하기 위해..

컴퓨터 과학에서의 추상화(Abstraction)

/* * http://sosal.kr/ * made by so_Sal */ 추상화 개념은 컴퓨터과학이라는 학문과 컴퓨터 시스템 설계 곳곳에서 이용되고 있다. 추상화 (Abstraction) 이라는 용어는 개체의 외적 속성과, 내적 구성의 세부사항을 구별하는것을 가리킨다. 우리는 추상화를 통해서 컴퓨터, 자동차, 전자레인지, 또는 프로그래밍의 함수 등에서 복잡하고 어려운 내적 세부사항을 무시한 채 하나의 도구, 또는 장비로 파악하여 간단하게 사용할 수 있게 된다. 더욱이 이렇게 복잡한 시스템을 설계하고 제작할 수 있는 것도 추상화를 통해서이다. 컴퓨터, 자동차 등의 여러 큰 물품 등은 각기 여러 부품들이 사용되어 제작되는데, 물품을 구성하는 이러한 부품들 또한 작은 부품들로 구성되어진다. 하지만 물품을 사..

컴퓨터 알고리즘의 역할

/* * http://sosal.kr/ * made by so_Sal */ 알고리즘 : 작업을 수행하는 방법을 정의하는 단계들의 집합. ex ) 음식을 만드는 알고리즘, 길을 찾아가기 위한 알고리즘, 악기 연주를 위한 악보를 보는 알고리즘 등. 컴퓨터가 어떤 작업을 수행하기 위해서, 먼저 그 작업을 수행하기 위한 일련의 명령집합 (알고리즘)을 만들고, 이를 처리할 수 있는 형식으로 표현해줘야만한다. ex ) 컴퓨터 -> 프로그램 프로그램을 컴퓨터가 처리할 수 있는 형식으로 인코딩하여 컴퓨터 안에 저장시키는 과정을 프로그래밍(programming)이라고 한다. 프로그램들과 이들이 나타내는 알고리즘을 함께 묶어 소프트웨어(software)라고 부르는데, 이는 하드웨어(hardware)라고 불리는 컴퓨터 장비..

number system, Data storage

/* * http://sosal.kr/ * made by so_Sal */ Foundation of computer science 2~3장을 리뷰하고있습니다. ㅎㅎㅎ 컴퓨터의 수체계에 대해서 설명하나보네요. 컴퓨터는 on off, 딱 2가지의 경우가 있죠? 이를 수로 나타낸게 2진수로, 010101101010 뭐 이런식 -.-ㅋ; 2진수, 8진수, 10진수, 16진수를 흔히 볼 수 있죠 ㅎㅎ 자세한 사항은 생략~! 0과 1을 bit라고 합니다. 이를 수로 나타낸게 (2진법) bit pattern~! 즉, 1bit : 2가지 경우의 수 4bit : 16가지 경우의 수 8bit : 256가지 경우의 수 8비트를 1바이트로 표현 1byte = 256가지 경우의수 1000 byte = 1 kb. 1000kb =..

Foundation of cs / Turing model

/* * http://sosal.kr/ * made by so_Sal */ Foundation of computer science 1장을 리뷰하고있습니다. ㅎㅎㅎ The idea of a universal computational device was first described by Alan turing in 1937. He proposed that all computation could be performed by a special kind of a machine, now called a turing machine. 튜닝기계로써의 컴퓨터.. input data -> [ computer ] -> Output data. 이산수학할때 참 많이 보던거였는데 ^^; foundation of computer sc..

논리연산자, shift operations

/* * http://sosal.kr/ * made by so_Sal */ Logic operations. these operations refer to those operations that apply the same basic opeation on individual bits of a pattern, or on two corresponding bits in two patterns. 비트레벨 논리동작을 우리가 정의할 수 있다는것을 의미한다네요. A bit can take one of the two values : 0 or 1. 0 : false 1 : true NOT 1 -> 0 0 -> 1 AND (both digits should 1 -> true) 0 & 0 -> 0 0 & 1 -> 0 1 & 0..

시스템 보안 12. lp취약점 패치

/* * http://sosal.tistory.com/ * made by so_Sal */ 솔라리스 2.8 시스템을 운영중에 파일프린팅에 사용되는 lp라는 root setuid 프로그램이 버퍼오버플로우 취약점이 있는 것으로 알려졌다. 하지만 파일 프린팅을 해야되기 때문에 이 프로그램을 제거할 수는 없고, 시스템의 용도때문에 root setuid를 제거할수도 없다. 이 lp라는 프로그램에 대해여 적절한 보안해결책을 모색하시오. 참고로, 다행히 OS제작사에서는 이 프로그램의 보안버전(patch)를 최근에 109320-04 패치번호로 발표된바 있으며, 이 패치파일을 /var/sadm/spool/patch/109320-04.zip 에 다운로드 받아놓았다. lp라는 파일을 확인해봤습니다. lp로 무언가를 하는것은..

디지털 포렌식 Forensic Duplication.

/* * http://sosal.tistory.com/ * made by so_Sal */ 침해 사고가 발생한 시스템에서 증거 확보 및 차후 분석을 위해서 디스크 이미지를 복사하려고 한다. 다음 조건을 만족하도록 dd 를 이용하여 백업을 수행하고 생성된 디스크 이미지 파일의 md5 체크섬을 계산하라. (백업 이미지는 자신의 홈디렉토리에서만 생성 가능하다.) 1. dd를 사용하여 바이트 단위로 복사 2. 복사 대상 파티션 : /home 3. 생성된 디스크 이미지 파일이름 : victim.data.dd 해킹사고가 발생하였을시, 현재 컴퓨터 상태를 분석하기 위해 필히 복사를 해야한다. 포렌식 도중에 OS 환경이 바뀔 시, 증거자료로 사용할 수 없게되기 때문이다. 그럼 디스크 이미지를 복사하는 방법은? : 'd..

SMP2010 binary hacking6 풀이

/* * http://sosal.tistory.com/ * made by so_Sal */ smp2010 중, 6번 바이너리 해킹문제 입니다. 문제파일입니다. 리눅스 서버에서 wget 툴을 사용하여 바이너리를 일단 받죠. (위 파일의 url임) wget http://sosal.tistory.com/attachment/cfile23.uf@167E83114CEC1DCD1F4271 받은 파일의 이름을 간단하게 바꾸고, file 명령어로 실행이 가능한 파일인지 확인 후 실행해봤습니다. Segmentation fault! 작렬하네요. argv를 넣어보니, 뭔가 인자를 발견했다 하고 바로 꺼지네요..? (일단 설치하고 문제 프로그램의 이름을 myfile로 수정하여 공격하겠습니다.) 매개변수를 여러개 넣어도 같은 결..

반응형