파일에 저장된 정보의 형태를 다른 것으로 변경하는 것 ex) 아스키코드, 유니코드규격화된 상호작용에 적용되는 약속ex) TCP/IP(네트워크 통신), HTTP(웹 어플리케이션), FTP(파일)서버와 클라이언트의 데이터 교환을 요청과 응답 형식으로 정의한 프로토콜
인터넷을 기반으로 구현된 서비스 중 HTTP를 이용하여 정보를 공유하는 서비스웹 서버 : 정보를 제공하는 주체웹 클라이언트 : 정보를 받는 이용자웹 서버가 제공하는 정보자원고유의 URL 가짐고유의 URL 통해 식별됨웹 문서의 뼈와 살을 담당태그, 속성을 통한 구조화된
: HTTP에서 상태를 유지하기 위해 사용하는 Key-Value 형태의 값서버 ---(클라이언트에게 쿠키 발급)---> 클라이언트서버 <---(서버에 요청 시 쿠키 함께 전송)--- 클라이언트서버는 쿠키(클라이언트의 요청에 포함됨) 통해 클라이언트 구분HTTP 프
쿠키는 브라우저 내부에 보관됨쿠키는 웹 서비스 접속(직/간접적 접근) 시 자동으로 HTTP 요청의 헤더에 포함되어 브라우저에 전달됨악의적으로 클라이언트 권한 이용해 대상 사이트에 HTTP 요청 보내고 HTTP 응답 정보 획득 가능정보 유출 위협\-> 가져온 데이터를 악
: 웹 페이지의 이용자를 대상으로 공격할 수 있는 취약점ex) XSS이 취약점을 통해 세션 및 쿠키 정보 탈취\-> 해당 계정으로 임의의 기능 수행 가능웹 리소스에 악성 스크립트를 삽입\-> 이용자의 웹 브라우저에서 해당 스크립트를 실행할 수 있게 되는 취약점클라이언트
이용자가 입력한 값을 그대로 페이지에 출력하는 경우이용자의 접속 기록을 저장하는 외부에서 접근 가능한 웹 서버에서flag 기능에서 다음과 같은 익스프로잇 코드 입력\-> 접속 기록에 포함된 FLAG 확인 가능전달된 템플릿 변수를 HTML 엔티티코드로 변환해 저장
이용자를 속여서, 의도치 않은 요청에 동의하게 하는 공격임의 이용자의 권한으로 임의 주소에 HTTP 요청을 보낼 수 있는 취약점사이트 간 요청 위조이용자가 자신의 의지와는 무관하게 공격자가 의도한 행위를 특정 웹사이트에 요청하게 만드는 공격공격자는 임의 이용자의 권한으
Database: 데이터가 저장되는 공간DBMS : 데이터베이스를 관리하는 어플리케이션Relational(관계형) : 행과 열의 집합인 테이블 형식으로 데이터를 저장비관계형 : 테이블 형식이 아닌 키-값 (Key-Value) 형태로 값을 저장CREATECREATE DA
RDBMS: 스키마를 정의하고 해당 규격에 맞는 데이터를 2차원 테이블 형태로 저장:복잡:저장해야 하는 데이터가 많아지면 용량의 한계: 이용자의 입력값을 통해 동적으로 쿼리를 생성해 데이터를 저장 -> SQL Injection 문제: SQL을 사용해 데이터를 조회 및
PHP : systemex) system(“cat /etc/passwd”)Node JS : child_process파이썬 : os.system\`\`안에 들어있는 명령어를 실행한 결과로 치환됨중복 사용 불가$ echo \\\`echo theori\\\` theori $
: 파일을 업로드하거나 다운로드 할 때 발생하는 취약점업로드와 다운로드 과정에서 발생하는 취약점으로 구분됨: 공격자의 파일을 웹 서비스의 파일 시스템에 업로드하는 과정에서 발생하는 보안 취약점파일 시스템 상 임의 경로에 원하는 파일을 업로드하거나 악성 확장자를 갖는 파
: 웹 서비스의 요청을 변조하는 취약점웹 서비스의 권한으로 변조된 요청을 보낼 수 있음브라우저가 변조된 요청을 보내는 CSRF와 차이 있음웹 서비스가 보내는 요청을 변조하기 위해서는 요청 내에 이용자의 입력값이 포함돼야이용자가 입력한 URL에 요청을 보내는 경우웹 서비