2주차 수업 내용 정리

Peroro·2023년 4월 6일
0
post-custom-banner

오류를 만났을 때

  • 문제 해결 팁: 왜 그 문제가 일어나는지 알아야 함.
  • 복붙만 하면 결국 해결을 못하게 됨
<?php
	$name = $_GET['userid'];
	// echo $name;
	$sql = "select * from member where id='${name}'";
	//echo $sql;
	$sql.execute();
?>
  • 에러 메시지 확인!
  • 뭐가 문제인지 출력해보기
  • PHP 에러 출력 방법
  • mysql 에러 출력 방법

-> 디버깅


로그인

  • HTTP 프로토콜 > request/response
  • 웹서버: 가상머신
  • client: local machine
  • HTTP: State less

로그인. -> 연결성이 생긴 것처럼 보임

로그인이라는 기능이 없음.
-> 연결성을 만들어야 함
-> 요청을 할 떄, 자신이라는 것을 알려줘야함.
-> 이 역할을 쿠키가 행함


쿠키

Cookie: 웹서버에게 보내는 작은 데이터.
-> 클라이언트 측에서 오는 정보는 모두 불신 해야 함.

set-cookie -> 클라이언트에 쿠키값을 저장하고 서버와 요청을 할 때 그 쿠키값을 쓴다.

-> 문제가 생길 수 있는데 쿠키를 변경해서 접근할 수 있음.

쿠키 변조(2006년에 유행)


세션

세션(Session): 서버 측에서 클라이언트 정보를 저장하는 데이터.
세션 ID: 세션 정보를 식별하기 위해 클라이언트에 주는 데이터

  • 클라이언트는 이 세션 ID를 쿠키를 통해 전달하고, 서버 측은 그 받은 쿠키와 세션 ID를 비교해 사용자에게 맞는 데이터를 전달한다.
  • 유추 불가능해야 함.
  • 랜덤한 숫자와 알파벳 섞은 값.

서버에다가 저장하자!

세션 테이블로 세션을 관리
세션 정보를 식별하기 위해서 세션ID

세션ID는 클라이언트에 저장함 -> 쿠키에 저장함.

  • 쿠키, 세션, 세션 ID: 이들의 관계를 잘 알고 있어야 함.

웹해킹은 보통 세션 ID를 탈취하는게 목적임


기타

data=data+%3A+15 인 이유: 인코딩. <- 브라우저가 함
POST에는 무조건 URL 인코딩이 필요함

띄어쓰기 공백: +
%3A : :(ASCII Code hex값)

profile
오늘 공부한 것을 올리는 공간 / 일주일에 글 3개 / 블로그 이전 : https://perorochan321.tistory.com/
post-custom-banner

0개의 댓글