*문제해결 방법
원인부터 찾기
200
300
400
500 에러 확인;
에러 출력
->디버깅
-HTTP프로토콜
>요청 응답
로그인 상태를 유지하는 방법
클라이언트가 쿠키를 보내 사용자를 서버가 인식.
쿠키
웹서버에 보내는 작은 데이터쪼가리
웹서버에 요청 시 쿠키값을 가지게 됨
클라이언트가 인증하게 되면 서버는 이를 확인하고 클라이언트에게 set-cookie라는 헤더로 저장하게 하고 이를 통해 사용자를 인증
쿠키는 클라이언트쪽에서ㅓ 오는 정보.
변조가 가능함 이로 다른 계정을 로그인이 가능
이것이 쿠키 변조
서버에 저장하는 방법 - > 세션
세션의 경우 로그인이 성공할경우 서버에 로그인을 기록함. 이를 세션ID로 저장을 하고 이를 클라이언트에게 전달. 사용자는 서버에 저장되기 때문에 변조가 안됨. 세션ID는 세션값을 식별하기 위한 값이다. 이는 클라이언트측 쿠키에 저장이 됨.
따라서 세션 아이디는 유추되지 않는 값이여야 함 ->랜덤한 숫자와 알파벳을 섞은 값이 됨.
특정 사용자로 로그인 하기 위한 정보
--> 세션 ID
--> 세션 ID탈취가 목표
*로그인 인증
웹서버에 전달 -> ID/Password
웹서버 확인
맞으면 ->세션에 로그인 확인. 사용자로 로그인
실습
Burpsuite
http://ctf.segfaulthub.com:1018/
INTERCEPT가 활성화될 경우 요청이 전달되지 않음
마지막 데이터 부분을 nomaltic으로 변경 후 intercept off 혹은 forword 입력
종종 사용되는 기능
edited 체크는 내가 변조한 코드가 있는 파일을 말함
history에서 사용된 파일 내용을 확인 가능
repater
위와 같은 같은 요청을 반복하는 것.
Control + R : repater 단축키
data값에서 인코딩은 필요하지 않으나 URL에서는 인코딩이 필요
띄어쓰기 공백 : +
아스키코드
디코더 창에서 인코딩 및 디코딩 가능
Intruder에서 스크립트를 짜서 자동화 가능
§ 사이의 값을 paylodad에서 조건 설정
위 문제에서 intercepter를 on으로 하고 새션 아이디를 넣는다.
위에서 user를 admin으로 변경 혹은 브라우저 개발자모드에서 자바스크립트 코드를 통하여 변경 가능
php 파일이 1 2 3으로 네이밍되어있어 직접 3페이지로 들어감
대표적인 잘못된 사례
본인인증우회
악관 동의->본인인증->회원가입
인가인증시스템
'Nomaltic Hacking Study' 카테고리의 다른 글
2023.04.2 (0) | 2023.04.20 |
---|---|
2023.04.13 (0) | 2023.04.13 |
2023.04.04 (0) | 2023.04.04 |
GET / POST 메서드로 웹 서버에 데이터 전달해보기_1주차 (0) | 2023.04.02 |
Happy Hacking 문구 출력페이지 만들기_1주차 (0) | 2023.04.02 |