본문 바로가기

SQL

(11)
[MYSQL공부] SQL 기본 문법 정리 > mysql -u root -p Enter password : 패스워드 입력 1) CREATE 구문 - 데이터베이스 생성 CREATE DATABASE [DB_NAME]; ex) CREATE DATABASE test_db; 2) CREATE 구문 - 테이블 생성 CREATE TABLE [NAME] ([COLUMN_NAME] [DATA_TYPE]); ex) CREATE TABLE test_tb (name char(20), age int); 3) DROP 구문 - 데이터베이스/테이블 삭제 DROP [DATABASE/TABLE] [NAME]; ex) DROP TABLE test_tb; > show databases; : database 목록을 출력 > create database example; : examp..
[WEB보안] Blind SQL Injection_if조건문 DB 종류 : MySQL 정상 파라미터 값 : bordid=no0001 ​ bordid=no'||'0001 → 파라미터 값 중간에 연결연산자 입력 후 응답값 확인 ​ bordid=no'||0||'001 bordid=no'||select 0||'001 → 연결연산자 '0'(참) 및 '1'(거짓) 입력 후 응답값 확인 ※ 에러 발생 시 "|| = URL 인코딩" ​ bordid=no'||____||001 1. (select+user()) → user() 값 검색 ​ 2. (substr((select+user()),1,1) → user() 값 첫글자 한글자 요청 ​ 3. (ascii(substr((select+user()),1,1)>100) → user() 값 첫글자 한글자 요청 값이 아스키코드 값으로 100..
[WAB 보안] XSS(Cross Site Scripting) 취약점 ※ 해킹 관련 게시글은 공부한 내용을 정리를 위한 목적으로 게시하였습니다. 꼭 가상 서버 및 연습 환경이 제공된 일부 사이트를 제외한 일반 사이트에 적용 및 악용 절대 금지합니다. 또한 블로그에서는 절대로 책임지지 않습니다. [ XSS (Cross Site Scripting) ] 1. 공격 원리 - 사용자로부터 입력된 정보를 검증하지 않는 경우 공격자가 악성 Script입력 - 서버를 공격하는 것이 아닌 서버를 경유하여 클라이언트를 공격 - Cookie Access - DOM Access - Clipboard Access - Key logging 2. 공격 유형 1) Stored XSS - 악성스크립트를 취약한 웹서버에 저장 ( 웹게시판 , 방명록 ) - 해당 게시물 열람한 사람이 Victim - 악성코..
[WEB 보안] Blind SQL Injection_case wher then 조건문 ※ 해킹 관련 게시글은 공부한 내용을 정리를 위한 목적으로 게시하였습니다. 꼭 가상 서버 및 연습 환경이 제공된 일부 사이트를 제외한 일반 사이트에 적용 및 악용 절대 금지합니다. 또한 블로그에서는 절대로 책임지지 않습니다. 1. DB 환경 : Oracle ​ 2. 목적 : user 이름 및 Database 이름 확인 ​ 3. 공격 순서 : 1) 정상 파라미터 값 bordid = no0001 ​ 2) 파라미터 값 중간에 연결 연산자 입력 후 응답값 확인 bordid=no0'||'001 ​ 3) 응답 값 확인(참, 거짓) bordid=no0'||0||'001 // 참 bordid=no0'||1||'001 //거짓 ​ 4) SELECT 구문 사용 가능 여부 체크 boardid=no0'||select+0||'..
[WEB 보안] SQL 연결연산자로 DB 확인 Oracle : 'foo'||'bar' Microsoft : 'foo'+'bar' PostgreSQL : 'foo'||'bar' Mysql : 'foo'%20'bar' (공백 두 문자열사이 공백) CONCAT('foo','bar')
[WEB 보안] SQL Injection-UNION Attack_2 ※ 해킹 관련 게시글은 공부한 내용을 정리를 위한 목적으로 게시하였습니다. 꼭 가상 서버 및 연습 환경이 제공된 일부 사이트를 제외한 일반 사이트에 적용 및 악용 절대 금지합니다. 또한 블로그에서는 절대로 책임지지 않습니다. 1. 목적 : SQL 이외의 데이터베이스에 대한 데이터베이스 내용을 나열하는 SQL Injection 공격 2. 방법 : 1) 관리자의 비밀번호 찾기 (1) '+UNION+SELECT+NULL,NULL-- ​ (2) '+UNION+SELECT+'abc','def'-- ​ (3) '+UNION+SELECT+table.name,+NULL+FROM+information_schema.tables-- ​ (4) '+UNION+SELECT+column_name,+NULL+FROM+informa..
[WEB 보안] SQL Injection-UNION Attack_1 ※ 해킹 관련 게시글은 공부한 내용을 정리를 위한 목적으로 게시하였습니다. 꼭 가상 서버 및 연습 환경이 제공된 일부 사이트를 제외한 일반 사이트에 적용 및 악용 절대 금지합니다. 또한 블로그에서는 절대로 책임지지 않습니다. 1. 목표 : 다른 데이터베이스 테이블에서 데이터 검색 2. 방법 : 1) 에러가 발생하지 않을 때까지 NULL을 증가하여 컬럼 갯수 확인 (1) '+UNION+SELECT+NULL-- (2) '+UNION+SELECT+NULL,NULL-- ... ​ 2) NULL 열에서 'a'가 들어가도 에러가 발생하지 않은 곳 찾기 (1) '+UNION+SELECT+'a',NULL,NULL-- (2) '+UNION+SELECT+NULL,'a',NULL-- (3) '+UNION+SELECT+NUL..
[WEB 보안] SQL Injection 취약점_기타 ※ 해킹 관련 게시글은 공부한 내용을 정리를 위한 목적으로 게시하였습니다. 꼭 가상 서버 및 연습 환경이 제공된 일부 사이트를 제외한 일반 사이트에 적용 및 악용 절대 금지합니다. 또한 블로그에서는 절대로 책임지지 않습니다. 1. 대역외(OAST) 기술을 사용하여 블라인드 SQL Injection 확용 : SQL 조회를 수행하지만 비동기적으로 수행, 사용자가 제어하는 시스템에 대한 대역 외 네트워크 상호 작용을 트리거하여 블라인드 SQL 주입 취약점을 악용 할 수 있다. 다양한 네트워크 프로토콜 사용, 그중에서 일반적으로 DNS(Domain Name Service)가 가장 효과적, DNS 쿼리를 트리거하는 기술을 사용중인 데이터베이스 유형에 따라 매우 다름. ​ 1) Microsoft SQL Server..