자격증/정보처리기사 실기 8

정보처리기사 실기 - 프로그래밍 언어 이해(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 사..

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

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

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

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

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

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

정처기 실기 - 데이터베이스 Transaction

1. 트랜잭션 데이터를 보장하기 위해서 DBMS가 가지는 특성이다. 또, DBMS에서 하나의 논리적 기능을 정상적으로 수행하기 위한 단위이다. 2. 트랜잭션의 특성 원자성 (Atomic) 트랜잭션을 구성하는 작업 모두 정상적으로 실행되거나 모두 취소되어야 하는 성질 Commit / Rollback 회복성 보장 일관성 (Consistency) 시스템의 고정요소는 트랜잭션 수행 전과 이후 모두 같아야 하는 성질 무결성 제약조건 동시성 제어 격리,고립성(isolation) 동시에 실행되는 트랜잭션들이 서로 영향을 끼치지 않는 성질 Read Uncommitted Read Committed Repeatable Read Serializable 영속성 (durabillity) 성공이 완료된 트랜잭션의 결과는영속적으로..