web2 7

Server-Side Request Forgery (SSRF)

SSRF : Server-Side Request Forgery-> 서버 측 요청 위조-> 공격자가 직접 요청하는 것이 아니라, 서버가 대신 요청하게 만드는 취약점서버가 정확히 뭔지 , API에 대한 정리, 마이크로서비스에 대한 것을 먼저 정리 해봤음 서버에 대해..- 요청을 받고 응답을 돌려주는 컴퓨터, 프로그램보통 웹 서비스를 사용할 때 사용자는 브라우저에 요청을 보냄사용자 브라우저 -> 서버 -> 응답예를 들어서,사용자가 로그인 페이지에 접속하면브라우저는 서버에 요청을 보내고, 서버는 로그인 페이지 html을 응답해줌GET / login-> 이런 요청이 오면 서버가 로그인 페이지 달라는 요청이군 하고, 해당 기능을 실행해서 결과과를 응답으로 돌려줌 보통 웹개발 공부 같은 거 할 때 Flask를 본인..

web2 2026.06.28

docker 사용하기 (run, compose)

맥북으로는 gui리눅스를 쓰기가 굉장히 불편하다,, 속도가 너무 느려서 안쓰는게.,그리고 또 보안 실무에서는 리눅스를 CLI로 많이 쓴다고 해서,, CLI에 익숙해질 겸, 도커에도 익숙해질 겸도커에서 리눅스를 사용해야겠다ㅏㅏ Docker- 컨테이너 기반 가상화 플랫폼으로, 응용 프로그램과 그 종속성을 격리된 환경인 컨테이너로 패키징하여 실행하는 기술컨테이너?- 가상화 기술을 이용하여 애플리케이션과 개발 환경을 격리된 공간에서 실행하는 단위 -> 내 로컬pc안에 격리된 리눅스 실행 공간을 만드는 도구맥북 macOS └─ Docker └─ Ubuntu 컨테이너 └─ Flask / Python / Vim / 웹서버 실행요런식으로 사용되는 것- 이미지 : 컨테이너를 만들기 위한 설계도- 컨..

web2 2026.06.17

CSRF(Cross-Site Request Forgery)

CSRF(Cross-Site Request Forgery)사이트 간 요청 위조- 사용자가 어떤 사이트에 로그인된 상태를 이용해서, 공격자가 사용자의 브라우저로 하여금 원치 않는 요청을 보내게 만드는 공격 csrf의 흐름을 간단하게 살펴보면1. maru 사이트에 로그인함2. 브라우저에 maru사이트 쿠키 저장됨 (ex: session=maru123)3. 이 상태에서 사용자가 공격자 사이트에 접속함4. 공격자 사이트 HTML/JS가 maru사이트로 요청을 발생시킴예를들면,,- - location.href = "https://maru.com/chage?email=ina~- 자동 submit form5. 브라우저는 요청 목적지가 maru.com인 걸 보고 maru.com의 쿠키를 자동 첨부6. maru사이트 서..

web2 2026.06.04

DOM-based XSS

이번에는 DOM-based XSS에 대해 공부해봐야지앞에 웹은 어떻게 동작?? 글 마지막 부분에서 이런 페이지가 있고만약, 정상적인 입력이 있다고 한다면사용자가 아래의 주소로 접속했다면http://maru.com/dom#hello브라우저에서const keyword = location.hash.substring(1); 이부분에 따라#hello를 가져오고 substring(1)에 따라 #도 제거하고document.getElementById("result").innerHTML = keyword;이부분에 따라 id=result인 부분에 hello가 추가되고hello이렇게 DOM이 바뀌면서 화면에는 hello가 출력된다이 예시에서는 그냥 문자열 hello를 출력했기에, 큰문제가 없다근데 만약, 여기에 공격적인..

web2 2026.06.02

웹은 어떻게 동작하나요(HTML,JS,CSS,브라우저의 관계)

웹페이지는 보통 HTML, CSS, JavaScript가 동작하면서 만들어진다- HTML : 웹페이지 구조를 만듦- CSS : 웹페이지 디자인- JavaScript : 웹페이지의 동작 [DOM과 관련된 내용,,,]- 브라우저 : 그 HTML을 DOM Tree로 변환- javascript : 위 DOM Tree를 읽거나 수정하면서 웹페이지의 동작을 만듦 그러니까,, 개발자가- HTML 작성- CSS 작성- JavaScript 작성- 서버에 올리기이렇게 하면사용자 브라우저가- 서버에서 HTML / CSS / JS 파일을 받아오기- HTML로 DOM Tree 만들기- CSS 적용- JavaScript 실행- JavaScript가 DOM을 조작요런 역할을 기반으로 웹이 동작하는데,, 예를들어보면,웹 페이지에 버..

web2 2026.05.31

XSS (cross-site scripting)

클라이언트 사이드 취약점 => 웹 페이지의 이용자를 대상으로 공격할 수 있는 취약점 XSS 공격자가 웹 리소스에 악성 스크립트를 삽입해 이용자의 웹 브라우저에서 해당 스크립트를 실행할 수 있음특정 계정의 세션 정보를 탈취하고 해당 계정으로 임의의 기능 수행 가능XSS 공격은 이용자가 삽입한 내용을 출력하는 기능에서 발생-> 사용자가 입력한 글을 웹페이지가 다시 보여주는 기능에서, 입력값을 그냥 "글자"로만 취급하지 않고 "HTML / JavaScript 코드"로 해석해버리면 xss가 발생 할 수 있다. XSS 예시게시판 댓글 기능이 있을 때)"안녕하세요!"라고 댓글을 입력하면, 서버가 이 내용을 저장했다가 게시글 화면에서 안녕하세요!이렇게 출력해주면, 브라우저에서는 그냥 댓글 글자로 보임근데, 만약에..

web2 2026.05.30

Same Origin Policy (SOP)

브라우저의 메커니즘인 동일 출처 정책 (Same Origin Policy, SOP)에 대해 알아보자 우리가 예를들어 sns에 로그인을 한 상태라면, 해당 브라우저에는 sns에 대한 세션이 저장돼있을 것이다.근데, 만약 이때 악성 사이트에 접속하게 된다면,,? 그리고 접속한 악성 사이트에 sns로의 악의적인 요청이 있다면?-> 브라우저는 특성상 sns의 쿠키와 함께 악의적인 요청을 보낼 것이고, 그렇게 되면 피해가 생길 수 있다.이렇게 브라우저는 악성 페이지 안에 심어진 타 사이트 요청을 실제로 보낼 수 있고, 경우에 따라 로그인 쿠키도 함께 보낼 수 있다.그러면 대상 서버는 인증된 응답을 반환할 수 있는데, 해당 응답을 그냥 읽을 수 있다면, 경우에 따라 큰 피해가 발생 할 수 있다.그래서 이렇게 반환된..

web2 2026.05.16