언젠가는

알아두면 좋은 IT 지식 12 - 세션 하이재킹, 템플릿, IPC 본문

IT/IT 지식

알아두면 좋은 IT 지식 12 - 세션 하이재킹, 템플릿, IPC

new1life 2022. 7. 13. 21:01

세션 하이재킹을 탐지하는 방법

비동기화 상태 탐지, ACK STORM 탐지, 패킷의 유실 및 재전송 증가 탐지.

 

Evil Win Attack

소셜 네트워크에서 악의적인 사용자가 아는 사람 또는 어떤 유명인사로 변장하여 활동하는 공격 기법입니다. 접속한 사람들을 기만해서 로그인 비밀번호나 신용카드 번호를 가로채기 위해 합법적인 네트워크로 변장한 무선 네트워크를 통해 노트북이나 디지털 기기로 핫스폿에 연결한 무선 사용자들을 공격합니다.

 

피싱

전자우편, 메신저를 통해서 알고 있던 사용자로 변장하여 필요한 정보를 부적절하게 얻으려는 것을 말합니다. 소셜 엔지니어링의 한 종류입니다.

 

Logic bomb

어느 날짜나 시간 등의 조건이 달성되었을 때 악랄한 기능이 실행될 수 있게 만든 코드의 한 부분으로 소프트웨어 시스템에 일부러 삽입한 것을 말합니다.

 

템플릿

영어로는 형판, 형틀이라는 뜻으로, 화면의 기본적인 레이아웃 형태를 나타내는 것을 말합니다.

 

HCI

사람과 컴퓨터 시스템 간의 상호작용을 연구하고 설계하는 것으로, 사람이 컴퓨터를 편리하게 사용할 수 있도록 합니다.

 

추상화의 유형

과정 추상화, 데이터 추상화, 제어 추상화

 

소프트웨어 아키텍처 설계의 기본원리

모듈화, 추상화, 단계적 분해, 정보 은닉

 

피어 투 피어 패턴

패턴의 종류 중 멀티 스레드 방식이라고 하면 피어 투 피어 패턴입니다.

 

중재자(mediator) 패턴

여러 객체들이 서로 메시지를 교환하는 상호작용을 특정한 객체 속에 캡슐화하여 서로의 존재 유무를 모르는 상태에서도 메시지를 교환하며 서로 협력할 수 있도록 만들어 주는 설계 패턴입니다.

 

시스템 인터페이스 설계서

시스템 내부와 외부의 인터페이스를 식별하고, 인터페이스의 명세를 표현하기 위해 작성하는 문서입니다.

 

시스템 인터페이스 설계서의 구성

시스템 인터페이스 목록과, 시스템 인터페이스 정의서로 구성되어 있습니다.

 

지연 처리 방식

인터페이스 처리 유형 중에서 데이터를 한 건 단위로 처리할 경우 돈이 많이 들 때 사용하는 방식입니다.

 

IPC(Inter-process Communication)

모듈 간 통신 방식을 만들기 위한 것으로, 여러 개의 프로세스를 수행하고, 프로세스 사이에서 통신까지 구현합니다.

1) Shared Memory – 메모리 공유해서 통신함

2) Socket – 네트워크 소켓을 이용해 경유하는 프로세스 통신

3) Semaphores – 공유 자원에 대한 접근 제어

4) Pipes&named Pipes. 파이프로 통신, 이용 중에는 다른 애가 못씀

5) Message Queueing 메시지 발생하면 전달, 통신

 

Validation과 Verification

사용자 입장에서 만들어진 소프트웨어가 고객이 제출한 요구사항과 맞게 구현되었는지 확인하는 것이 Validation입니다.

개발자 입장에서 만들어진 소프트웨어가 명세서에 근거해서 만들어졌는지 점검하는 것이 Verification입니다.

 

테스트 오라클의 종류

참 오라클 : 항공기, 은행, 발전소 등에서. 모든 입력값에 대해 기댓값을 제공합니다.

샘플링 오라클 : 몇몇 입력값만 기댓값을 봅니다.

휴리스틱(추정) 오라클 : 샘플링 오라클 개선한 것으로 나머지는 추청 치를 제공합니다.

일관성 검사 오라클 : 수행 전과 후의 값이 동일한지를 확인합니다.

 

ESB(Enterprise Service Bus)

통합된다는 특징이 EAI와 유사하지만, 서비스 중심의 통합을 지향한다는 점이 차이입니다. 결합도를 약하게 유지하고, 관리와 보안이 용이하고, 높은 수준의 품질 지원이 가능합니다.

 

JSON / XML / AJAX

JSON : 속성-값 세트로 이루어진 데이터 객체를 보내주기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷으로, 비동기 처리에 사용되는 AJAX에서 XML을 대체해서 사용하는 것입니다.

XML : 특수한 목적을 갖는 마크업 언어를 만드는 데 사용되는 다목적 마크업 언어입니다. HTML 문법이 웹 브라우저에서 서로 사이가 좋지 못하다는 문제와 SGML의 복잡한 특성을 해결하기 위해 개발하였습니다.

AJAX : 자바스크립트 등을 사용하여 클라이언트와 서버 간에 XML 데이터를 교환하거나 통제해서 사용자가 웹 페이지와 자유롭게 상호 작용할 수 있도록 해주는 비동기 통신 기술입니다.

 

APM

애플리케이션의 성능관리를 위해 접속자, 자원 현황, 트랜잭션 수행 내역, 장애 진단 등의 다양한 종류의 모니터링 기능을 제공하는 도구입니다. 리소스 방식과 엔드 투 엔드 두 가지 유형이 있습니다.

리소스 방식에는 nagios, Zabbix, cacti가 있고, 엔드 투 엔드 방식에는 VisualVM, 제니퍼, 스카우터 등이 있습니다.

 

인터페이스 설계서 

각기 다른 시스템 또는 컴포넌트 사이에서 데이터를 교환하거나 처리하기 위한 목적으로 시스템 간의 교환되는 데이터, 송수신 주체 등이 정의되어 있는 문서입니다.

 

시스템 구성요소

Process, Feedback, Control

 

CASE 원천 기술

구조적 기법, 프로토타이핑 기술, 정보 저장소 기술 (일괄 처리 기술은 아닙니다.)

 

단위 테스트를 통해 발견할 수 있는 오류

1)     알고리즘 오류에 따른 원치 않는 결과

2)     탈출구가 없는 반복문의 사용

3)     틀린 계산 수식에 의한 잘못된 결과

 

스택을 이용한 연산

재귀 호출, 후위 표현(post-fix expression), 깊이 우선 탐색

 

병렬 데이터 베이스 환경 중 수평분할에서 사용하는 분할 기법

RR, 범위 분할, 해시 분할 (예측 분할은 아닙니다.)

 

병행 제어 기법

로킹 기법, 타임스탬프 기법, 다중 버전 기법 (시분할 기법은 아니다)

 

CSMA/CA

무선 랜에서 데이터를 전송할 때, 매체가 비어 있다는 것을 확인하고 나서, 충돌을 피하기 위해 일정 시간을 기다린 후에, 데이터를 전송하는 방법입니다. 네트워크에 데이터의 전송이 없더라도, 동시 전송으로 인한 충돌에 대비해서 확인 신호를 전송하는 것을 말합니다.

 

시간 지역성을 가진 것

반복, 스택, 부프로그램

 

리눅스 bash shell의 export

변수를 출력하고자 할 때는 export를 사용해야 합니다.

Export가 매개변수 없이 쓰이게 된다면, 현재 설정된 환경변수들이 출력됩니다.

변수를 export 하게 되면 전역 변수와 같이 변해서 끝까지 기억된다.

 

TCP 프로토콜

흐름 제어의 기능을 수행하고, 이중(full duplex) 방식의 양방향 가상 회선을 제공합니다. 또한, 전송 데이터와 응답 데이터를 함께 전송할 수 있습니다.

 

자바 스크립트

객체 지향 언어로, 프로토타입이라는 개념이 존재합니다. 프로토타입 링크와 프로토타입 오브젝트를 활용합니다.

 

Comments