SQL(7)
-
WebGoat - string sql injection
WebGoat의 sql injection 분야에서 String 문제입니다. 요약하면~~사용자 이름으로 Smith를 사용하여 모든 신용카드 번호가 표시되도록 해야하는 문제인 것 같다. Smith를 입력해보자.LAST_NAME이 Smith인 것들만 출력이 된 것 같다. Smith를 입력하되 모든 내용이 출력되게 하려면sql injection의 기본적인 문법인 ' or '1' = '1 을 입력하면 된다. 쉽네^~^
2024.07.11 -
실용 sql 5장
COPY를 사용하여 데이터 가져오기 COPY table_name --COPY : 대상 테이블의 이름 FROM 'CSV 파일의 경로' --FROM : 이름을 포함하여 소스 파일의 전체 경로를 식별 WITH (FORMAT CSV, HEADER); --WITH : 원하는 옵션을 괄호로 감싸 입출력 파일에 맞게 조정할 수 있는 옵션을 지정할 수 있게 해줌 입출력 파일 형식 FORMAT format_name : 읽거나 쓰는 파일의 유형을 지정 형식 이름 CSV TEXT(탭 문자는 구분 기호 기본값, 백슬래시 문자는 해당 ASCII 문자로 인식) BINARY(일련의 바이트로 저장) 헤더 행 포함 여부 HEADER : 소스 파일에 제외할 헤더 행이 있음을 지정 헤더의 열 이름이 테이블의 데이터 일부가 되지 않도록 파..
2023.11.26 -
실용 sql 4장
char(n) : 입력한 n에 따라 길이가 고정된 열이 정의 varchar(n) : 최대 길이가 n으로 정의되는 가변 길이 데이터 타입을 담은 열 text : 길이 제한이 없는 가변 길이 데이터 타입을 담은 열 COPY - 데이터를 추출해 지정한 경로에 텍스트 파일을 생성 COPY table_name FROM --가져오기 기능 COPY table_name TO --내보내기 기능 정수 타입 smallint : 2바이트 < integer : 4바이트 < bigint : 8바이트 날짜와 시간 타입 timestamp : 8바이트 : 날짜와 시간 date : 4바이트 : 날짜 time : 8바이트 : 시간 interval : 16바이트 : 시간 차이
2023.10.16 -
실용 sql 3장
SELECT 문 -: 데이터베이스 안에 단긴 테이블에서 행과 열을 불러옴 - 하나의 테이블 안에 담긴 모든 내용을 불러올 수 있음 - 여러 수식을 섞어 복잡하게 입력하면 수십 개의 테이블 속에서 정확한 기준으로 필터링된 데이터를 얻을 수 있음 - ex) 열들의 이름을 쉼표로 구분해 작성하면 입력한 열들의 정보만 받아올 수 있음 SELECT * FROM ... ; 테이블의 모든 행을 보는 방법 1. 생성한 데이터베이스 > schemas > public > table > 생성한 테이블 우클릭 > view/edit data 2. TABLE teachers; ORDER BY - 결과의 순서를 정렬 - 오름차순 정렬이 기본값(오름차순: ASC, 내림차순: DESC) SELECT first_name, last_na..
2023.10.09 -
실용 sql 2장
쿼리도구 Alt+Shift+Q 데이터베이스 생성 CREATE DATABASE ...; CREATE TABLE문 CREATE TABLE teachers ( --테이블 생성 id bigserial, --id열의 데이터 타입은 bigserial first_name varchar(25), last_name varchar(50), school varchar(50), hire_date date, salary numeric ); bigserial 테이블에 행을 추가할 때마다 자동으로 증가하는 특별한 정수 타입 varchar 괄호 속에 적힌 숫자만큼 최대 길이가 정해진 문자 타입 테이블 생성 확인: databases > 생성한 데이터베이스 > schemas > public > tables 데이터항목 확인: table ..
2023.10.09 -
[WEB] command injection
injection: 악의적인 데이터를 프로그램에 입력하여 이를 시스템 명령어, 코드, 데이터베이스 쿼리 등으로 실행되게 하는 기법command injection: 이용자의 입력을 시스템 명령어로 실행하게 하는 취약점- 명령어를 실행하는 함수에 이용자가 임의의 인자를 전달할 수 있을 때 발생- 리눅스 셸 프로그램이 지원하는 다양한 메타문자로 인해, 이용자의 입력을 제대로 검사하지 않으면 임의 명령어가 실행될 수 있다메타문자설명ex' '명령어 치환' ' 안에 들어있는 명령어를 실행한 결과로 치환$ echo `echo theori`theori$()명령어 치환$() 안에 들어있는 명령어를 실행한 결과로 치환. 중복 사용 가능 ( echo $(echo $(echo theori)) )$ echo $(echo the..
2023.08.30