728x90

IP 19

웹 공격 기술(4) - 기타 공격 방식

* 해당 게시글은 을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다. 패스워드 크래킹(Password Cracking) 패스워드를 논리적으로 이끌어내서 인증을 돌파하는 공격 패스워드를 추론하여 찾아낸다는 의미 웹 애플리케이션, FTP, SSH 등에 쓰이는 공격 패스워드 크래킹 진행 방법 네트워크 경유로 패스워드 시행 암호화된 패스워드를 해독 공격자가 시스템에 침입하는 방법 등을 통해 암호화나 해시화된 패스워드의 데이터를 취득한 상황 사례1 - 네트워크 경유로 패스워드 시행 무차별 대입 공격(Brute-force Attack) 비밀 번호 시스템에서 취할 수 있는 모든 패스워드 후보를 대입해 패스워드를 찾는 공격 모든 후보를 대입하므로 반드시 패스워드를 해독할 수 있음 후보가 아주 많은 경우(비밀..

웹 공격 기술(3) - 세션 관리 미비로 인한 취약성

* 해당 게시글은 을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다. 세션 하이잭(Session Hijack) 공격자가 유저의 세션 ID를 입수해서 악용하는 공격 방식 공격자가 유저로 위장해 유저의 권한을 악용 공격자가 세션 ID를 입수하는 방법 부적절한 생성 방법에 의한 세션 ID 추측 도청이나 XSS 등에 의한 세션 ID 도용 세션 고정 공격에 의한 세션 ID 강제 사례 - 인증 기능을 악용한 세션 하이잭 웹 애플리케이션에 의해 인증된 유저는 세션 ID(SID)를 유저의 브라우저의 쿠키에 갖고 있음 웹 사이트에 XSS의 취약성이 있는 경우, 공격자는 document.cookie를 공격자에게 송신하는 js를 사용한 함정 설치 유저가 함정에 걸리면 공격자는 유저의 SID를 포함한 쿠키 입수 공..

웹 공격 기술(2) - 웹 서버 설정/설계 미비로 인한 취약성

* 해당 게시글은 을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다. 강제 브라우징(Forced Browsing) 웹 서버의 공개 디렉토리에 있는 파일 중, 공개 의도가 없는 파일이 열람되게 하는 취약성 영향 고객 정보 등 중요 정보 누설 본래 액세스 권한이 있는 사용자에게만 표시하는 정보 누설 어디에서도 링크되지 않은 파일 누설 공개하고 싶지 않은 파일의 URL을 숨기는 보안 대책의 경우, 해당 URL을 알게 되면 파일 열람 가능 강제 브라우징이 발생 가능한 경우 디렉토리 내용 일람 디렉토리 이름을 지정함으로써 파일 목록이 표시되고 파일명 확인 가능 추측하기 쉬운 파일명, 디렉토리명 백업 파일 편집 프로그램 등에서 자동 생성하는 백업 파일은 실행 권한이 없어 소스 코드가 표시되는 경우 존재 ..

웹 공격 기술(1) - 출력 값의 이스케이프 미비에 의한 공격

* 해당 게시글은 을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다. 웹 보안 공격 개요 HTTP 자체는 보안상의 문제가 일어날 정도로 복잡한 프로토콜이 아니기에 HTTP가 공격 대상이 되는 일은 거의 없음 공격 대상은 HTTP를 사용하는 서버와 클라이언트, 서버 상에서 동작하는 웹 애플리케이션 등의 리소스가 대부분 HTTP는 구조가 단순한 프로토콜이므로 장점도 있지만, 보안에 관한 단점 또한 존재 SSH라는 프로토콜에는 프로토콜 수준에서 인증, 세션 관리 등의 기능을 제공하지만 HTTP는 관련 기능 부재 그래서 HTTP 서버를 이용한 웹 서비스를 개발할 때, 관련 기능을 스스로 구현해야 함 그러다보니 보안상 허점이 있는 상태에서 가동되는 웹 애플리케이션 존재 리퀘스트에 의한 보안상 허점 HT..

HTTP에 기능 추가한 프로토콜

* 해당 게시글은 을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다. https://ko.javascript.info/websocket (웹소켓 관련해서 공부하고 싶으면 위의 링크 다시 보기) 웹이 발달하면서 기존 HTTP만의 기능으로는 웹 사용자들의 수요를 충족할 수 없어 HTTP에 기능을 추가한 새로운 프로토콜 몇 가지가 탄생하게 됨 SPDY 구글이 2010년에 발표한 프로토콜 HTTP의 병목 현상을 해결하기 위해 고안되었고, SPDY의 목표는 웹페이지 로딩 시간을 50% 단축하는 것 HTTP의 병목 현상 페이스북이나 트위터 등의 SNS는 수많은 사용자가 올린 대량의 정보를 실시간으로 확인해야 함 사용자에 의해 갱신된 정보를 사용자의 화면에 바로 반영하는 것은 HTTP의 사양에 의해 어려움..

액세스 인증 방식

* 해당 게시글은 을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다. BASIC 인증 HTTP/1.0에 구현된 기본(basic) 인증 방식으로 현재에도 일부 사용됨 웹 서버와 클라이언트 사이에서 이루어지는 인증 BASIC 인증 과정 클라이언트가 BASIC 인증이 필요한 리소스에 리퀘스트 송신 서버가 상태 코드 401로 응답→인증 필요하단 의미 WWW-Authenticate 헤더 필드에 인증 방식(BASIC)과 Request-URI의 보호 공간을 식별하기 위한 문자열(realm) 포함 브라우저에 username, password 입력하라는 창이 뜸 클라이언트가 유저 ID와 패스워드를 Base64 형식으로 인코드한 것을 포함하여 동일한 리소스에 리퀘스트 재송신 유저 ID와 패스워드를 콜론(:)으로..

HTTPS 개요

* 해당 게시글은 을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다. HTTP의 약점 1. 평문이기 때문에 도청 가능 HTTP 자신을 암호화하는 기능의 부재→평문으로 HTTP 메시지 전송 TCP/IP 구조의 통신 내용은 전부 통신 경로의 도중에 엿볼 수 있음 암호화된 통신의 경우에도, 내용을 해석할 순 없으나 전송 패킷 자체는 도청이 가능 네트워크 상의 패킷을 수집하기만 하면 도청 가능 패킷 캡처 스니퍼 암호화 방법 통신 암호화 암호화 기능이 없는 HTTP에 SSL이나 TLS 등의 프로토콜을 조합해 HTTP의 통신 내용 암호화 SSL 등을 이용해 안전한 통신로 확립→해당 통신로로 HTTP 통신 진행 콘텐츠 암호화 HTTP를 사용해서 운반하는 내용(콘텐츠)만 암호화 클라이언트에서 HTTP 메시지..

HTTP 헤더(7) - 기타 헤더 필드

* 해당 게시글은 을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다. X-Frame-Option 다른 웹사이트의 프레임에서 표시를 제어하는 HTTP 리스폰스 헤더 클락 재킹이라는 공격을 막는 목적 DENY는 거부, SAMEORIGIN은 특정 조건에서 허가 헤더 필드를 지원하는 브라우저는 나름 최신 버전이지만, 모든 웹 서버에서 설정하는 것이 바람직 X-XSS-Protection 브라우저의 XSS 보호 기능을 제어하는 HTTP 리스폰스 헤더 0은 보호 필터 무효, 1은 필터를 유효화 DNT 개인 정보 수집 거부 의사를 나타내는 HTTP 리퀘스트 헤더 0은 트래킹 동의, 1은 트래킹 거부(DNT를 켜는 느낌) 웹 서버에서 DNT 지원해야 해당 헤더 필드 유효 P3P 웹 사이트 상의 프라이버시 정책..

HTTP 헤더(6) - 쿠키 관련 헤더 필드

* 해당 게시글은 을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다. 쿠키 관련 헤더 필드는 HTTP/1.1의 사양인 RFC2616에 포함된 것은 아니지만 웹사이트에서 널리 사용됨 Set-Cookie Set-Cookie: key=value; expires=Tue, 05 Jul 2011 07:36:21 GMT; path=/; domain=.hack.jp 응답 측에서 쿠키 송신 위해 사용하는 헤더 필드 서버가 클라이언트에 보낼 쿠키에 필요한 데이터 쌍(key=value), 속성 전달 브라우저는 해당 정보를 통해 쿠키를 만들어 로컬에 저장 데이터 쌍과 속성은 “; ”(세미콜론+공백)으로 구분 Set-Cookie 헤더 필드에는 하나의 쿠키(데이터 쌍)만이 저장되고, 나머지 내용은 Set-Cookie ..

HTTP 헤더(5) - 엔티티 헤더 필드

* 해당 게시글은 을 읽고 정리하면서 공부하기 위해 메모하듯 작성하는 글입니다. Allow Allow: GET, HEAD 리퀘스트 URI에 지정된 리소스가 제공하는 메소드 전달 서버가 받을 수 없는 메소드를 수신한 경우→405 Method Not Allowed 리스폰스와 함께 수신 가능한 메소드 정보 적힌 Allow 헤더 필드 전달 Content-Encoding Content-Encoding: gzip 서버가 엔티티 바디에 대해 적용한 콘텐츠 코딩 형식 전달 사용되는 콘텐츠 코딩 형식 gzip compress deflate identity Content-Language Content-Language: en 엔티티 바디에 사용된 자연어(한국어나 영어 등) 정보 전달 Content-Length Content..

728x90