4주차 라이브 특강
jwt가 안전하기는 하지만 secret key가 털리면 위험함
jwt도 유효기간이 있고 쿠키 안에 저장된다.
세션아이디도 토큰의 개념이다.
jwt는 세 부분으로 나뉨
헤더 메인(페이로드:내용) 시그니처(서명)
ewjfiwed.. fesdasfjfak, asffafakfao
4주차 수업 미리보기
Burp Suite
프록시 툴 : 중간에 거쳐서 대신 보내주는 것
4주차 1강
저번 수업 및 과제 리뷰
1) 식별 / 인증 동시
//pseudocode
#sql = "select * from member where id='$user_id' and
pass='$user_pass'"
$ret = $sql.execute()
if($ret) {
// 로그인 성공
}else{
// 로그인 실패
}
2) 식별 / 인증 분리
// pseudocode
$sql = "select pass from member where id='$user_id'"
$db_pass = $sql.execute()
if($db_pass == $user_pass) {
// 로그인 성공
}else{
// 로그인 실패
}
3) with Hash (비밀번호_
-----------------------------------------------------------------------------------------------------------------------------------------------------------------
반드시 알아야할 용어
쿠키 / 세션 / 세션 ID
쿠키 : 웹서버로 요청을 보낼 때 붙이는 호스트 이름 (데이터 쪼가리)
세션 : 서버에 전달되는 연결 정보이다. (서버에 저장되는 데이터, 웹서버에서는 서버측에 전달되는 정보임)
(인증이나 인가는 세션정보로 구현할 것== 서버측에 저장된 정보로 인증이나 인가를 구현해라)
세션ID : 서버측에 여러 가지 데이터들이 저장 되어 있는데 그 세션이 누구 것인지 식별하기 위한 값이다.
그래서 이 세션ID는 쿠키에 담겨 왔다 갔다 한다.
---------------------------------------------------------------------------------------------------------------------------------------------------------------
메인 주제
* Burp Suite (버프스윗)
(Web Proxy Tool이다/) Proxy는 중간자라는 뜻이 있음
예를 들면 A와 B가 있는데 이 중간에서 쪽지를 대신 전달 해주는 친구, 이친구를 (Proxy(프록시)라고 함)
웹서버로 오고가는 요청을(패킷을) 대신 전달해주는 친구 = Web Proxy Tool
웹 프록시 툴을 사용하는 이유?> 모의해킹 전문가가 사용하는 이유
: 버트 스윗을 통해 데이터가 왔다갔다 하면서 조작이 되는지 보기위함이다 라고 생각하기 보다는
중간에 거치게 되;면 우리가 사용하는 브라우저가 이 웹서버와 데이터를 주고 받을 때 어떤 패킷을 주고 받는 지를 직접 하나하나 다 볼 수 있다. 왜? -> 모든 데이터는 이 버프스윗을 거쳐 지나가기 때문에 어떤 요청을 하는지 어떤 응답을 하는지 직접 볼 수 있다. 중간에서 데이터를 고칠 수 도 있다. 이런 이유들 때문에 웹 프록시 툴을 사용하는 것이다.
현재 127.0.0.1 :8888로 리슨너를 열어놓았음
나의 IP주소를 적고 포트 번호 8888 로 프록시 설정 가능함
같은 네트워크 상에서만 가능하다
다른 사용자도 프록시 설정을 해야 데이터가 옴
루프백온리는 내컴퓨터에서만 사용 가능함
올 인터페이스는 다른 컴에서도 가능함
스페셜 어드레스 : 특정 주소만 내 컴퓨터로 보낼수 있게 하는설정임
4주차 과제
[1] 오늘 수업 복습
-Burp Suite : CTF문제 풀기
[2] JavaScript
- 문법 (수업 노트) 공부하기
둘 중 하나 하기
- 쿠키 탈 취하기
- 자바 스트립트 키로거 만들기
- 로그인 페이지 만들어서 키로거
[3] 게시판 구현
-> 게시판 글 작성 : insert : 회원가입
-> 게시판 글 리스트 보기 : select
-> 게시판 글 내용 읽기 : select
-> 게시판 글 수정 : update : 마이페이지
-> 게시판 글 삭제 : delete
console.log('hello world');