분류 전체보기 259

[ 리눅스 마스터 2급 ] _리눅스 라이선스

GNU란? > GNU's Not UNIX의 약자 > "리처드 스톨만"이 **자유 소프트웨어 재단(FSF)에서 진행하며 유지 중인 운영체제 프로젝트입니다. **자유 소프트웨어 재단(FSF; Free Software Foundation) > 1985년 "리처드 스톨만"이 설립한 재단 > 자유 소프트웨어는 아래의 특징을 지닙니다. 목적에 상관 없이 프로그램을 실행시킬 수 있는 자유 유/무료에 상관 없이 프로그램 복제물을 재배포할 수 있는 자유 (자유는 금전적인 측면과 관계가 X) 필요에 따라 프로그램을 개작(수정)할 수 있는 자유 공동체 전체가 개선된 이익을 나눌 수 있게 개작한 프로그램을 배포할 수 있는 자유 리눅스 라이선스 종류 GNU GPL (General Public License) > 독립적인 저작물..

[리.마 2급 기출 풀이]_2022.06.11_(21~40)

21. 다음 중 백그라운드로 실행시킨 프로세스를 확인하는 명령어로 알맞은 것은? ① job ② jobs ③ fg ④ bg 백그라운드로 실행시킨 프로세스를 확인하는 명령어는 "jobs" 입니다. 작업이 중지된 상태, 백그라운드로 진행중인 상태, 변경되었지만 보고되지 않은 상태 등을 표시합니다. 프로세스 관련 주요 명령어는 아래와 같습니다. 명령어 설명 ps 현재 실행 중인 프로세스의 상태를 보여주는 명령어 (CPU 사용도가 낮은 순서대로 출력) pstree 실행 중인 프로세스들을 트리구조로 보여주는 명령어 jobs 작업 중지, 백그라운드, 변경되었지만 보고되지 않은 상태 등을 보여주는 명령어 bg 포그라운드 작업을 백그라운드 작업으로 전환 fg 백그라운드 작업을 포그라운드 작업으로 전환 kill 프로세스 ..

[리.마 2급 기출 풀이]_2022.06.11_(1~20)

1. 다음 중 예약된 프린터 작업을 취소하는 명령으로 알맞은 것은? ① lpr ② lpq ③ cancel ④ lpstat 예약된 프린터 작업을 취소하는 명령은 "cancel"입니다. 유닉스 계열에 따라 (BSD 계열, System V 계열) 서로 다른 프린터 명령어를 지원하며, 대부분의 배포판에서는 이 두 계열의 명령어를 모두 지원합니다. 계열과 명령어에 대한 설명은 아래와 같습니다. 계열 프린터 명령어 설명 BSD 계열 lpr 프린터 작업 요청 lpq 프린터 큐에 있는 작업 목록 출력 lprm 프린터 큐에 대기중인 작업 삭제 lpc 프린터나 프린터 큐 제어 ( 라인 프린터 컨트롤 프로그램 ) System V 계열 lp 프린터 작업 요청 (lpr과 유사) lpstat 프린터 큐의 상태 확인 cancel ..

[Python] 파이썬 내장 함수 - 시퀀스 내장 함수

내장함수 > 파이썬 인터프리터(Python interpreter)에는 항상 사용할 수 있는 많은 함수가 내장되어 있음. > 이를 "내장함수"라고 하고, 외부 모듈에서 불러오는 것이 아니기 때문에 import가 필요하지 않음. 시퀀스 내장 함수 enumerate() > 리스트에 저장된 요소와 해당 요소의 인덱스가 튜플 형태로 추출 a = [1, 2, 3, 4, 5, 6] for i in range(len(a)): if i%2 == 0: continue print(a[i]) a = [1, 2, 3, 4, 5, 6] for i, value in enumerate(a): if i%2 == 0: continue print(value) print(list(enumerate(a))) range() > 전달된 인수값에..

[Python] 파이썬 2022.08.23

[Reversing] 기초 이론_Assembly(어셈블리)_3

메모리 연산 명령어 > [ LEA / SCAS / STOS / REP ] LEA > Load Effective Address, MOV와 유사하지만 LEA는 주소 값을 복사하는 명령어이다. SCAS > Scan String, AL / AX / EAX에 저장되어 있는 값과 EDI에 저장된 주소를 참조한 곳의 값을 비교. (비교 후 Flag 값 설정) STOS > Store String, AL / AX / EAX에 저장되어 있는 값과 EDI에 저장된 주소를 참조한 곳의 값을 비교. (비교 후 Flag 값 설정) REP > Repeat String, ECX Register에 저장된 값 만큼 ECX가 0이 될 때까지 REP 뒤에 위치한 명령을 반복. CODE 이동 명령어 > [ JMP / CALL / RET ] ..

[Reversing] 기초 이론_Assembly(어셈블리)_2

산술 연산 명령어 > IA32에서 지원하는 산술연산 명령어의 종류는 아래와 같다. > [ ADD / SUB / MUL / DIV / IMUL / IDIV ] ADD ( 덧셈, + ) > add esp, 4 > Esp=esp+4 > 변수 공간을 해제할때 사용 SUB ( 뺄셈, - ) > sub esp, 8 > Esp=esp-8 주로 변수 공간을 확보할 때 사용이 된다. MUL ( 곱셈, * ) > eax와 연관 > Ex) mul ecx : eax*ecx > 위 예시의 연산 결과값은 edx:eax에 저장 (상위 비트 : edx, 하위 비트 : eax) IMUL (Interger Multiply, 부호 있는 정수의 곱셈, sign) > MUL과 IMUL 두 명령어 곱셈을 수행한다. ( Unsign과 Sign형..

[Reversing] 기초 이론_Assembly(어셈블리)

Assembly(어셈블리) > 어셈블리 언어는 언어들 중 낮은 레벨의 저급 언어로, 컴퓨터에 가장 가까운 언어. ( Reversing에서 사용되는 언어는 어셈블리 언어 ) > CPU 마다 고유한 어셈블리 언어를 갖고 있다. > 어셈블리 언어는 CPU가 사용하는 바이너리 코드 기계어를 사람이 보기 쉬운 형태로 문자화 시킨 것 > 프로그래밍 언어들은 컴파일러를 통해 기계어로 각자의 언어들을 CPU가 해석해서 실행할 수 있게 기계어로 변환된다. > 기계어를 CPU에 맞게 어셈블리 언어로 변환하여 Reversing에 사용된다. > 인텔 IA32 어셈블리 명령 포맷(가장 대중화) > 먼저 IA32 명령어 형태는 opcode(옵코드) 와 operand(오퍼랜드) 로 구성 OPCODE Operand1(목적지), Op..

[Reversing] 기초 이론_CPU와 레지스터_3

Main Register (메인 레지스터) > 주로 산술연산 명령어에서 데이터 저장 용도로 많이 사용된다. (그 밖에 특수한 용도로도 사용) > 32비트의 크기를 갖고 있고, 데이터를 효율적으로 사용하기 위해 구역을 나누어 사용한다. EAX (Accumulator) > 산술/논리 연산의 중심이 되는 레지스터이다. 곱셈, 나눗셈 명령에서 자동으로 사용한다. > 함수 리턴 값이 저장된다. EBX (Base Register) > 간접번지 지정에 사용된다. (EBX + EAX -> 64비트 연산) > 메모리 주소 지정을 확장, 포인터 ECX (Count Register) > 반복 명령어에서 반복 횟수를 지정에 사용된다. EDX (Data Register) > 간접 번지 지정에 사용된다. (EDX + EAX ->..

[Reversing] 기초 이론_CPU와 레지스터_2

Paging? > 총 32비트 선형주소 중 10비트의 Page Directory와 CPU CR3 Register를 통해 Page Table의 시작 주소를 얻는다. (Page Directory의 수 : 2^10 =1024) > Page Table의 시작 주소 + 이전 세그먼테이션에서의 선형주소의 Page Table 값 = 실제 물리 주소의 페이지 Byte Ordering? > 컴퓨터에서 메모리에 데이터를 저장하는 방식 > 데이터가 메모리에 저장되는 순서에 따라 2가지로 구분 > [ Little Endian(리틀 엔디언) / Big Endian(빅 엔디언) ] Big Endian > 데이터가 상위 바이트부터 메모리에 적재 (Network Ordering) > 높은 비트열 먼저 들어와서 연산 시 데이터를 다 ..

[네.관.사 2급 기출 풀이]_2021.11.14_전체 해설

1. UDP 헤더에 포함이 되지 않는 항목은? ① 확인 응답 번호(Acknowledgment Number) ② 소스 포트(Source Port) 주소 ③ 체크섬(Checksum) 필드 ④ 목적지 포트(Destination Port) 주소 UDP Header UDP Header는 포트 번호로 통신을 하기 위한 Source Port, Destination Port 필드가 존재합니다. 길이를 나타내는 Length 필드와 에러 검출을 위한 Checksum 필드가 존재합니다. UDP는 비연결형이기 때문에 ACK(Acknoowledgment Number; 확인 응답 번호) 필드가 존재하지 않습니다. 연결형 서비스인 TCP에서 ACK를 사용합니다. TCP Header 2. ARP 캐시에 대한 설명으로 옳지 않은 것은..