Oh! JUN
ORACLE 메타데이터 목록화 본문
ORACLE
- 사용자 단위로 테이블이 구분이 되어있음
- DB가 나누어져 있지 않음
DBA_TABLES / DBA_TAB_COLUMNS : 데이터베이스의 모든 테이블 / 컬럼 정보(DBA 권한)
★ ALL_TABLES / ALL_TAB_COLUMNS : 현재 사용자가 접근 가능한 모든 테이블 / 컬럼 정보
USER_TABLES / USER_TAB_COLUMNS : 현재 사용자가 생성 / 소유하는 테이블 / 컬럼 정보
순차적 목록화
select * from all_users;
- 모든 사용자를 조회한다.
- ORACLE은 MYSQL처럼 DB가 여러개 존재하지 않고, 사용자와 테이블과 매핑되어있다.
select DISTINCT owner from all_tables;
- 모든 테이블에서 owner를 중복제외하고 조회한다.
select user from dual;
- 현재 사용자 명
select * from all_tables where owner='C##CREHACKTIVE';
- 현재 사용자 명에 대한 모든 테이블 정보 조회
select * from all_tab_columns where owner='C##CREHACKTIVE' and table_name='MEMBERS';
- 현재 사용자 명에서 테이블 이름이 memebers인 모든 컬럼 정보 조회
select id, password, jumin from C##CREHACKTIVE.members;
- 현재 사용자 명에서 테이블 이름이 memebers인 id, password, jumin 정보 조회
비순차적 목록화
select table_name from all_tables where owner='C##CREHACKTIVE' and table_name like '%MEM%';
- 현재 사용자 명에서 테이블 이름에 MEM이 포함된 테이블을 조회
select * from all_tab_columns where owner='C##CREHACKTIVE' and table_name='MEMBERS';
- 현재 사용자명에서 테이블 이름이 MEMBERS인 컬럼 조회
select table_name, column_name from all_tab_columns where owner='C##CREHACKTIVE' and column_name like '%JUMIN%';
- 현재 사용자명에서 컬럼 이름이 JUMIN인 컬럼에 대해서 테이블이름, 컬럼이름을 조회
'웹 해킹 > SQL Injection' 카테고리의 다른 글
ORACLE ERROR-BASED 공격 실습 (0) | 2022.08.23 |
---|---|
MYSQL ERROR-BASED 공격 실습 (0) | 2022.08.18 |
MYSQL 메타데이터 목록화 (0) | 2022.08.16 |
ORACLE 순차적 레코드 출력 실습 (0) | 2022.08.14 |
MYSQL 순차적 레코드 출력 실습 (0) | 2022.08.12 |