전체 글 썸네일형 리스트형 HTTP 상태 라인, 상태 코드 정리 HTTPhttp란 TCP/IP 프로토콜 기반으로 작동하며, 클라이언트와 웹 서버가 데이터를 주고 받기 위해 사용하는 통신 방식이다. 클라이언트는 웹 서버에 요청을 하고 웹 서버는 이에 대해 응답을 하는데, 각각의 패킷에서 존재하는 상태 라인 구조는 서로 다르다.TCP(전송 제어 프로토콜)IP(인터넷 프로토콜) HTTP 상태 라인1. 요청(Request) 헤더웹 메소드/ 경로/ HTTP 프로토콜웹 메소드 : GET, POST 등의 방식으로 표현경로 : url 경로(index 페이지는 생략 가능)HTTP 프로토콜 : 프로토콜 버전을 의미. HTTP/1.1, HTTP/2 등과 같은 방식으로 표현ex) GET / HTTP/2(위의 예시에서 index 페이지 경로는 생략됨) 2. 응답(Response) 헤더HTT.. 더보기 Burp Suite 툴을 간단하게 알아보자 Burp Suite는 Community Edition으로 다운을 받아 진행하였다. Email은 굳이 입력할 필요가 없으며 바로 아래에 있는 'Go straight to downloads'를 클릭하고 설치할 수 있다.설치 창에서 별다른 설정 없이 다음을 계속 누르고 설치를 진행한다. Community Edition은 용량이 크지 않아 금방 다운로드 할 수 있다. 설치 완료 후 Burp Suite를 실행시키면 기존 프로젝트를 불러올 지 여부를 묻는 화면이 나온다. Community Edition에서는 프로젝트를 불러오는 기능이 제한되고, 실습에 있어서 위의 'Temporary project in memory' 기능으로도 충분하기 때문에 Next를 눌러준다. 위의 화면에서 'Load from config.. 더보기 Burp Suite의 기능과 Proxy 이해 Burp SuiteBurp Suite는 웹 앱 어플리케이션의 침투 테스트에 사용되는 도구이다. Burp Suite에는 proxy, repeater, decoder, comparer 등 모의해킹에 자주 사용되는 툴이 존재한다. 여러 도구 중에서도 가장 먼저 사용되며 중요한 역할을 하는 것은 Proxy라고 할 수 있다. 그렇다면 Proxy란 무엇인가? ProxyProxy는 영어로 '대리인'을 의미한다. A와 B라는 사람이 있다고 하면, proxy는 A와 B의 가운데에서 오고가는 것을 전달해주는 기능을 한다. Proxy는 이와 같은 역할을 웹 서버 상에서도 수행할 수 있는데, 이를 Web Proxy, Web Proxy Server, Proxy Server라고 부른다.(보통은 줄여서 proxy라고 부른다) 여기.. 더보기 쿠키와 세션 이해 웹 서핑을 하다 보면 '쿠키' 허용 여부를 묻는 사이트들을 종종 볼 수 있다. 쿠키를 허용하거나 허용하지 않거나 별 차이를 느끼지 못한 경험도 있을 것이다. 하지만 현대 인터넷 환경에서 쿠키는 대부분의 유저가 사용하고 있는 필수적인 요소이다. 그렇다면 쿠키는 무엇일까? 쿠키를 알아보기 위해 먼저 HTTP의 특성에 대해 이해해야한다. HTTP의 특성HTTP는 네트워크 장치 간에 서로 정보를 전달할 수 있도록 설계된 프로토콜이다. 각 유저들은 서버와 HTTP 통신 규약에 따라서 정보를 주고 받을 수 있다. 하지만 HTTP는 원활환 통신 환경을 유지하기 위해 다음과 같은 두 가지 특성을 가진다.Connectionless(비연결성)Stateless(무상태)Connectionless(비연결성)비연결성이란 클라이언.. 더보기 로그인 식별 / 인증 방식 과제(4가지) 이번 과제에서는 저번에 만들어 놓은 login 페이지 코드를 그대로 복사해서 사용하였다. 그리고 코드가 길어지는 부분은 함수화 하여 간략하게 만들었고, DB 연결 함수는 따로 만들어두었다. login_page.php 코드더보기 Login 아이디 비밀번호 로그인 회원가입 1. 식별 / 인증 동시 로직function logic1($userID, $userPass) { $query = "SELECT * FROM users WHERE id = '$userID' and pass = '$userPass'"; $result = mysqli_query(DB(), $query); if (mysqli_num_ro.. 더보기 식별과 인증 / 해시 로그인사용자에게 입력 받은 정보가 맞는지 확인하는 작업사용자가 정보를 입력하면 서버는 식별 / 인증 절차를 진행함 로그인이 필요한 이유접근이 허가된 사용자에게만 정보를 열람할 수 있도록 하여, 데이터 및 비즈니스를 보호할 수 있음식별수많은 데이터 중에서 특정 데이터를 찾아내는 작업필요 조건 : 유일성(unique) 데이터가 유일성이라는 특성을 가지고 있어야 식별이 가능함식별 정보는 DB에서 primary key로 존재해야한다ex) 아이디, 전화번호, 이메일 등 식별 정보는 노출되어도 괜찮음하지만 고유 식별 정보는 식별과 인증 모두 진행 가능한 정보이기 때문에 노출되면 안됨ex) 주민등록번호, 여권 번호 등 인증서버에 접속하려고 하는 사용자가 맞는지 확인하는 작업유일성(unique)을 만족하지 않아도 된.. 더보기 [Wargame] Exercise: SSH ssh chall@host3.dreamhack.games -p 16098Dreamhack 사이트에서 SSH로 원격 서버에 접속하여 flag 파일을 얻는 것이 목표인 문제이다. 사이트에서 주어진 vm 서버를 바탕으로 vm 환경에서 접속을 진행한다.$ssh chall@host3.dreamhack.games -p 16098 그리고 비밀번호 입력란이 나오면 ssh password를 입력한다.ssh로 시스템에 접속하게 되는데 디렉토리에서 파일 목록을 불러오고flag 파일을 읽으면 정답을 얻을 수 있다. 더보기 DB 연동하기 / 로그인 페이지, 회원가입 페이지(과제) 2주차 과제로 DB 연동을 진행하였다. 기존에 만들어 놓은 로그인 페이지와 회원가입 페이지를 약간 수정하였고, 아무런 값을 입력하지 않았을 때, 로그인이 되어 있으면 index 페이지로, 그렇지 않으면 로그인 페이지로 넘어가도록 기능을 구현하였다. 로그인 여부는 GET 방식으로 판별하도록 하였다. 1. 회원가입 페이지 DB 연동 register_page.php 회원가입 아이디 닉네임 비밀번호 비밀번호 확인 이메일 회원가입완료 회원가입 페이지는 기존에 아이디와 비밀번호만 받았었는데, 이 후 과제에서 구현할 마이페이지에 기능을 조금이라도 추가하기 위해 닉네임과 이메일까지 받았다. 모든 정보를 입력하고 회원.. 더보기 이전 1 ··· 3 4 5 6 7 8 다음