web 21

XSS(Cross-Site Scripting)란?

웹 애플리케이션 개발자라면 꼭 알아야 하는 보안 취약점 중 하나가 바로 **XSS(Cross-Site Scripting)**입니다. 이 취약점은 사용자 입력을 제대로 검증하지 않아 악성 스크립트가 삽입되고 실행되는 문제로, 사용자 정보 탈취부터 시스템 장악까지 매우 치명적인 보안 위협이 될 수 있습니다.이 글에서는 XSS가 무엇인지, 어떤 방식으로 공격이 이뤄지는지, 그리고 어떻게 방어할 수 있는지를 예제와 함께 자세히 설명하겠습니다.✅ XSS란 무엇인가?**XSS (Cross-Site Scripting)**는 공격자가 웹 페이지에 **악의적인 스크립트(JavaScript)**를 삽입하고, 해당 스크립트가 다른 사용자의 브라우저에서 실행되도록 유도하는 공격입니다.주로 다음과 같은 상황에서 발생합니다:사용..

Web 2025.04.17

OAuth란?(2.0 / 1.0)

현대 웹 서비스에서는 더 이상 로그인 기능을 직접 구현하지 않는 경우가 많습니다. 대신, 구글, 네이버, 카카오 등의 외부 서비스를 통해 로그인 기능을 위임하죠. 이때 사용되는 표준 인증 프로토콜이 바로 OAuth (Open Authorization) 입니다.이번 글에서는 OAuth의 정확한 개념부터, 실제 흐름, 용도, 보안 이슈까지 깊이 있게 파헤쳐 보겠습니다.OAuth란 무엇인가?OAuth는 인증(Authorization)이 아닌 "인가(Access Delegation)"를 위한 프로토콜입니다.즉, 사용자가 자신의 비밀번호를 직접 제공하지 않고도, 타 서비스가 특정 자원(API 등)에 접근할 수 있도록 허가하는 방식입니다.📌 주요 목적: 제3의 애플리케이션이 사용자 자원에 접근할 수 있도록 허용하..

Web 2025.04.17

VPN이란?

1. VPN이란?VPN(가상 사설망, Virtual Private Network)은 공용 네트워크(예: 인터넷)를 통해 안전하게 데이터를 주고받을 수 있도록 해주는 기술입니다. VPN은 사용자의 실제 IP 주소를 숨기고, 데이터를 암호화하여 프라이버시와 보안을 강화하는 역할을 합니다. 2. VPN이 필요한 이유1) 보안 강화공용 Wi-Fi를 사용할 때 VPN을 이용하면 데이터가 암호화되어 해커가 정보를 가로채는 것을 방지할 수 있습니다.2) 개인정보 보호VPN은 사용자의 실제 IP 주소를 숨기고, 가상 IP를 제공하여 웹사이트나 서비스 제공자가 사용자의 위치 및 활동을 추적하지 못하게 합니다.3) 지역 제한 우회Netflix, YouTube, 해외 뉴스 사이트 등 특정 지역에서만 접근 가능한 콘텐츠를 V..

Network 2025.03.20

프록시 서버(Proxy Server)란?

프록시 서버(Proxy Server)는 클라이언트와 인터넷 사이에서 중개 역할을 하는 서버입니다. 사용자는 직접 인터넷에 접속하는 것이 아니라 프록시 서버를 거쳐 요청을 보내고, 프록시 서버가 해당 요청을 대신 처리한 후 응답을 반환합니다. 이 과정에서 보안 강화, 속도 개선, 트래픽 관리 등의 이점을 얻을 수 있습니다.1. 프록시 서버의 종류(1) 포워드 프록시(Forward Proxy)포워드 프록시는 클라이언트의 요청을 외부 서버로 전달하는 역할을 합니다. 주로 기업이나 기관에서 내부 사용자의 인터넷 접속을 관리하거나 제한할 때 사용됩니다.사용 사례:회사에서 특정 웹사이트 차단내부 네트워크 사용자 IP 숨김캐싱을 통해 인터넷 속도 향상(2) 리버스 프록시(Reverse Proxy)리버스 프록시는 클라..

Network 2025.03.20

서버리스(Serverless)란?

1. 서버리스(Serverless)란?서버리스(Serverless)는 클라우드 환경에서 서버를 직접 관리하지 않고도 애플리케이션을 실행할 수 있는 컴퓨팅 모델입니다. 서버 자체가 없는 것은 아니지만, 개발자는 서버 운영 및 관리에 신경 쓰지 않고 오직 애플리케이션의 코드 실행에 집중할 수 있습니다.서버리스는 클라우드 제공업체가 인프라를 자동으로 확장하고 유지보수하는 방식으로 작동하며, 사용한 만큼만 비용을 지불하는 과금 구조를 가집니다.2. 서버리스의 특징2.1 서버 관리 불필요개발자는 서버 프로비저닝, 운영 체제 관리, 확장 및 유지보수 등의 작업을 할 필요가 없습니다.클라우드 서비스 제공자가 모든 서버 운영을 자동으로 처리합니다.2.2 이벤트 기반 실행서버리스 애플리케이션은 특정 이벤트(예: HTTP..

Network 2025.03.20

네이버(www.naver.com)을 검색하면 어떻게 동작할까?

네이버(www.naver.com)에 접속할 때 인터넷 브라우저에서 일어나는 과정은 여러 단계로 나눌 수 있습니다.아래는 사용자가 브라우저에 www.naver.com을 입력하고 네이버 홈페이지가 표시될 때까지의 전체 과정입니다.1. URL 입력 및 브라우저 처리사용자가 인터넷 브라우저 주소창에 www.naver.com을 입력하고 Enter 키를 누르면, 브라우저는 다음 작업을 수행합니다.URL 분석브라우저는 사용자가 입력한 문자열을 분석하여 http:// 또는 https:// 프로토콜을 자동으로 붙입니다.예를 들어, 사용자가 www.naver.com을 입력하면 브라우저는 이를 https://www.naver.com으로 변환할 수 있습니다.프로토콜이 명시되지 않은 경우 기본적으로 https가 사용됩니다.HS..

Web 2025.03.20

클라우드 컴퓨팅이란?

클라우드 컴퓨팅(Cloud Computing)은 인터넷을 통해 컴퓨팅 자원(서버, 스토리지, 데이터베이스, 네트워킹, 소프트웨어 등)을 제공하는 기술입니다. 전통적인 온프레미스(On-Premise) 방식과 달리, 사용자는 물리적 인프라를 직접 구축하지 않고도 필요한 컴퓨팅 자원을 이용할 수 있습니다.1. 클라우드 컴퓨팅의 주요 특징1) 온디맨드(Self-Service & On-Demand)사용자는 필요할 때 즉시 자원을 할당하고 사용할 수 있으며, 물리적 장비 없이도 몇 번의 클릭만으로 서버를 생성할 수 있습니다.2) 확장성(Scalability)사용자는 필요에 따라 자원을 유연하게 확장하거나 축소할 수 있어, 급격한 트래픽 증가나 감소에도 효과적으로 대응할 수 있습니다.3) 비용 절감(Cost Effi..

Network 2025.03.20

웹 스토리지(Web Storage) 란?

1. 웹 스토리지(Web Storage)란?웹 스토리지는 웹 브라우저가 데이터를 클라이언트 측에서 저장할 수 있도록 제공하는 저장소 기술입니다. HTTP 요청 없이 데이터를 유지할 수 있어, 성능 향상과 사용자 경험 개선에 기여합니다.웹 스토리지는 크게 두 가지 방식으로 나뉩니다:로컬 스토리지(Local Storage): 영구적으로 데이터를 저장 (사용자가 직접 삭제하거나 브라우저 설정을 초기화하지 않는 이상 삭제되지 않음)세션 스토리지(Session Storage): 브라우저 세션이 유지되는 동안만 데이터를 저장 (탭을 닫으면 자동 삭제됨)2. 웹 스토리지의 종류(1) 로컬 스토리지(Local Storage)로컬 스토리지는 사용자가 직접 삭제하거나 브라우저 설정을 초기화하지 않는 한 영구적으로 데이터를..

Web 2025.02.12

브라우저(Browser) 동작 방법

웹 서핑을 하다 보면 여러 URL을 통해 다양한 사이트를 방문하게 됩니다. 그렇다면 우리가 브라우저 주소창에 URL을 입력했을 때, 어떤 과정을 거쳐 원하는 페이지가 화면에 표시될까요?이는 웹의 기본적인 개념이지만, 막상 설명하려면 "렌더링", "파싱" 등 복잡한 용어들이 등장해 난감할 수 있습니다. 크롬, 파이어폭스, 사파리와 같은 오픈소스 브라우저를 기준으로, 브라우저가 동작하는 과정을 알아보겠습니다.브라우저의 주요 기능브라우저는 사용자가 요청한 자원을 서버에서 받아와 화면에 표시합니다. 이 자원은 HTML 문서, PDF, 이미지 등 다양한 형태일 수 있으며, 자원의 위치는 URI(Uniform Resource Identifier)에 의해 결정됩니다.브라우저는 HTML과 CSS 명세를 따라 HTML ..

Web 2025.01.14

CSRF(Cross-Site Request Forgery)

1. CSRF란 무엇인가?CSRF(Cross-Site Request Forgery)는 웹 보안 공격의 한 유형으로, 공격자가 인증된 사용자의 권한을 도용하여 사용자의 의지와는 무관하게 특정 요청을 서버로 보내도록 유도하는 방식입니다. 이를 통해 공격자는 피해자의 계정으로 악의적인 행동(데이터 삭제, 권한 변경, 거래 요청 등)을 수행할 수 있습니다.예시)사용자가 A 사이트에 로그인하여 인증 쿠키를 보유하고 있습니다.공격자는 악성 웹 페이지를 생성하여 사용자가 이 페이지를 방문하도록 유도합니다.사용자가 페이지를 방문하면, 공격자의 페이지에서 A 사이트로 악의적인 요청을 보냅니다.브라우저는 사용자가 이미 인증된 세션을 보유하고 있기 때문에, 해당 요청은 인증된 사용자로 간주되어 처리됩니다.2. CSRF의 작..

Network 2025.01.10