전체 글 103

NodeJS 개념 & 설치 방법, REPL

Node.JS란? 더보기 크롬 V8 Javascript 엔진으로 빌드 된 자바스크립트 런타임. 기존의 JavaScript는 브라우저에서 사용되었지만 NodeJs는 서버 사이드를 구현하기 위해 사용하기 때문에, 브라우저 외에어디서나 사용 가능하다. V8 엔진은 Google에서 만들었으며, JavaScript 코드를 Machine Code로 해석해주는 역할을 한다. + TMI로 V8은 C++로 만들어졌다고 한다. 설치 방법 가장 최신의 Node.js의 버전은 공식 홈페이지에 접속하면 맨 처음 화면에 다음과 같이 나온다. https://nodejs.org/en Node.js Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. nod..

NodeJS 2023.12.30

정보처리기사 실기 - 프로그래밍 언어 이해(C언어)

프로그래밍 언어 이해는 정보처리기사 실기 시험에 많이 나오기 때문에 꼭 한 번은 읽어봐야 하는 것 같다. C 언어는 전처리 부분 + 본문으로 구성되어 있다. 헤더는 xxx.h 파일로 되어있고, 헤더 안에는 프로그래밍에 필요한 함수들이 포함되어 있다. 전처리기 (Preprocessor) C언어에서 #이 붙으면 전처리 지시문 (전처리기)라고 한다. 종류 #include : 헤더 파일을 포함할 때 사용하는 전처리기 #define : 매크로를 정의할 때 사용. 상수값을 지정하기 위한 예약어. 자료형 유형 설명 선언 형식 문자 (Character) - 문자 하나를 저장하고자 할 때 사용 - 메모리에 저장은 숫자로 저장 char 정수 (Integer) - 정수 값을 저장할 때 사용 int 부동 소수점 (Floati..

정보처리기사 실기 - 소프트웨어 개발 보안 구현 (SW 개발 보안 테스트 & 결함 관리)

SW 개발 보안 테스트 & 결함 관리 개념 보안 요구사항이 반영되어 있음을 보증하고, 취약점 개선해 안전한 소프트웨어를 개발하기 위한 활동 SW 개발 보안 테스트 & 결함 관리 유형 구분 설명 특징 정적 분석 - SW를 실행하지 않고 보안 약점 분석 - SW 개발 단계에서 주로 사용 - 취약점 초기 발견 (수정비용 절감) - 컴포넌트 간 취약점 발견에 제한적 - 설계, 구조 관점 취약점은 식별 불가 동적 분석 - SW 실행환경에서 보안 약점 분석 - SW 시험 단계에서 주로 사용 - 소스 코드 필요 X - 정확도와 커버리지 향상 - 구조 관점의 보안 약점식별 불가

정보처리기사 실기 - 소프트웨어 개발 보안 구현 (시스템 보안 구현)

유닉스/리눅스 주요 로그 파일 일반적으로 로그가 저장되는 경로 유닉스 : /var/adm 리눅스 : /var/log 시스템의 /etc/syslog.conf 파일에서 로그 파일들의 위치를 지정하고 있음. 로그 이름 설명 내용 확인 명령어 wtmp / wtmpx - 사용자 로그인 / 로그아웃 정보 - 시스템 shutdown / reboot 정보 last utmp / utmpx - 현재 시스템에 로그인한 사용자 정보 who, w, users, finger btmp / btmpx - 로그인 실패한 정보 lastb lastlog - 사용자 별 최근 로그인 시간 및 접근 소스 호스트에 대한 정보 lastlog sulog - su(switch user) 명령어 실행 성공 / 실패 결과 X acct / pacct - ..

정보처리기사 실기 - 소프트웨어 개발 보안 구현 (SW 개발 보안 구현)

SW 개발 보안 구현 시큐어 코딩 가이드 해킹 등의 공격을 유발할 가능성이 있는 보안 취약점을 사전에 제거하고, 외부 공격으로부터 안전한 소프트웨어를 개발하는 기법 보안 약점 내용 대응 방안 입력데이터 검증 및 표현 프로그램 입력값에 대한 검증 누락, 부적절한 검증, 잘못된 형식 입력 데이터에 대한 유효성 검증, 실패 시 처리 설계 및 구현 보안 기능 보안 기능(인증, 접근 제어, 기밀성, 암호화, 권한 관리 등)의 부적절한 구현 인증, 접근 통제, 권한 관리, 비밀번호 등 정책이 적절하게 반영되도록 설계 및 구현 시간 및 상태 거의 동시에 수행 지원하는 병렬 시스템 or 하나 이상의 프로세스가 동작하는 환경에서 시간 및 상태 부적절한 관리 공유 자원의 접근 직렬화, 병렬 실행 가능 Framework 사..

정보처리기사 실기 - 운영체제의 특징 (운영체제의 종류)

운영체제 ( OS : Operation System )의 개념 컴퓨터의 하드웨어를 쉽게 사용할 수 있도록 인터페이스를 제공해 주는 소프트웨어 운영체제는 시스템 자원을 효과적으로 사용할 수 있도록 운영해 주어 편의성을 제공해 줌 컴퓨터 시스템과 사용자 간의 인터페이스 기능을 담당 운영체제의 특징 특징 설명 편리성 제공 한정된 자원을 효과적으로 사용할 수 있도록 관리 및 운영 인터페이스 기능 컴퓨터 시스템과 사용자를 연결 스케줄링 담당 다중 사용자와 다중 응용 프로그램 환경에서 자원의 현재 상태를 파악, 자원 분배를 위한 스케줄링 담당 자원 관리 CPU, 메모리 공간, 기억장치, 입출력 장치의 자원 관리 제어기능 입출력 장치와 사용자 프로그램을 제어 운영 체제는 크게 쉘(Shell) + 커널(Kernel)의..

카테고리 없음 2023.07.16

정보처리기사 실기 - SW 개발 보안 설계

개념 보안 취약점 제거하고 보안을 고려해 기능 설계, 구현하는 활동을 말한다. SW 개발 보안 생명주기 요구사항 명세 보안 항목 식별, 요구사항 명세서 설계 보안 설계서 작성, 보안설계 검토 위협 모델링 : 위협원 도출을 위함 구현 SW 개발 보안 가이드 준수해 개발 소스 코드 보안 약점 진단 및 개선 테스트 모의침투 테스트, 동적분석을 통한 보안 취약점 진단 및 개선 유지보수 지속적인 개선 보안 패치 SW 개발 보안 구성요소 기밀성, 무결성, 가용성 지키고 취약점 사전 방지 위험을 최소화하는 구축 방법 기밀성(Confidentiality) : 인가된 사용자에 대해서만 자원 접근이 가능해야 하는 특성 인가되지 않은 개인이나 시스템 접근에 따른 정보 공개 및 노출을 차단 무결성(Integrity) 인가된 ..

정처기 실기 - 소프트웨어 개발 방법론 ( 객체 지향 분석 방법론)

객체지향 개념 실제 세계의 개체를 속성 + 메서드의 객체로 표현하는 기법 객체지향 구성 요소 클래스 변수와 메서드를 정의하는 틀 데이터를 추상화하는 단위 하나 이상의 유사한 객체들을 묶어서 하나의 공통 특성을 표현 속성 - 변수 , 행위 - 메서드 객체 물리, 추상적으로 자신과 다른 것을 식별 가능한 대상 클래스에서 정의한 것을 토대로 메모리에 할당 객체마다 상태와 식별성을 가짐 메서드 객체를 사용하는 방법 객체가 메시지를 받아 실행해야 할 객체의 구체적인 연산 함수 또는 프로시저에 해당하는 연산 메시지 객체 간의 상호 작용을 하기 위한 수단 객체에게 어떤 행위를 하도록 지시하는 방법 객체 간의 상호 작용은 메시지를 통해 이루어짐 메시지는 객체에서 객체로 전달 됨 인스턴스 클래스를 통해서 만든 실체 실제..

정처기 실기 - 소프트웨어 개발 방법론 ( 소프트웨어 개발 방법론)

소프트웨어 개발 방법론 개념 소프트웨어 개발 전 과정에 지속적으로 적용할 수 있는 방법, 절차, 기법 소프트웨어를 하나의 생명체로 간주. 개발의 시작부텀 소프트웨어의 소멸까지의 과정을 형상화한 방법론 종류 구조적 방법론 (Structure Development) 프로세스 중심의 하향식 방법론 나씨-슈나이더만 차트 논리의 기술에 중점을둔 도형식 표현 방법 연속, 선택 및 다중선택, 반복 등 제어 논리 구조로 표현 조건이 여러개인 곳의 처리를 시각적으로 명확히 식별하는데 적합 정보공학 방법론 (Infomation Engineering Development) 정보시스템 개발에 필요한 관리 절차와 작업 기법을 체계화한 방법론 개발주기를 이용해 대형 프로젝트를 수행하는 체계적 방법론 객체 지향 방법론(OOD : ..

카테고리 없음 2023.07.09

정처기 실기 - 소프트웨어 개발 방법론 (소프트웨어 생명주기 모델)

소프트웨어 생명주기(SDLC : Software Development Life Cycle) 개념 시스템의 요구 분석부터 유지보수까지 전 공정을 체계화한 절차 시스템이 개발될 때부터 운영, 유지보수를 거쳐 생애를 마칠 때까지 어떤 순서를 밟는지에 대한 작업 프로세스를 모델화한 것 절차 요구사항 분석 : 기능, 비기능 요구사항 요구사항을 고려해 요구와 조건을 결정 소프트웨어의 기능, 제약 조건, 목표 등을 사용자와 같이 명확히 정의하는 단계 설계 : 시스템 구조 설계, 프로그램 설계, UI 설계 시스템 명세 단계에서 정의한 기능을 실제 수행할 수 있도록 수행 방법을 논리적으로 결정 구현 : 인터페이스 개발, 자료 구조 개발, 오류 처리 프로그래밍 언어 선택, 기법, 스타일, 순서 등을 결정하는 단계 테스트 ..