Notice
Recent Posts
Recent Comments
Link
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Tags more
Archives
Today
Total
관리 메뉴

개발의변화

4-1 서버프로그램 구현 본문

정보처리기사 준비

4-1 서버프로그램 구현

refindmySapporo 2023. 5. 5. 12:00
반응형

개발도구 분류

1. 빌드 도구(Ant, Maven, Gradle): 빌드 및 배포

2. 구현 도구(Eclipse, InteliJ, Spring Tool Suite, NetBeans, Visual Studio): 코드 작성, 디버깅,수정

3. 테스트 도구(xUnit, PMD, Findbugs, Cppcheck, SonarQube): 코드의 기능 검증과 전체의 품질

4. 형상 관리 도구(CVS,svn,Git): 개발자 작성한 코드와 리소스 등 산출물에 대한 버전 관리를 위한 도구

 

하드웨어 개발환경

웹 서버(Apache HTTP, Microsoft Internet Information, Google Web server)

웹 브라우저의 요청을 받아 HTTP를 통해 웹 브라우저에서 요청하는 HTML 문서나 오브젝트를 전송해주는 서버

 

웹 애플리케이션 서버( WebLogic, Tomcat, IWebSphere, JEUS)

웹 서버로부터 요청을 받아 데이터 처리를 수행하거나, 웹 서버와 데이터베이스 서버 또는 웹 서버와 파일 서버 사이에서 인터페이스 역할 수행

 

데이터베이스 서버: DBMS 연결

파일서버(AWS S3): 파일 저장 하드웨어 -> 물리 저장 장치

 

프레임워크 특징(모재확역)

모듈화, 재사용성, 확장성, 제어의 역행

 

프레임워크 구성요소(개실운관)

개발환경, 실행환경, 운영환경, 관리환경

 

취약성에 따른 공격기법

익스플로잇(Exploit): 버그,보안취약점 등 결함을 이용해 공격자의 의도된 동작 수행

서비스 거부(DoS): 무의미한 서비스 요청 반복-> 서비스 가용 저하

코드 실행: 입력 유효성 검사 없이 쉘(Shell)명령을 실행하는 취약점 이용 -> 공격자가 원하는 임의 코드 실행

버퍼 오버플로우: 정해진 메모리의 범위 넘겨 리턴 주소 변경 -> 임의의 프로그램 함수 실행

정보 수집: 공격 전 정보를 수집

권한 상승: 악성 프로그램 설치 -> 루트권한 획득

SQL 삽입: 공젹자가 입력 폼 및 URL 입력란에 SQL 문을 삽입하여 DB로부터 정보 열람

크로스 사이트 스크립팅(XSS): 공격자가 게시판에 악성 스크립트 작성-> 이벤트 발생 후 쿠기 정보,개인정보 탈취

사이트 간 요청 위조 공격(CSRF): 사용자가 의지와 무관하게 공격자가 의도된 행위를 사이트에 요청

디렉터리 접근: HTTP 기반 공격, 제한된 디렉터리 접근

FTP 바운스 공격: FTP 서버가 데이터 전송할 떄 목적지가 어디인지 검사한지 않는 설계상의 문제점 이용

 

API

XML: W3C 마크업 언어

SOAP:XML기반의 메시지를 컴퓨터 네트워크 상에서 교환하는 프로토콜

 

JSON: 비동기 브라우저/서버 통신(AJAX)를 위해 키-값 쌍으로 이루어진 데이터 오브젝트를 텍스트로 변환한 것

REST: 웹과 같은 분산 하이퍼 미디어 환경에서 자원의 존재/상태 정보를 표준화된 HTTP 메서드로 주고받는 웹 아키텍처

머신러닝: 인공지능의 분야 중 하나로, 인간의 학습 능력과 같은 기능을 컴퓨터에서 실현하고자 하는 기술

 

배치 프로그램

일련의 작업을 작업 단위로 정기적 반복 수행, 일괄 처리

 

배치프로그램 필수요소(자안대견성)

자동화, 안정성, 대용량 데이터, 견고성, 성능

 

배치 프로그램 유형(이온정)

이벤트 배치(사전에 정의해 둔 조건 충족 실행), 온디맨드 배치(사용자의 명시적 요구), 정기 배치(정해진 시점)

 

배치 프로그램 종류

스프링 배치(스프링 프레임워크 (AOP,DI,서비스 추상화) 3대 요소를 모두 사용가능한 스케쥴러)

쿼츠 스케줄러(Quartz Scheduler): 스프링 프레임워크에 플러그인 되어 작업과 실행 스케줄을 정의하는 트리거 분리 유연성제공

반응형