데이터 베이스
그냥 데이터 베이스는 가비지다.
데이터가 정돈되어 있는가가 가장 중요함.
Database
• DBMS : Database Management System
‐ Database를 구현하고 사용 가능하도록 작업 환경을 제공하는 소프트웨어
‐ 계층형 데이터베이스, 망형 데이터베이스, 관계형 데이터베이스
• RDBMS : Relational Database Management System → 관계형 데이터베이스
‐ RDB(관계형 데이터베이스)를 관리하는 소프트웨어
‐ Oracle, SQL Server, MySQL, DB2 ……
‐ 관계형 데이터베이스 ≒ 정보(사회활동부산물)
관계형 데이터베이스를 사용하는 이유 → 회사에서 사용하는 서류는 관계형 데이터베이스에 최적화되어 있기 때문
ㄴ 서식이 있어야지 관계형 데이터베이스가 된다.
ㄴ 서식이 없으면 다른 db에 넣는다.
RDB(Relational Database )
• 테이블로구성
‐ 열과 행으로 구성(column, row)
인스턴스 → 행(하나의 대상에 대한 정보.)
RDB는 인스턴스를 하나의 데이터라고 인식함.
테이블 → 인스턴스가 모인 것.
컬럼은 인스턴스의 속성을 나타냄.
데이터베이스 관리는 컬럼에 있다.
SQL(Structured Query Language)
사용하는 언어
사용자와 RDBMS랑 사용하는 언어
• DML(Data Manipulation Language)
‐ SELECT ‐ INSERT, UPDATE, DELETE → insert주로 사용.
• DDL(Data Definition Language) → 테이블 관리, 생성 제거 할 때 사용
‐ CREATE, ALTER, DROP
‐ RENAME
• DCL(Data Control Language)
‐ GRANT, REVOKE
• TCL(Transaction Control Language)
‐ COMMIT, ROLLB
- 영어와 매우 유사한 언어
- ‐ 단어의 구성과 순서가 고정
- ‐ 자연어에 가까움(쉬움) • 비절차적 언어
- ‐ 조건문(?), 순환문 없음
- .‐ 프로그래밍이 어려움 • 표준안이 제공된다.
ㄴ 컴퓨터가 실행하는 순서와는 다르다.
프로젝션(Projection) → 특정 데이터의 컬럼만 보기(모든 행을 본다.)
선택(Selection) → 내가 원하는 행만 본다.
조인(Join)→ 여러 테이블을 묶어서 보기.
SELECT문의 구조
SELECT * | [DISTINCT] 컬럼|수식 [AS 별명], ...... FROM 테이블명;
ㄴ 별명 중요.
- SELECT 절에는 출력대상을 기술한다.
‐ * 단독으로만 쓰인다.
‐ 컬럼, 수식 - FROM 절에는 테이블명을 기술한다.
‐ SELECT절과 FROM절은 생략할 수 없다.
특별한 SQL문
• 모든 테이블을 검색한다.
SELECT * FROM tab;
‐현재유저가 소유한 테이블목록을 확인한다.
‐ 유저, 스키마는 동일한 의미이다.
• 테이블 구조를 검색한다.
DESC 테이블;
- 테이블이 어떤 컬럼으로 구성되어 있는지 확인한다.
SQL 문의구조
- SQL 문은 다양한 유연성을 가진 비절차적 언어이다. C언어나 자바등과는 달리 다양한 순환 구조와 조건구문을 갖지는 않지만 자연어에 꽤 가까운 언어임으로 입 문시에 배우고 구사하는 것 이쉽다.
‐ SQL 문은 반드시 ';'으로 끝난다. → 반드시 결과가 나온다.(메시지 안 나오면 문제 생긴 거.)
‐ SQL 문은 대소문자를 구별하지 않는다. → 데이터는 구별하지만 문장은 구분 안 함.
‐ SQL 문은 여러 줄에 기술 가능하다.
. 들여 쓰기 가능하다.
‐ SQL 문은 반드시 결과(출력)가 존재한다.
테이블 구조와 내용검색
• 사원(emp) 테이블의 구조와 내용을 검색한다.
SQL> DESC emp; SQL> SELECT * FROM emp;
• 사원의 사 번과 이름을 검색한다.
SQL> SELECT eno, ename 2 FROM emp;
‐ 지문에 맞는 SELECT문을 검색한다.
‐ 지문을 해석하기 위해서는 테이블의 구조를 반드시 기억해야 한다.
- 두 문장 다 실행 속도는 똑같다.
올바른 데이터검색
SQL> SELECT ename, job FROM emp;
SQL> SELECT eno, ename, job FROM emp;
밑에 명령어처럼 데이터를 추출해야 한다.
ㄴ 독립적으로 구분되는 걸 추출해야 함.
• SQL문뿐 아니라 검색 결과도 문제가 없어야 한다.
‐ 검색결과는 질의의 의미가 충족 돼야 한다.
‐ 검색결과는 구분이 돼야 한다. -무결성
테이블은 2차원배열과다르다.
와이어 샤크
일단 서버 3대를 만든다.
window = 192.168.11.7
linux = 192.168.11.17
kali linux = 192.168.11.36
https://www.wireshark.org/#downloadLink -> 여기서 다운로드.(사실 여기서 npcap다운로드가 될 것입니다.)
https://www.winpcap.org/ -> winpcap, Npcap다운로드

Windows용을 설치 시에 WinPcap을 같이 설치한다.
• Winpcap는 NIC를 프러미스큐어스 모드(Promiscuous mode) 모드로 작동시킨다.
• Windows 계열의 OS는 OS레벨에서 프러미스큐어스 모드를 지원하지 않는다.
와이어샤크 = 캡처받은 패킷을 화면에 뿌려주는 역할을 하는 애.
npcap, winpcap = 실제 패킷을 캡처받는 놈.
디바이스 파일 통제 = winpcap, npcap
프러미스큐어스 모드로 바꾸면 목적지로 안되어있는 패킷도 받는다. → 유닉스에서만 지원함.

실행시키면 이런 화면이 뜨는데 불필요한 인터페이스가 있으니까 숨길 것입니다.
ctr + k를 눌러서 -> 인터페이스 관리를 눌러 표시할 인터페이스를 지정할 수 있습니다.

패킷 확인을 하면

ctr + m으로 마킹을 할 수 있다. 검은색으로 표시된 것이 마킹한 것.



지정한 패킷 내보내기를 통해서 내가 지정한 패킷만을 저장할 수도 있다.
다른 곳에서도 사용할 거면 pcap로 저장하는 것이 좋다.
캡처 필터

주소
- host #.#.#.# : host 192.168.11.12
- src host #.#.#.# : src host 192.168.11.13
- dst host #.#.#.# :dst host 192.168.11.14
- net #.#.#.#/# : net 192.168.11.0/24
- src net #.#.#.#/# : src net 192.168.11.0/24
- dst net #.#.#.#/# :dst net 192.168.11.0/24
- ether host #:#:#:#:#:# : ether host aa:bb:cc:dd:ee:ff
- ether src #:#:#:#:#:# : ether src aa:bb:cc:dd:ee:ff
- ether dat #:#:#:#:#:# : ether dst aa:bb:cc:dd:ee:ff
ether로는 거의 사용하지 않는다. 통신할 때 외부로 나가면 라우터 것의 mac주소로 바뀌기 때문이다.
포트
- port ## : port 80
- src port ## : src port 80
- dst port ## : dst port 21
- tcp port ## : tcp port 53
- udp port ## : udp port 53
- port 대신 portrange 설정 가능, ## 대신 ##-##으로 표기
프로토콜
• tcp, udp, icmp, icmp6, ipx, ip, ip6, arp, rarp 등
다중 필터
• and, or
ㄴ and를 사용 많이 함.
디스플레이필터


빨간색 동그라미 표시를 누르면 된다.
연산자
• ==, === : 같다.
•!=,!== : 다르다.
• <, >, <=, >=
• is present : 해당 필드가 패킷에 존재하는지 확인
- ip.src: 출발지 IP가 있는 패킷 (IPv4 패킷에만 존재)
- tcp.options.mss is present : TCP MSS 옵션이 포함된 패킷만
- http.host: HTTP Host 헤더가 존재하는 패킷만
- icmp: ICMP 프로토콜이 포함된 패킷만 (ping 등) • contains: 포함 (특정 문자열 포함)
• in:리스트 내 포함
'kh교육' 카테고리의 다른 글
| (20250910049) 데이터베이스 , 패킷, 해킹 툴 (0) | 2025.09.10 |
|---|---|
| (20250909048)데이터베이스, 패킷 이해 (0) | 2025.09.09 |
| (20250905046) kali리눅스 (0) | 2025.09.05 |
| (20250903046)image (0) | 2025.09.03 |
| (20250902046)data와 volume (0) | 2025.09.02 |