분류 전체보기(179)
-
[normaltic 취업반 5기] 2023-11-15 4주차 과제 : 2번 과제
XSS (Cross Site Scripting) XSS는 웹 애플리케이션에서 많이 나타나는 취약점 중 하나로 웹 페이지에 악의적인 의도를 담은 스크립트를 삽입하여 웹 페이지 사용자에게 피해를 입힌다. 해당 취약점을 이용한 공격의 성공 확률을 높이기 위해 주로 여러 사용자가 보는 게시판에 악성 스크립트를 삽입한 게시글을 등록해놓고 게시판 이용자가 이를 보게 되면 이용자에게 발급된 쿠키를 탈취한다거나 이용자의 의도와 상관없는 기능을 수행하도록 만든다. 이 취약점은 웹 애플리케이션이 이용자로부터 입력받은 값에 대한 유효성 검사를 제대로 하지 않은 경우 발생한다. XSS 취약점을 이용한 공격에는 여러가지가 존재하는데 이 중 쿠키 탈취와 키로거 공격을 실습을 통해 알아보자. 쿠키(세션) 탈취 쿠키는 클라이언트가 ..
2023.11.17 -
[normaltic 취업반 5기] 2023-11-15 4주차 내용 정리
Burp Suite (버프 스위트) 버프 스위트는 프록시를 사용하여 클라이언트 측에서 서버 측으로 보내는 HTTP 요청을 가로채 분석 및 수정을 할 수 있는 웹 프록시 툴이다. 기본 기능 외에도 다양한 기능들이 존재하여 웹 애플리케이션의 취약점을 테스트하거나 모의해킹을 수행할 수 있도록 해주는 점검 도구로서의 역할도 가진다. 일반적으로 클라이언트-서버 구조의 데이터 전달 방식은 클라이언트에서 서버에게 요청하면 서버는 그에 해당하는 데이터를 응답해주는 방식이다. 그러나 여기에 프록시가 개입을 하게 되면 클라이언트가 서버로 데이터를 요청 시 프록시를 거쳐 보내게 되고 마찬가지로 서버가 클라이언트에게 데이터를 응답 시 프록시를 거쳐 보내게 된다. 이때 프록시는 중간전달자로서 요청 및 응답에 해당하는 데이터들을..
2023.11.15 -
[Web Application-개발] 2023-11-14 웹 어플리케이션 제작 프로젝트 : 코드 리펙토링 및 추가 기능 구현 #7
프로젝트 일지 지난 코드 리펙토링 작업을 어느 정도 마무리하고 회원가입 시 아이디 중복 검사 기능을 구현한다. 앞으로 진행할 작업 예정 리스트는 다음과 같다. 회원가입 시 아이디 중복 검사 기능 구현마이 페이지 생성 및 정보 수정 기능 구현게시판 생성 회원가입 시 아이디 중복 검사 기능 구현 추가한 아이디 중복 검사 기능이 어떻게 작동하는지에 대해 간단하게 설명하자면 회원가입 시 아이디 입력은 '아이디 중복 검사' 버튼을 통해서만 가능하다. 아이디 중복 검사 버튼을 누르게 되면 check_id.php 페이지를 팝업창으로 띄우게 되며 해당 페이지에서 가입에 쓰일 아이디를 입력하고 중복여부를 판별한다.중복되지 않는 경우 사용가능하다는 코멘트가 출력됨과 동시에 해당 아이디..
2023.11.14 -
[normaltic 취업반 5기] 2023-11-08 3주차 과제 : 추가 과제
JWT (JSON Web Token) JWT는 쿠키, 세션에 이은 인증 프로토콜 중 하나이다. 다만 쿠키나 세션 같이 어느 한 곳에 사용자 정보를 저장하는 방식이 아니라 토큰에 사용자 정보를 저장하여 인증하는 방식이다. 또한 토큰이 탈취되어 데이터가 위변조 된 상태로 요청되어도 위변조 검사가 가능하기 때문에 로그인 유지 및 식별에 많이 사용된다. JWT의 구조 JWT는 '.'을 구분자로, base64로 Header와 Payload를 인코딩한 값과 인코딩하지 않은 두 값에 비밀 키를 합쳐서 암호화한 값인 Signature로 구성되어 있다. 그럼 Header와 Payload, 그리고 Signature에 대해 알아보자. Header Header는 JSON 객체로 이루어져 있으며 암호화 알고리즘과 토큰의 타입에..
2023.11.11 -
[Web Application-개발] 2023-11-11 웹 어플리케이션 제작 프로젝트 : 코드 리펙토링 및 추가 기능 구현 #6
프로젝트 일지 회원가입 기능 및 세션 설정 작업까지 어느 정도 구현을 진행했으니 코드 리펙토링 및 유효성 검사 같은 디테일한 부분을 챙길 차례이다. 앞으로 진행할 작업 예정 리스트는 다음과 같다. 반복되는 코드의 함수화 및 파일 분리비밀번호 해시 작업 후 DB에 저장하여 로그인 시 비밀번호 유효성 검사form 태그 내 유효성 검사회원가입 시 아이디 중복 체크 기능 구현웹 디자인 작업 반복되는 코드의 함수화 및 파일 분리 1) db.phpDB와의 연결과 쿼리문을 사용할 시 중복되는 코드 및 길어지는 코드가 생겨 db.php 파일 안에 입력하고 쿼리문 관련 기능 함수 생성 2) common.jslogin.php 페이지와 sign_up.php 페이지에서의 유효성..
2023.11.11 -
[normaltic 취업반 5기] 2023-11-08 3주차 과제 : 3번 과제
3번 과제 목표 기능 : 로그인 페이지 로직 4개 구현 식별/인증 동시 식별/인증 분리 식별/인증 동시 with Hash 식별/인증 분리 with Hash 식별/인증 동시 수행 with Hash 1. 로그인 성공, 2. 비밀번호가 틀린 경우, 3. 아이디가 틀린 경우 식별/인증을 동시에 수행하는 경우 입력된 아이디와 비밀번호가 동시에 일치하는 데이터를 DB에서 조회한다. 조회된 결과가 존재하는 경우 로그인에 성공하고, 존재하지 않는 경우 로그인에 실패한다. 식별/인증 분리 수행 with Hash 1. 로그인 성공, 2. 비밀번호가 틀린 경우 식별/인증을 분리해서 수행하는 경우 입력된 아이디와 일치하는 데이터를 DB에서 조회한다. 조회된 결과(입력된 아이디가 DB에 존재)가 존재하는 경우 입력된 비밀번호와..
2023.11.11