빡공팟 121

[빡공팟 5기] W4 : Web Hacking 로드맵 - STAGE 3 - XSS

ClientSide : XSS(Cross Site Scripting) ClientSide 취약점은 웹 페이지 이용자를 대상으로 공격할 수 있는 취약점이다. 해당 종류의 취약점을 통해 이용자 식별을 위한 쿠키 및 세션 정보를 탈취해 해당 계정으로 임의의 기능을 수행할 수 있다. Cross Site Scripting 의 약어가 XSS 인 이유는? CSS 로 해도 되는데 스타일시트를 정의하는 언어인 CSS 와 중복되므로 XSS 로 명명되었다. XSS(Cross Site Scripting) 은 어떤 것일까? 공격자가 웹 리소스에 악성 스크립트를 삽입하여 이용자의 웹 브라우저에서 해당 스크립트를 실행하면서 발생한다. 공격자를 이를 통해 특정 계정의 세션 정보를 탈취하고 해당 계정으로 임의의 기능을 수행한다. 해당..

TeamH4C 2022.10.14

[빡공팟 5기] W4 : Web Hacking 로드맵 - STAGE 2 - 2

Background : Cookie & Session 웹 서버는 어떻게 많은 클라이언트들을 구별하고 서비스를 제공하는것일까? HTTP 프로토콜로 웹 서버와 통신할 때 웹 서버에게 명령을 내리기 위해 GET, POST 등과 같은 메소드와 자원의 위치를 가리키는 URL 등이 포함되어 있다. 헤더를 통해서 웹 서버에게 요청을 보내고 웹 서버는 헤더를 읽고 결과 값을 클라이언트에게 반환한다. 이때, 헤더는 클라이언트의 정보와 요청 내용을 구체화하는 데이터가 포함되어 있다. -> 클라이언트의 인증 정보 또한 포함 가능함. 클라이언트의 IP 주소와 User-Agent 는 매번 변경될 수 있는 고유하지 않은 정보이다. 또한, HTTP 프로토콜의 Coneectionless, Stateless 특징 때문에 웹 서버는 클..

TeamH4C 2022.10.13

[빡공팟 5기] W4 : Web Hacking 로드맵 - STAGE 2 - 1

Mitigation : Same Origin Policy 쿠키에는 인증 상태를 나타내는 민감한 정보가 보관되며, 브라우저 내부에 저장된다. 브라우저가 웹 서비스에 접속할 때 브라우저는 자동으로 쿠키를 헤더에 포함시켜 요청한다. 이용자가 악의적인 페이지에 접속했을 때, 페이지가 자바스크립트를 사용해 이용자의 SNS 웹 서비스로 요청을 보낸다면 로그인 된 이용자의 SNS 응답을 받을 것이다. 그렇게 된다면 마음대로 페이지 접속자의 SNS 에 글을 쓰고, 삭제하고, 읽는 것이 가능해진다. 이와 같은 문제를 방지하기 위해서 Same Origin Policy(SOP), 동일 출처 정책 보안 메커니즘이 탄생했다. 1. Same Origin Policy(SOP) 란? 클라이언트 사이드 웹 보안에 있어 중요한 요소이다..

TeamH4C 2022.10.13

[빡공팟 5기] W4 : Web Hacking 로드맵 - STAGE 1 - 4

Web Browser 웹 브라우저는 사용자가 돌아가는 원리를 알지 않아도 서비스를 이용 가능하게 해주는 소프트웨어이다. 웹 브라우저의 기본적인 동작 1. 이용자가 주소창에 dreamhack.io 를 입력한다. 2. 웹 브라우저의 주소창에 입력된 주소를 해석한다. 3. 입력된 주소를 탐색한다. (DNS 요청) 4. HTTP를 통해 dreamhack.io 에 요청한다. 5. dreamhack.io의 HTTP 응답을 수신한다. 6. 리소스 다운로드 및 웹 렌더링 (HTML, CSS, JavaScript) DNS(Domain Name Server)란 무엇일까? : Domain Name 과 IP Address 를 매핑해서 IP Address 를 반환해주는 역할을 수행한다. URL 구성 요소 중 Host 는 웹 브..

TeamH4C 2022.10.13

[빡공팟 5기] W4 : Web Hacking 로드맵 - STAGE 1 - 3

HTTP/HTTPS - HTTP(HyperText Transfer Protocol)/HTTPS(HyperText Transfer Protocol Secure Socket Layer) 는 무엇일까? : URI 의 구성 요소 중 Scheme(Protocol) 에 해당한다. : 서버와 클라이언트의 데이터 교환을 요청과 응답의 형식으로 정의한 프로토콜이다. : 클라이언트가 서비스 포트에 HTTP 요청을 전송하면, 이를 해석하여 적절한 응답을 반환한다. : Conectionless, Stateless 의 특징을 가지고 있다. (Conectionless : 한번 연결하고 연결을 종료, Stateless : 상태를 저장하지 않는다.) : TCP 혹은 TLS(암호화된 TCP)를 사용하여 통신한다. : 웹 서버는 HTT..

TeamH4C 2022.10.13

[빡공팟 5기] W4 : Web Hacking 로드맵 - STAGE 1 - 2

introduction of Webhacking 1. 웹이란 무엇인가? : HTTP 를 이용하여 정보를 공유하는 통신 서비스를 말한다. : 서비스를 요청하고 받는 사용자는 웹 클라이언트(Web Client) : 웹 서비스를 제공하는 대상을 웹 서버(Web Server) 라고 한다. 2. 웹 기초 지식 : 웹 브라우저는 사용자가 웹과 HTTP 의 원리를 알지 못해도 서비스를 사용할 수 있도록 도와주는 소프트웨어다. : 모든 취약점은 사용자의 입력 값에서부터 발생한다. -> 사용자의 입력 값은 웹 브라우저를 통해서 전송되므로 웹 해킹을 공부하기 위해서는 브라우저가 하는 행위를 필수적으로 이해해야 한다! : 웹 리소스란 웹에서 사용하는 콘텐츠를 의미하는데 이때 웹 리소스를 가리키는 주소는 URL(Uniform..

TeamH4C 2022.10.12

[빡공팟 5기] W4 : Web Hacking 로드맵 - STAGE 1 - 1

Browser DevTools 1. Tools : Browser DevTools (개발자 도구) 개발자 도구는 어떤 용도로 사용하는 걸까? : 프론트 엔드 부분은 버그나 오류가 발생하는 경우가 빈번하며 CSS 수정, 자바 스크립트의 수행 결과 확인 등의 작업을 수행하는 경우가 많다. 이런 경우, 에디터와 웹 브라우저를 번갈아가면서 한다면 매우 번거롭다. 개발자 도구는 이러한 불편함을 해소해준다. 브라우저 개발자 도구로 가능한 일들은 1. HTML, CSS 코드를 직접 수정하고 결과 확인이 가능하다. 2. 자바스크립트 코드를 대상으로 디버거를 제공하며 함수 실행이 가능하다. 3. HTTP 패킷을 상세하게 보여준다. 이는 프로토콜 상 발생하는 문제를 쉽게 발견할 수 있다. -> 이렇게 편리한 만큼 공격자도 ..

TeamH4C 2022.10.12

[빡공팟 5기] W4 : Mac OS 에서 Burp Suite 설치 및 기본 기능 이해

[설치 환경] Mac M1 용어 및 개념 정리 Burp Suite : 프록시를 이용하여 패킷을 중간에 가로채서(intercept) 분석 및 수정을 할 수 있다. : 해당 툴에서 사용하는 웹 프록시 서버 주소와 포트 설정을 해주면 브라우저에서 보낸 웹 요청이 프록시 서버를 경유하므로 중간에 패킷을 가로채는 게 가능한 것이다. : 그 외에도 다양한 기능이 있는데 이를 이용하여 웹 어플리케이션 테스트, 취약점 점검, 공격을 수행할 수 있는 점검 툴이다. 프록시(Proxy) : 서버와 클라이언트 사이에서 중개인으로 역할을 수행하며 클라이언트의 모든 HTTP 요청을 받아서 서버에 전달을 한다. : 웹 프록시 서버는 클라이언트의 입장에서 트랜잭션을 수행하는 응용프로그램이다. (프록시, 프록시 서버는 둘 다 같은 말..

TeamH4C 2022.10.12

[빡공팟 5기] W1 ~ W3 : 파이썬 기초 100제 중 5문제 블로깅 과제

문제를 잘 읽고 개념만 잘 익히면 대부분의 문제를 다 풀 수 있을 정도의 난이도였지만 사소한 거 하나를 빠뜨려 오래 걸렸던 문제, 개념이 잘 잡혀있지 않았던 문제 위주로 블로깅함. 81번 A, B, C, D, E, F 중 하나가 입력될 때, 1부터 F까지 곱한 16진수 구구단의 내용을 출력해보자. (단, A ~ F 까지만 입력된다.) 입력 16진수로 한 자리 수가 입력된다.단, A ~ F 까지만 입력된다. 출력 입력된 16진수에 1~F까지 순서대로 곱한, 16진수 구구단을 줄을 바꿔 출력한다.계산 결과도 16진수로 출력해야 한다. Logic 1. 16진수로 한 자리 수를 입력받는다.2. 입력된 16진수에 1~F까지 순서대로 곱하고 줄을 바꿔 출력한다.3. 계산 결과도 16진수로 출력해야함. 사실 이 문제..

TeamH4C 2022.10.10

[빡공팟 5기] W1 ~ W3 : 웹 사이트 구현 완성

구현한 기능 1. 회원가입 및 로그인, 이메일 인증 2. 게시판 글쓰기, 글수정, 글삭제, 파일업로드, 추천, 댓글 3. 게시글 검색 - 게시판 별 검색, 제목 기준 검색, 내용 기준 검색, 전체 기준 검색 4. 무한 F5 방지 게시글 방문자 조회수 1. 회원가입 및 로그인, 이메일 인증 회원가입 회원 가입 시 입력하는 폼 작성 -> action='register.php' method='post': 보통 회원가입이나 로그인할 때는 메소드를 POST 로 전달한다. 이유는 GET 메소드 이용 시 이는 파라미터를 통해 전달하기 때문에 보안에 문제가 있기 때문이다. 폼 입력 후 회원가입 버튼 클릭 -> php 코드 실행 -> include "lib.php" -> 다른 php 파일을 포함시켜 변수를 이용할 수 있..

TeamH4C 2022.10.09