File upload – MIME type 문제 접근하는 법을 모르겠어서 라이트업을 참고했다 위와 같이 웹쉘을 만들어준다. 저장할 때 확장자를 php로 설정한다. 이후 upload한다. 이때 burp suite 프록시 설정을 하여 전송 직전 burp suite를 경유하게 한다. 중간에 Content-Type을 확인한다. application/octet-stream으로 설정되어 있다. 이것을 image/png로 수정하면 파일이 업로드 가능하다. 업로드된 webshell을 클릭한다. ?cmd=필요한 명령 을 입력하여 시스템 명령을 실행할 수 있다. ?cmd=id를 입력하였을 때 ?cmd=ls -al /challenge/web-serveur/ch21/ 위 경로에 .passwd 파일이 존재하는 것을 확인할 수 ..
File 취약점 문서화 및 대응방안 정리 File Vulnerability: 파일로 인해 웹 어플리케이션에 명령 실행하는 취약점 1. File Upload Vulnerability 파일을 웹서비스에 업로드하는 과정에서 발생하는 취약점 - 파일 시스템 특정 경로에 원하는 파일 업로드 - 악성 확장자를 갖는 파일 업로드 조건: 이용자가 파일 이름을 정할 수 있을 때 발생 웹 쉘(웹을 통해 시스템 명령 가능) 파일 업로드 후 시스템 명령 실행 1) Path Traversal: 원하는 디렉토리에 파일을 업로드할 수 있을 때 발생하는 취약점 2) 악성 파일 업로드: 악성 파일인지 제대로 검사하지 않을 때 발생하는 취약점 개발 언어에 따른 공격 가능 확장자 정리 환경 공격 가능 확장자 ASP asp,aspx,htm..
orge pw를 get함 이미 id는 채워져 있고 뒤에 pw가 맞는지 확인하기 때문에 권한 우회는 아닌 거 같다 pw’ or id=’admin’ and length(pw)=1# 쿼리에 pw’ or id=’admin’ and length(pw)=1%23 HeHe가 뜸 or와 and 우회필요 pw’ || id=’admin’ && length(pw)=1%23 왜인지 모르게 쿼리문이 계속 잘렸다 pw 길이의 조건만 넣었더니 hello admin이 떴다 이제 pw 구해야 한다 수업 자료에 써있는 코드 참고해서 작성해봤다 import requests import string url="https://los.rubiya.kr/chall/orge_bad2f25db233a7542be75844e314e9f3.php?pw=%..
SQL 인젝션 공격 유형 및 대응 방안 문서화 In-band SQLi 1) Error-based: 쿼리문에 오류 발생 -> 시스템 권한 체크 우회 -> 에러메세지 출력 에러메세지에 원하는 정보 첨부 가능 ex: 로그인 페이지에서 user_id와 user_pw를 입력 받을 때, SELECT user FROM users WHERE uid = 'user_id' AND upw = 'user_pw'; SELECT user FROM users WHERE jid = '' OR 1 = 1 -- user_id에 ' OR 1 = 1 --(공백)을 넣으면 users 테이블에 있는 user 정보 모두 확인 가능 자주 쓰이는 함수 updatexml (null,concat(0x3a,실행할 쿼리문)),null); extractva..
1. server 네트워크 -> 클라이언트로 서비스 제공 웹 서버: 클라이언트가 페이지 요청 시 정적 컨텐츠 제공 *정적 컨텐츠: .html, png, css 등... 작동순서 1) 클라이언트가 서비스 요청 2) 요청에 응답하여 처리 3) 서버 처리 결과를 반환 4) 클라이언트가 반환값을 받음 database : 데이터의 집합 DBMS : 데베를 관리하는 소프트웨어 관계형 데이터베이스-> 데이터에 관계 개념 부여 table, field, row로 구성 사용되는 언어 -> SQL 2. db-mysql 실습 - 3. sql injection 취약점을 이용해 sql문 삽입 -> db가 비정상적인 동작 임의 계정에 로그인/계정 삭제/데이터베이스 정보 유출 가능 SQL 연산자 OR || AND (or보다 우선순위..
1. MySQL 실습 데이터 베이스 swu 생성 CREATE DATABASE 데이터베이스_제목; 테이블 courses 생성 USE 접속할_데이터베이스_제목; CREATE TABLE 테이블_이름(이름 데이터_타입(), 이름 데이터_타입() ... ); 데이터 삽입 더보기 type:전필 lec:컴퓨터 알고리즘 credit:3 type:전필 lec:현대 암호학과 기초 credit:3 type:전선 lec:C++ 프로그래밍 credit:3 type:전선 lec:리눅스 프로그래밍 credit:3 type:졸필 lec:소프트웨어 개발 실무 영어 credit:1 type:전필 lec:진로 탐색 세미나 credit:1 type:교필 lec:기독교개론 credit:2 type:교필 lec:바롬인성교육 credit:1 t..