전체 글
게시판 만들기 _파일 업로드
파일 정보 저장 DB 테이블 생성 CREATE TABLE board1_file ( id INT(11) AUTO_INCREMENT PRIMARY KEY, filename VARCHAR(25) NOT NULL, filesize INT(11) NOT NULL, uploader VARCHAR(25) NOT NULL, uploadDate DATE NOT NULL, boardNO INT(6) NOT NULL, contentNO INT (11) NOT NULL );
CSRF_3
우선 페이지는 1,2와 같다. 게시글의 XSS 또한 똑같이 통함을 확인 하였다. 다만 회원정보 수정페이지에서 다른점을 발견하였다. CSRF토큰이 존재한다는 것이다. 따라서 이 CSRF토큰을 가져와 같이 전송을 하기 위해서 우리는 iframe창을 두개를 만들어 하나는 CSRF토큰을 로드하고 나머지 하나는 CSRF토큰을 삽입한 폼을 전송 할 것이다.
CSRF attack scenario
1. 계정의 설정 변경 CSRF를 통해 계정의 설정을 변경하는 것이 가능하다. 만약 피해자가 특정 링크를 클릭한다고 해보자. 그런데 그 링크에서는 계정 설정을 변경하는 페이지에 요청을 보내는 링크가 포함되어있거나 XSS를 통해 바로 요청을 보내도록 한다고 해보자. 그렇다면 로그인 된 피해자의 계정의 요청으로 설정 변경 요청을 보냈기 떄문에 계정의 설정이 변경될 것이다. 2. 계정 정보 취득 설정 변경 뿐만이 아니라 이미 등록되어있지만 피해자만이 볼 수 있는 페이지에서만 나오는 정보를 취득 할 수도 있을 것이다. 예를들면 마이페이지에 나와있는 주소나 전화번호, 이메일 등이 있을 수도 있으며 계정 설정 변경 페이지에서 현제 입력된 정보가 value 혹은 placeholder속성의 내용을 가져올 수도 있을 것..
파일 업로드 구현 요소 및 원리
파일 업로드 구현시 필요한 요소 1. 파일 업로드 폼 만들기 2. 파일 업로드 폼을 통해서 특정 디렉토리에 파일을 저장 3. 파일 업로드 폼을 통해 전송된 파일 이름과 업로더, 날짜, 업로드 위치(게시물번호) 등을 DB에 저장 파일 업로드 원리 1. 클라이언트(웹 브라우저)에서 파일을 선택하여 서버로 전송. 이를 위해 HTML 폼을 사용하고, 폼 필드에 파일 선택(input type="file")을 추가한다. 2. 클라이언트에서 전송한 파일은 서버로 POST 또는 PUT 요청을 통해 전송. 이때, 파일은 임시 디렉토리에 저장됨. - 임시 디렉토리는 특수 목적을 위해 임시적으로 파일을 저장하는 공간으로 목적을 달성하면 일반적으로 삭제된다. 3 .서버는 업로드된 파일을 임시 디렉토리에서 원하는 디렉토리로 이..
2023.05.25
- SQL Injection - XSS - CSRF - File Upload/ Download - 인증/인가 xpath XSSE OS injection 등 모두 xpath 공격 CSRF : 피해자가 자신도 모르게 임의의 요청을 보내는 공격 CSRF/ XSS 차이 : 두 공격의 정의를 한번 짚어주는 것이 좋음. CSRF에서 XSS를 사용하면 공격 성공률이 증가함. 서버측 공격(but. 이용자인 클라이언트를 공격하나 서버에게 요청을 하기에 서버측 공격이라 표현하기도 함.) CSRF 발생 위치 : 모든 요청 -> 컨설턴트의 주관이 필요함. ex) 게시판 글작성. but 관리자만이 쓸 수 있는 곳. or 광고글을 사용 가능한 곳 - 공격 기법 ( 무조건 로그인 상태에서 공격됨) 1) GET Method : UR..