2. FTP 서버로부터 자료를 정상적으로 받지 못해 전문가에게 도움을 요청하였더니, Stateful Inspecion 방화벽 설치를 추천하였고, 그 이후 서비스가 가능하게 되었다.
1) FTP의 진행절차 중 어느 단계까지 수행이 되다가 막혔으며, 이유가 무엇인가? (Active mode)
2) Stateful Inspection Firewall을 이용한 경우 정상화가 된 이유는 무엇인가?
3) Passive mode인 경우는 어떻게 되는가?
3. 소프트웨어의 정적 분석에 주로 이용되는 소프트웨어 보안약점 진단가이드상에 기재되어 있는 소프트웨어 보안 약점의 7가지 분류에 대해 적고, 각각에 대해 자세히 서술하시오.
4. OWASP TOP10에 해당하는 보안 취약점 10가지에 대해 적고 각각에 대해 설명하시오.
5. 은행을 대리해 서버가 있는 곳, 또는 사용자 ID와 패스워드를 사용하는 것보다 좀 더 안전한 사용자로부터 인증이 필요한 상황에서 보다 많이 사용하며, 웹 보안에 적용되는 프로토콜로, 웹에서만 적용이 되며 서버와 클라이언트 각각 인증서가 필요하고, 메시지 단위로 암호화를 하는 보안 프로토콜은 무엇인가?
6. 웹 서비스 구조로는 ( A ), ( B ), ( C ) 라고 하는 3가지 XML 기반의 공개 표준을 바탕으로 하고 있다.
( A )는 XML과 HTTP들을 기본으로 한 컴퓨터에 있는 데이터나 서비스를 호출하기 위한 프로토콜로, 서비스 매니저, 전개된 서비스 리스트, XML Translator라는 3개의 엔티티가 있다.
( B )는 당 서비스에 대한 상세한 설명이 포함되어 있는 서비스 기술서로, 서비스 공급자가 기반 프로토콜이나 인코딩과는 무관하게 기본 요청 포맷을 시스템에 제공할 수 있는 간단한 방식이다.
( C )는 IBM, Ariva, MS에 의해 설립되었으며, 웹 서비스를 등록하고 검색할 수 있는 일정의 레지스트리와 관련된 표준으로, 네트워크 전송 레이어와 ( A ) 기반 XML 메시지 전송 레이어 상에서 구현된다.
7. 데이터 구조도가 트리 형태로 이루어져 있으며, 부모 자식 관계가 1:n 관계이며, 높은 데이터 처리의 효율성, 신축성 및 유연성 부족, 데이터 중복성의 특징이 있는 것은 어떤 데이터 모델인가?
8. 지정된 메모리의 양보다 더 많은 양의 데이터를 입력할 때 발생하는 것으로, 스택에서 리턴 어드레스를 수정하여 프로세스 흐름을 조정하도록 하는 공격 방법은 무엇인가?
답.---------------------------------------------------------------------------
1.
A - FTP
B - Active
C - Passive
D - 20
E - 1024이상
F - 1024 이상
2.
1) 클라이언트에서 서버로 21번 포트를 이용해 연결제어에 성공한 이후, 데이터 통신을 위해 서버에서 20번 포트를 이용해 클라이언트로의 접속을 시도하게 되는데, 이때 서버에서 나가는 통신에 대해서 방화벽에 의해 막히게 되었다.
2) Stateful Inspection Firewall의 경우는 한번 클라이언트와 서버가 접속이 된 경우에는, 서버쪽에서 나가는 연결에 대해서는 자동적으로 허용이 되기 때문에 정상 접속이 된다.2.
1) 클라이언트에서 서버로 21번 포트를 이용해 연결제어에 성공한 이후, 데이터 통신을 위해 서버에서 20번 포트를 이용해 클라이언트로의 접속을 시도하게 되는데, 이때 서버에서 나가는 통신에 대해서 방화벽에 의해 막히게 되었다.
3) Passive모드인 경우, 클라이언트가 서버의 21번포트로 연결제어에 성공한 이후, 역시 클라이언트에서 1024 이후 포트 중 하나를 선택해 서버의 1024 이후 포트 중 하나로 접속하여 데이터 연결을 하게 된다.
3.
(1) 입력데이터 검증 및 표현
- 프로그램 입력값에 대한 검증 누락, 부적절한 검증등으로 인해 발생되는 취약점으로 SQL injection, command injection, XSS, 파일 업로드 취약점 등의 공격을 유발시킬 수 있다.
(2) 보안 기능
- 인증, 접근제어, 기밀성, 암호화, 권한관리 등을 부적절하게 구현하는 경우 인증 없는 중요 기능 허용, 부적절한 인가, 안전하지 않은 암호알고리즘 사용이나 평문저장으로 인한 중요정보 노출 등의 공격을 유발시킬 수 있다.
(3) 시간 및 상태
- 동시, 또는 거의 동시에 수행을 지원하는 병렬 시스템, 하나 이상의 프로세스가 동작되는 환경에서 시간 및 상태를 부적절하게 관리하여 공격을 유발시킬 수 있다. 또한 제어문을 사용하지 않는 재귀함수의 사용으로 인해 할당된 메모리나 스택을 과다하게 사용하여 자원고갈을 유발할 수도 있다.
(4) 에러 처리
- 에러를 처리하지 않거나, 불충분하게 처리하여 에러 정보에 중요 정보가 포함될 경우 발생하는 취약점으로, 공격자가 쉽게 프로그램 내부 구조를 파악할 수 있게 해준다.
(5) 코드 오류
- 타입 변환 오류, 자원의 부적절한 반환 등과 같이 개발자가 범할 수 있는 코딩 오류로 인해 유발되는 취약점으로, null 포인터 역참조나 부적절한 자원 해제 등이 있다.
(6) 캡슐화
- 중요한 데이터 또는 기능성을 불충분하게 캡슐화 하거나, 잘못 사용함으로써 발생하는 취약점으로 정보 노출, 권한문제 등을 야기시킨다. 주로 잘못된 세션에 의한 데이터 노출, 제거되지 않고 남겨져 있는 디버그 코드 등이 있다.
(7) API 오용
- 의도된 사용에 반하는 방법으로 API를 사용하거나, 보안에 취약한 API를 사용하여 발생되는 보안 취약점이다.
4.
(1) injection
SQL injection, command injection, xpath injection, LDAP injection 같은 취약점이 포함되며, 사용자가 입력한데이터가 명령어나 질의문의 일부분으로 입력값 검증 없이 인터프리터에 보내지게 될때 발생되며 명령어 실행 또는 접근이 불가능한 데이터에 대한 접근 등의 취약점을 발생시킨다.
(2) 취약한 인증 및 세션관리
인증 및 세션관리와 관련된 애플리케이션의 비정상적인 동작으로 인해 비밀번호, 키, 인증토큰 및 사용자 도용과 같은 취약점을 발생시킨다
(3) XSS
신뢰할 수 없는 외부 값을 적절한 검증 없이 웹 브라우저로 전송하는 경우 발생되는 취약점으로, 사용자 세션을 가로채거나, 홈페이지 변조, 악의적인 사이트 이동 등의 공격을 수행할 수 있다
(4) 불안전한 직접 객체 참조
파일, 디렉토리, 데이터베이스 키와 같은 내부적으로 처리되는 오브젝트가 노출되는 경우, 다운로드 취약점 등을 이용해 시스템 파일에 접근하는 취약점 등을 의미한다. 참조 값을 조작하여 승인 없이 다른 객체에 접속할 수 있다.
(5) 잘못된 보안 설정
애플리케이션, 프레임워크, 애플리케이션서버, 데이터베이스서버, 플랫폼 등에 보안설정을 적절하게 설정하고 최적화된 값으로 유지하며, 또한 소프트웨어는 최신의 업데이트 상태로 유지해야 한다
(6) 민감 데이터 노출
대다수의 웹 애플리케이션은 카드번호 등과 같은 개인정보를 적절하게 보호하고 있지 않기 때문에 개인정보 유출과 같은 취약점이 발생되고 있다. 이를 보완하기 위해서는 데이터 저장 시 암호화 및 데이터 전송 시에도 SSL 등을 이용해야 한다.
(7) 함수 레벨의 접근제어 설정 미비
가상적으로는 UI에서 보여지는 특정기능을 수행 전, 기능 접근제한 권한을 검증해야 하나, 애플리케이션은 각 기능에 대한 접근 시 동일한 접근통제 검사 수행이 요구된다. 만일 적절하게 수행되지 않는 경우 공격자는 비인가된 기능에 접근하기 위해, 정상적인 요청을 변조할 수도 있다
(8) CSRF
로그온된 피해자의 웹 브라우저를 통해, 세션 쿠키 및 기타 다른 인증정보가 포함되어 변조된 HTTP 요청을 전송시켜, 정상적인 요청처럼 보이게 하는 기법으로 물품구매, 사이트 글 변조 등의 악의적인 행동을 하는 취약점을 의미한다.
(9) 알려진 취약한 컴포넌트 이용
슈퍼유저 권한으로 운영되는 취약한 라이브러리, 프레임워크 및 기타 다른 소프트웨어 모듈로 인해 데이터유실 및 서버 권한획득과 같은 취약성이 존재한다
(10) 유효하지 않은 리다이렉트와 포워드
웹 애플리케이션에 접속한 사용자를 다른 페이지로 리다이렉트 시키는 경우, 이동되는 목적지에 대한 검증부재시, 피싱, 악성코드 사이트 등의 접속 및 인가되지 않는 페이지 접근 등의 문제점을 일으킬 수 있다
5. S-HTTP
6. A - SOAP, B - WSDL, C - UDDI
7. 계층형 모델
8. 버퍼 오버플로우
댓글 없음:
댓글 쓰기