드림핵 정리 8

Same Origin Policy (SOP)

쿠키에는 인증 상태를 나타내는 민감한 정보가 보관되며, 브라우저 내부에 저장된다.그리고 브라우저가 웹 서비스에 접속할 때 브라우저는 자동으로 쿠키를 헤더에 포함시켜 요청을 보낸다.이 덕분에 우리는 사이트, SNS 와 같은 웹 서비스에 한 번 로그인 한 후 일정 기간은 로그인하지 않고도 바로 서비스를 사용할 수 있다. 하지만 악의적인 페이지를 접속했을 때, 페이지가 javascript를 이용해 이용자의 SNS 웹 서비스로 요청을 보내거나 악의적인 행동을 할 수 있다.해당 악의적인 자바스크립트는 사용자의 계정으로 로그인하지 않고도 쿠키를 통해 사용자 권한으로 악의적인 행동을 하게끔 로직을 보내게 되고 해당 사이트에선 응답을 받게 되며 수락하게 되는 것이다. 이와 같은 문제를 방지하기 위해 동일 출처 정책 ,..

드림핵 정리 2024.06.14

무작위 비밀번호 생성 코드

비밀번호 길이를 입력받고 해당 비밀번호에 들어갈 숫자 갯수와 특수문자 갯수를 입력받은 후 무작위로 비밀번호를 만들어주는 코드를 만들었다. 또한 만들어진 비밀번호를 자동적으로 파일에 저장해주는 코드이다. 완성시 보여지는 그림은 ------------------------------------------------------------------ 어디에 쓰일 비밀번호 인가요? => 네이버 비밀번호의 길이를 입력해주세요 => 12 숫자는 몇개를 포함할까요? => 2 특수문자는 몇개를 포함할까요? =>2 D'uraZK'2Tw6 password.txt 이름의 파일에 네이버 비밀번호가 저장되었습니다. ----------------------------------------------------------------..

드림핵 정리 2023.11.04

드림 핵 - 웹 해킹 - cookie session ( Background: Cookie & Session )

드림핵 자료를 토대로 정리 한 것 이번 코스에서는 HTTP 통신에 쓰이는 쿠키와 세션에 대해 설명한다. • 서론 • Connectionless • Stateless • 쿠키 (Cookie) • 세션 (Session) . . . • 배우고 나서 내가 이해한대로 정리 서론 웹 서버는 대부분 로그인을 통해 개인만의 서비스를 제공한다. 손님 계정에겐 손님을 위한 서비스 , 관리자 계정에겐 관리페이지, 데이터베이스 등 관리자를 위한 페이지를 제공해야한다. 그럼 웹 서버는 누가 누군지 알고 결과를 다르게 제공할까? 저번에 배웠듯이 클라이언트에서 서버에 보내는 요청에 따라 다르게 반환을 해주는데 이때 클라이언트에서 서버에 요청을 보낼때 요청 안에는 클라이언트의 정보와 인증 정보 또한 들어있다. 클라이언트의 정보: 이..

드림핵 정리 2023.07.01

드림 핵 - 웹 해킹 - 웹 브라우저 ( Tools : Browser DevTools )

*해당 모든 글은 Dreamhack.io (드림핵) 에 올라와 있는 자료를 토대로 정리한 것. 이번 코스에서는 개발자 도구와 각 구성 요소에 대해 배운다. 코스에서 배우는 핵심 개념은 다음과 같다. • 개발자 도구(DevTools) 개발자 도구 ( DevTools ) 웹 개발을 할 때는 프론트엔드의 자바스크립트나 백엔드 API에서 버그가 발생하는 경우가 잦고, 적용한 CSS가 맘에 들지 않을 때도 많다. 이런 경우에는 코드 에디터로 원하는 부분을 수정하고 브라우저로 결과를 확인해야 하는데, 만족스럽지 않으면 에디터와 브라우저를 오가며 수정을 반복해야 한다. 특히 CSS는 변경 결과가 어떻게 반영될 지 쉽게 예상이 되지 않아서 수정 과정이 더욱 번거로워지기도 한다. 브라우저 개발자 도구(Devtools)는..

드림핵 정리 2023.06.27

드림 핵 - 웹 해킹 - 웹 브라우저 ( Background : Web Browser )

*해당 모든 글은 Dreamhack.io (드림핵) 에 올라와 있는 자료를 토대로 정리한 것. 이번 코스에서는 웹 브라우저의 개념과 역할에 대해 배웁니다. 코스에서 배우는 핵심 개념은 다음과 같다. • 웹 브라우저(Web Browser) • URL(Uniform Resource Locator) • DNS(Domain Name Server) • 웹 렌더링(Web Rendering 웹 브라우저 웹은 인터넷이라는 글로벌 네트워크 위에 구현되어있고 정해진 프로토콜을 기반으로 통신한다. 개발자가 아닌 일반인이 이러한 규칙을 이해하고 사용하긴 매우 어렵기 때문에 20세기에 등장한 웹 브라우저는 서버와 HTTP 통신을 대신해주고 수신한 리소스를 시각화하여 쉽게 만들어주었다. 이용자가 주소창에 dreamhack.io를..

드림핵 정리 2023.06.27

드림 핵 - 웹 해킹 - 웹 기본 상식 ( Background: HTTP/HTTPS )

*해당 모든 글은 dreamhack.io (드림핵) 자료를 바탕으로 정리한 것. 이번 코스에서는 웹 통신에 쓰이는 프로토콜인 HTTP와 HTTPS에 대해 배운다. 코스에서 배우는 핵심 개념은 다음과 같다. • HTTP • HTTP 메시지 • HTTP 요청 • HTTP 응답 • HTTPS 인코딩 단어는 사회적으로 정의해놓고 사용한다. 쉽게말해 우리는 사과라는 개체 이름을 "사과" 라고 정해놨기 때문에 사과를보며 "사과"라고 부르고 사용하며 바나나를 가르키고 "바나나"라고 이름지어서 사용하기로 약속 했기 때문에 바나나라는 이름이 붙은 것이다. 컴퓨터의 모든 데이터는 0과1로만 구분되는데 이를 이용해 문자를 표현하는것도 일종의 약속 덕분이다. 이런 약속들을 인코딩(Encoding) 표준 이라고 부르는데 대표적..

드림핵 정리 2023.06.26

드림 핵 - 웹 해킹 - 웹 기본 상식 ( Background: Web )

이번 코스에서는 웹과 각각의 구성 요소에 대해 배운다. 코스에서 배우는 핵심 개념은 다음과 같다. • 통신 • 웹 • 웹 클라이언트 • 웹 서버 • 웹 리소스 • 웹 서비스 웹 ( Web ) 이란 과거에는 서로 거리가 떨어진 사람들이 의사소통을 하기위해 말을타고 직접 찾아가거나 봉화 신호를 올리는 등의 방법으로 소통했다. 그러나 현대에는 전 세계에 걸친 통신망을 바탕으로 통신 할 수 있게 되었다. 웹이란 인터넷 통신망을 활용하여 구현된 전 지구적 정보 공간이다. 시간과 장소에 구애받지 않고 인터넷에 접속만 할 수 있다면 정보를 구하거나 공유 할 수 있다. 웹으로 연결된 사람들 사이에 형성된 정보의 흐름이 마치 거미줄 같다고 하여 웹 이라 이름이 붙여졌다. 인터넷을 기반으로 구현된 기술중 HTTP 를 이용..

드림핵 정리 2023.06.25

드림 핵 - 웹 해킹 - 소개

드림 핵 - 웹 해킹 - 소개 해킹에 대한 막연한 호기심으로 드림핵을 방문하신 분들이 최대한 쉽게 웹 해킹에 입문할 수 있도록 도울 것 이 강의는 안전한 웹 서비스의 구현을 위해 반드시 알아둬야 할 웹 해킹의 기초적인 지식과 기술을 전달하는 것을 목표 라고 정의 되어있다. 앞으로 드림 핵에서 배우는 것과 실습하는 것들을 파트별로 정리해서 올릴 예정이다.

드림핵 정리 2023.06.25