[dreamhack] csrf-2
·
W3B H4CK1NG
가장 먼저 볼 수 있는 화면. vuln, flag, login 페이지가 있다.read_url 함수: Python Selenium을 사용해 지정된 URL에 접속하고 쿠키를 설정한 후, 페이지를 로드하는 함수cookie={“name”: “name”, “value”: :value”}: 이름과 값을 가지는 쿠키를 설정하는 딕셔너리name = name, value=value로 설정되어 있음 / (메인) 페이지 → 세션 기반 인증session_id = request.cookies.get('sessionid', None): 쿠키에서 세션 아이디 가져오기. 없으면 none이 기본값username = session_storage[session_id]: 가져온 session_id를 사용해 storage라는 세션 정보 저장..
[dreamhack] PHPreg_step1
·
W3B H4CK1NG
step 1초기 화면 → step1과 step2로 구성되어 있음코드 분석✅ 주요 코드 pw에 알파벳이 들어가면 ‘alphabet in the pw’ 메시지를 띄움preg_replace(): PHP에서 정규 표현식을 사용하여 문자열을 대체하는 함수 preg_replace() 를 통해 입력 받은 name에 “nyang” 문자가 있으면 빈 문자열로 치환입력 받은 pw에 정규 표현식이 존재한다면 "d4y0r50ng“로 치환 name은 dnyang0310이 되어야 하고, pw는 d4y050ng+1+13이 되어야 하는데 위의 코드 때문에 오류가 발생하게 됨nyang을 만나면 빈 문자열로 치환되므로 name은 dnynyangang0310으로 정할 수 있음 \\d*\\@\\d{2,3}(31)+[^0-8]\\! → 정규..
[dreamhack] Lecture. Cookie
·
W3B H4CK1NG
쿠키 Cookie HTTP에서 상태를 유지하기 위해 Key-Value로 이루어진 일종의 단위 클라이언트의 브라우저에 저장되고 요청에 포함되는 정보 클라이언트의 정보 기록과 상태 정보를 표현하는 용도로 사용 *정보 기록: 각 클라이언트의 팝업 옵션을 기억하기 위해 쿠키에 정보를 기록하고 쿠키를 통해 팝업 창 표시 여부를 판단 *상태 정보: 웹 서버는 클라이언트의 로그인 상태와 이용자를 구별해야 하므로 식별할 수 있는 값을 쿠키에 저장해서 사용 HTTP 프로토콜의 특징 → 쿠키 사용 이유 Connectionless: 하나의 요청에 하나의 응답을 한 후 연결을 종료하는 것 Stateless: 통신이 끝난 후 상태 정보를 저장하지 않는 것 세션 session 인증 정보를 서버에 저장하고 해당 데이터에 접근할 수..
[dreamhack] Lecture. Background: Web Browser
·
W3B H4CK1NG
URL(Uniformed Resource Locator) 웹에 있는 리소스의 위치를 표현하는 문자열 요소 설명 Scheme 웹 서버와 어떤 프로토콜로 통신할지 나타냅니다. Host Authority의 일부로, 접속할 웹 서버의 주소에 대한 정보를 가지고 있습니다. Port Authority의 일부로, 접속할 웹 서버의 포트에 대한 정보를 가지고 있습니다. Path 접근할 웹 서버의 리소스 경로로 '/'로 구분됩니다. Query 웹 서버에 전달하는 파라미터이며 URL에서 '?' 뒤에 위치합니다. Fragment 메인 리소스에 존재하는 서브 리소스를 접근할 때 이를 식별하기 위한 정보를 담고 있습니다. '#' 문자 뒤에 위치합니다. Domain Name Host는 Domain Name, IP Address의..
[dreamhack] Lecture. Background: HTTP/HTTPS
·
W3B H4CK1NG
통신 프로토콜 프로토콜Protocol: 컴퓨터 간에 정보를 원활하게 교환하기 위해 상호 간에 정한 여러가지 통신 규칙과 방법에 대한 약속 서버-클라이언트 간 요청과 응답에 적용되는 약속 프로토콜의 3 요소 구문(Syntax): 문법, 데이터의 형식이나 신호로 부호화 방법을 정의 의미(Semantics): 정확한 정보 전송을 위한 전송 제어와 오류 제어 방법을 정의 순서(Timing): 송신자와 수신자 간 혹은 양단의 통신 시스템, 망 사이의 통신 속도나 순서를 정의 네트워크 통신의 기초: TCP/IP. 웹 애플리케이션이 사용하는 HTTP 파일을 주고받을 때 사용하는 FTP종류 HTTP 서버와 클라이언트의 데이터 교환을 요청과 응답 형식으로 정의한 프로토콜 어떠한 종류의 데이터도 전송할 수 있도록 설계 서..
[dreamhack] Lecture. Background: Web
·
W3B H4CK1NG
Web HTTP를 이용하여 정보를 공유하는 서비스 웹 서버Web Server : 정보를 제공하는 주체 웹 클라이언트Web Client : 정보를 받는 이용자 프론트엔드와 백엔드 프론트엔드: 이용자의 요청을 받는 부분 이용자에게 직접 보여지는 부분 웹 리소스Web Resource로 구성 백엔드: 요청을 처리하는 부분 웹 리소스Web Resoucre 웹에 갖춰진 정보 자산을 의미 http://dreamhack.io/index.html 주소를 입력하면 dreamhack.io에 존재하는 /index.html 경로의 리소스를 가져오라는 의미 모든 웹 소스는 고유의 URI(Uniform Resource Indicator)를 가짐 프론트엔드를 구성하는 대표적인 웹 리소스 HTML; Hyper Text Markup L..