2.
01 OWASP 란 ?
02 A1 – 인젝션
03 A2 – 인증 및 세션 관리 취약점
04 A3 – 크로스 사이트 스크립팅
05 A4 – 취약한 직접 객체 참조
06 A5 – 보안 설정 오류
07 A6 – 민감 데이터 노출
08 A7 – 기능 수준의 접근 통제 누락
09 A8 – 크로스 사이트 요청 변조 (CSRF)
10 A9 – 알려진 취약점이 있는 컴포넌트 사용
11 A10 – 검증되지 않은 리다이렉트 및 포워드
12 웹 보안 프로젝트 관련 참조 사이트
Contents
3.
1 >
>
01 OWASP 란 ?
OWASP (The Open Web Application Security Project)
국제웹보안표준기구
직역하면 오픈소스 웹 어플리케이션 보안 프로젝트
주로 웹에 관한 정보노출, 악성 파일 및 스크립트, 보안 취약점 등을 연구
10대 웹 어플리케이션 취약점 (OWASP Top 10)을 발표
융합서비스보안학과 정다운OWASP Top 10 - 2013
4.
2 >
>
02 A1 – 인젝션
인젝션 (Injection)
명령어나 질의문의 일부분으로서 인터프리터로 보내질 때 발생
예상하지 못하는 명령을 실행시키거나, 적절한 권한 없이 데이터에 접근하도록
인터프리터를 속이는 공격자의 악의적인 공격
대표적인 예 (SQL Injection)
MEMBER
ID PW
admin admin
아이디 ’ or 1=1 #
패스워드 love
정상 : SELECT ID, PW FROM MEMBER ID = ‘admin’ AND PW = ‘admin’
공격 : SELECT ID, PW FROM MEMBER ID = ‘’OR 1=1 # PW = ‘love’
※ 주석 : MYSQL (#), MS-SQL, ORACLE (--)
참
융합서비스보안학과 정다운OWASP Top 10 - 2013
5.
3 >
>
02 A1 – 인젝션 (Cont.)
영향
데이터베이스에 저장된 데이터 값을 조회, 열람, 삭제, 추가 가능
인증 절차를 비정상적으로 우회 가능
데이터베이스에 활용되는 시스템 명령어를 활용하여 데이터베이스 시스템 조작 가능
대응방안
사용자로부터 전달되는 파라미터 중 에러를 유발할 수 있는 특수문자,
DB 쿼리문에 사용되는 모든 파라미터 필터링 필터링 할 특수 문자 필터링 할 특수 구문
' union
" select
-- insert
/*, */ drop
( update
) and
> or
< If
= Join
융합서비스보안학과 정다운OWASP Top 10 - 2013
6.
4 >
>
03 A2 – 인증 및 세션 관리 취약점
인증 및 세션 관리 취약점
데이터베이스에 저장된 데이터 값을 조회, 열람, 삭제, 추가 가능
인증 절차를 비정상적으로 우회 가능
데이터베이스에 활용되는 시스템 명령어를 활용하여 데이터베이스 시스템 조작 가능
대표적인 예
세션이 암호 되지 않았기 때문에 쿠키 전용 툴, 프록시 툴을 사용해
로그인한 사용자의 쿠키 값을 추출 후 그 값을 그대로 재입력 시 다른 사용자로 로그인 가능
이는 XSS, CSRF 공격 등으로 확장될 가능성과 사용자의 권한을 획득
융합서비스보안학과 정다운OWASP Top 10 - 2013
7.
5 >
>
03 A2 – 인증 및 세션 관리 취약점 (Cont.)
영향
이러한 결함으로 일부 또는 모든 계정이 공격 당할 수 있음
공격이 성공하면, 공격자는 피해자가 할 수 있는 모든 것을 할 수 있음
대응방안
취약한 인증과 세션을 근본적으로 막기 위해서는
소스코드에서 인증 시 마다 동일한 세션 ID가 발급되거나
세션 만료 시간을 너무 길게 설정하지 않고,
세션 ID는 로그인 시 마다 추측할 수 없는 세션 ID나 토큰으로 발급하거나
프록시 툴로 인해 넘어가는 값이 보이지 않도록 하고 세션 타임아웃 설정을 통해
일정시간 동안 움직임이 없을 경우 자동 로그아웃 되도록 구현
융합서비스보안학과 정다운OWASP Top 10 - 2013
8.
6 >
>
04 A3 – 크로스 사이트 스크립팅 (XSS)
크로스 사이트 스크립팅 (XSS)
Cross Site Scripting 의 약자로 CSS와 구분하기 위해 XSS라고 표기
공격자가 웹 페이지에 악성 스크립트(HTML, Javascript 등)를 삽입할 수 있는 취약점
사용자로부터 입력 받은 값을 제대로 검사하지 않고 사용할 경우 나타남
주로 여러 사용자가 보는 게시판에 활용되며 쿠키, 세션 등 사용자의 정보 탈취
융합서비스보안학과 정다운OWASP Top 10 - 2013
9.
7 >
>
04 A3 – 크로스 사이트 스크립팅 (XSS) (Cont.)
대표적인 예 (게시판을 통한 다른 사용자의 정보 탈취)
융합서비스보안학과 정다운OWASP Top 10 - 2013
10.
8 >
>
04 A3 – 크로스 사이트 스크립팅 (XSS) (Cont.)
대표적인 예 (게시판을 통한 다른 사용자의 정보 탈취)
융합서비스보안학과 정다운OWASP Top 10 - 2013
11.
9 >
>
04 A3 – 크로스 사이트 스크립팅 (XSS) (Cont.)
대표적인 예 (게시판을 통한 다른 사용자의 정보 탈취)
융합서비스보안학과 정다운OWASP Top 10 - 2013
12.
10 >
>
04 A3 – 크로스 사이트 스크립팅 (XSS) (Cont.)
대표적인 예 (게시판을 통한 다른 사용자의 정보 탈취)
융합서비스보안학과 정다운OWASP Top 10 - 2013
13.
11 >
>
04 A3 – 크로스 사이트 스크립팅 (XSS) (Cont.)
대표적인 예 (게시판을 통한 다른 사용자의 정보 탈취)
융합서비스보안학과 정다운OWASP Top 10 - 2013
14.
12 >
>
04 A3 – 크로스 사이트 스크립팅 (XSS) (Cont.)
대표적인 예 (게시판을 통한 다른 사용자의 정보 탈취)
융합서비스보안학과 정다운OWASP Top 10 - 2013
15.
13 >
>
04 A3 – 크로스 사이트 스크립팅 (XSS) (Cont.)
대표적인 예 (게시판을 통한 다른 사용자의 정보 탈취)
융합서비스보안학과 정다운OWASP Top 10 - 2013
16.
>
>
04 A3 – 크로스 사이트 스크립팅 (XSS) (Cont.)
영향
이러한 결함으로 일부 또는 모든 계정이 공격 당할 수 있음
공격이 성공하면, 공격자는 피해자가 할 수 있는 모든 것을 할 수 있음
또, 스크립트를 통해 악성코드에 감염될 수 있음
대응방안
게시판 사용자 입력 값 검증
쿠키 값 암호화
악의적인 공격이 일어날 수 있는 입력 값의 적절한 치환으로 스크립트 실행 차단 코딩
14
입력 값 수정 값(ASCII) 입력 값 수정 값(ASCII)
< < ) )
> > # #
( ( & &
스크립트를 브라우저에서 일반 문자로 인식하고 실행되지 않음
융합서비스보안학과 정다운OWASP Top 10 - 2013
17.
>
>
05 A4 – 취약한 직접 객체 참조
취약한 직접 객체 참조
직접 객체 참조는 개발자가 파일, 디렉토리, 데이터베이스 키와 같은
내부 구현 객체를 참조하는 것을 노출시킬 때 발생
접근 통제를 통한 확인이나 다른 보호수단이 없다면,
공격자는 노출된 참조를 조작하여 허가 받지 않은 데이터에 접근
대표적인 예 (디렉토리 리스팅, 파라미터 변조)
15융합서비스보안학과 정다운OWASP Top 10 - 2013
18.
>
>
05 A4 – 취약한 직접 객체 참조
영향
이러한 결함은 파라미터에 의해 참조되는 모든 데이터를 침해할 수 있음
구체적으로 설명하면 인자 값들을 조작한 결과 상대 경로를 통하여
웹 서버 파일 경로 수집, 웹 서버의 파일 다운로드를 통해 파밍에 이용될 수 있음
권한이 없는 사용자도 수정 권한 등을 얻을 수 있음
대응방안
허가되지 않은 사용자가 디렉토리를 볼 수 없게 웹 서버 설정 변경 (IIS, Linux 등)
신뢰되지 않은 곳으로부터 직접적인 객체 참조를 사용하는 경우
요청된 객체에 대해 사용자가 권한이 있는지 확인하는 접근 통제를 포함
웹 서버와 파일 다운로드 웹 애플리케이션을 담당하는 서버를 물리적으로 분리
16융합서비스보안학과 정다운OWASP Top 10 - 2013
19.
>
>
06 A5 – 보안 설정 오류
보안 설정 오류
훌륭한 보안은 애플리케이션, 프레임워크, 애플리케이션 서버, 웹 서버,
데이터베이스 서버 및 플랫폼에 대해 보안 설정이 정의되고 적용되어 있음
기본으로 제공되는 값은 종종 안전하지 않기 때문에
보안 설정은 정의, 구현 및 유지되어야 함
또한 소프트웨어는 최신의 상태로 유지
대표적인 예 (게시판 수정 권한)
17
접근 권한 코딩이 적용 되지 않아
인증되지 않은 사용자도
게시물을 수정할 수 있음
융합서비스보안학과 정다운OWASP Top 10 - 2013
20.
>
>
06 A5 – 보안 설정 오류 (Cont.)
영향
어떤 결함은 공격자에게 특정 시스템 데이터나 기능에 대한 무단 접근 권한을 주게 됨
이러한 결함으로 때로는 시스템이 완전히 해킹될 수 있음
대응방안
운영체제, 웹/앱 서버, DBMS, 코드 라이브러리들의 소프트웨어 보안 업데이트
또는 보안 위협이 생기지 않도록 구성
18융합서비스보안학과 정다운OWASP Top 10 - 2013
21.
>
>
07 A6 – 민감 데이터 노출
민감 데이터 노출
서버와 클라이언트간 통신 시 암호화 하여 전송을 하지 않아
민감한 정보(신용카드번호, 여권번호, 주민등록번호 등)가 평문으로 전송되는 등
민감한 정보가 노출되는 취약점
대표적인 예 (민감한 데이터 평문 전송)
19
민감한 정보인 아이디와 암호가 평문으로 전송 되어
프록시 툴(Burp Suite)로 열람 시 그대로 노출
이를 통해 사용자의 권한을 얻어 정보의 조회, 수정, 삭제 등
개인정보 유출로 인한 2차 피해가 발생할 수 있음
융합서비스보안학과 정다운OWASP Top 10 - 2013
22.
>
>
07 A6 – 민감 데이터 노출 (Cont.)
영향
공격자들은 암호문을 직접 풀지는 않음
대신 키를 훔치거나 중간 공격을 하기도 하고, 서버에 저장된 평문으로 된 정보나
사용자의 브라우저에서 송수신 중인 정보를 훔침
이러한 정보는 일반적으로 건강 기록이나 인증 데이터,
신용 카드 등의 민감한 내용을 포함하고 있기 때문에 심각한 피해가 초래될 수 있음
대응방안
민감한 정보들이 파라미터 값으로 넘어갈 때 평문이 아닌 암호화되어 전송하게 함
오래되었거나 취약한 암호 알고리즘 사용 금지
웹 상에서의 전송 정보를 제한하여 불필요한 비밀번호, 주민등록번호,
계좌정보 와 같은 중요 정보의 전송을 최소화
20융합서비스보안학과 정다운OWASP Top 10 - 2013
23.
>
>
08 A7 – 기능 수준 접근 통제 누락
기능 수준 접근 통제 누락
대부분의 웹 애플리케이션은 UI에 해당 기능을 보이게 하기 전에
기능 수준의 접근권한을 확인
또, 애플리케이션은 각 기능에 접근하는 서버에 동일한 접근통제 검사를 수행
요청에 대해 적절히 확인하지 않을 경우 공격자는 적절한 권한 없이
기능에 접근하기 위한 요청을 위조할 수 있음
대표적인 예 (허가되지 않은 사용자의 게시물 작성, 삭제)
21융합서비스보안학과 정다운OWASP Top 10 - 2013
24.
>
>
08 A7 – 기능 수준 접근 통제 누락 (Cont.)
영향
공격자는 최고관리자 기능(Administrative functions)이 주요 공격 목표
관리자를 사칭하여 글을 등록하거나
다른 사용자의 글을 수정하고 결제하는 등 금전적인 피해가 발생할 수 있음
상대 경로로 접근하여 서버 측의 중요 파일을 다운로드 할 수 있음
대응방안
명백히 허가된 특정 역할만 접근할 수 있도록 코딩 및 설정
22융합서비스보안학과 정다운OWASP Top 10 - 2013
25.
>
>
09 A8 – 크로스 사이트 요청 변조 (CSRF)
크로스 사이트 요청 변조 (CSRF)
Cross Site Request forgery의 약자
희생자가 자신의 의지와는 무관하게
해커가 의도한 행위(수정, 삭제, 생성 등)을 특정 웹 사이트에 요청하는 공격
크로스 사이트 스크립트(XSS)와 Script를 이용한다는 점은 같지만
XSS는 악성 스크립트가 사용자 클라이언트에서 일어나고,
CSRF는 인증 완료된 다른 사람의 권한으로 서버에 부정적인 요청을 함
희생자가 웹사이트에 CSRF공격 코드가 삽입된 페이지를 열면
이후에는 사용자의 행동과 관계없이 희생자의 웹 브라우저와
공격 대상 웹사이트 간의 상호작용이 이루어 짐
23융합서비스보안학과 정다운OWASP Top 10 - 2013
26.
>
>
09 A8 – 크로스 사이트 요청 변조 (CSRF) (Cont.)
대표적인 예
24
게시판의 소스보기를 통해 넘어가는 파라미터 값과 저장되는 곳을 확인
융합서비스보안학과 정다운OWASP Top 10 - 2013
27.
>
>
09 A8 – 크로스 사이트 요청 변조 (CSRF) (Cont.)
대표적인 예
25
공격자가 올린 게시글을 읽었을 때 피해자의 정보가 수정될 수 있도록 스크립트 작성
융합서비스보안학과 정다운OWASP Top 10 - 2013
28.
융합서비스보안학과 정다운OWASP Top 10 - 2013 >
>
09 A8 – 크로스 사이트 요청 변조 (CSRF) (Cont.)
대표적인 예
26
공격자가 올린 게시글을 읽었을 때 피해자의 정보가 수정됨
만약 관리자가 이 게시글을 보게 되면 관리자의 비밀번호가 공격자가 설정해놓은
비밀번호로 변경이 되고 공격자는 이를 가지고 악의적인 행동을 할 수 있음
29.
>
>
09 A8 – 크로스 사이트 요청 변조 (CSRF) (Cont.)
영향
사용자가 공격자의 글을 읽는 순간 공격자는 사용자의 정보를 수정, 삭제, 변조 가능
또는, 자동 글쓰기 혹은 물품 구매 등 금전적인 피해가 가능
대응방안
XSS와 비슷한 방안으로, 스크립트 구문의 적절한 치환으로 코딩
중요한 정보를 처리하는(결제 등) 과정에서 반드시 사용자를 재인증
27융합서비스보안학과 정다운OWASP Top 10 - 2013
30.
>
>
10 A9 – 알려진 취약점이 있는 컴포넌트 사용
알려진 취약점이 있는 컴포넌트 사용
간단히 말하자면 취약점이 발견된 이전 버전을 계속 사용하고 있는 것으로
"최신 버전 업데이트 미흡" 이라고 말할 수 있음
일부 프로그램의 경우 자체적으로 업데이트를 권고하고
또한 업데이트를 하는 것이 쉽지만, 현재 운영중인 대형 서버와 같이
실시간으로 업데이트를 하기 어려운 경우에 자주 발생하기 쉬운 취약점
대표적인 예
28
다음 팟플레이어에
임의코드 실행 취약점이 발생,
이에 대한 업데이트 공시
이때 바로 업데이트 하지 않으면
해킹의 대상이 될 수 있음
융합서비스보안학과 정다운OWASP Top 10 - 2013
31.
>
>
10 A9 – 알려진 취약점이 있는 컴포넌트 사용 (Cont.)
영향
취약점이 있는 컴포넌트를 사용하면 인젝션,
접근통제 우회, XSS 등을 포함한 모든 종류의 취약점들이 가능
공격자가 시스템을 완전하게 장악하고 정보를 탈취할 수 있을 정도까지도 가능
대응방안
본인이 만들지 않는 컴포넌트를 사용하지 않는 것이 방법이지만,
현실적으로는 사용중인 것들에 대한 최신 보안 업데이트가 중요
29융합서비스보안학과 정다운OWASP Top 10 - 2013
32.
>
>
11 A10 – 검증되지 않은 리다이렉트 및 포워드
검증되지 않은 리다이렉트(넘겨 주기, 다시 보냄) 및 포워드(발송)
웹 애플리케이션은 종종 사용자들을 다른 페이지로 리다이렉트 하거나 포워드하고,
대상 페이지를 결정하기 위해 신뢰할 수 없는 데이터를 사용
적절한 검증 절차가 없으면 공격자는 피해자를 피싱 또는 악성코드 사이트로
리다이렉트 하거나 승인되지 않은 페이지에 접근하도록 전달
대표적인 예 (Click Jacking)
30융합서비스보안학과 정다운OWASP Top 10 - 2013
33.
>
>
11 A10 – 검증되지 않은 리다이렉트 및 포워드
대표적인 예 (Click Jacking)
31융합서비스보안학과 정다운OWASP Top 10 - 2013
34.
>
>
11 A10 – 검증되지 않은 리다이렉트 및 포워드 (Cont.)
영향
리다이렉트는 사용자로 하여금 악성프로그램을 설치하거나
패스워드와 같은 민감한 정보들을 노출하도록 유도
안전한지 않은 포워드는 접근 통제를 우회할 수도 있음
대응방안
목적지를 조작할 수 있는 사용자 파라미터를 포함하지 말아야 함
파라미터 값이 허용된 목적지 요소들만 포함하고 있는지 확인
사이트 전환 시 사용자가 기존 사이트를 벗어나려 할 때 경고창을 띄어 알려줌
실제 URL 또는 그 URL의 일부 보다는 맵핑 된 값을 목적 파라미터로 사용하고,
서버측 코드에서 그 맵핑 값을 목표 URL로 변환
32융합서비스보안학과 정다운OWASP Top 10 - 2013
35.
>
>
12 웹 보안 프로젝트 관련 참조 사이트
OWASP
http://www.owasp.org/
국정원 8대 취약점
2005년 국가사이버안전센터(NCSC)에서 국내 각 기관에서 홈
페이지 해킹에 많이 악용되었던 보안취약점 8종을 선정하고 발표
WASC (Web Application Security Consortium)
http://www.webappsec.org/
33융합서비스보안학과 정다운OWASP Top 10 - 2013
Parece que tem um bloqueador de anúncios ativo. Ao listar o SlideShare no seu bloqueador de anúncios, está a apoiar a nossa comunidade de criadores de conteúdo.
Odeia anúncios?
Atualizámos a nossa política de privacidade.
Atualizámos a nossa política de privacidade de modo a estarmos em conformidade com os regulamentos de privacidade em constante mutação a nível mundial e para lhe fornecer uma visão sobre as formas limitadas de utilização dos seus dados.
Pode ler os detalhes abaixo. Ao aceitar, está a concordar com a política de privacidade atualizada.