본문 바로가기
웹 해킹

웹 해킹 1

by 윤라경 2024. 7. 15.

[2024.07.11 ~ 2024.07.15]

 

웹 보안

 

 

Hacking and Vulnerability

 

정보 자산

1) 인적 자산, 인적 보안(중요)

2) 물적 자산

 

Threat -> 위협(위험의 원인)

Asset -> 자산

Vulnerability -> 취약점(정보 자산이 가지고 있는 허점)

Risk -> 위험(사건 발생 가능성)

Loss -> 손실

 

위협이 존재하더라도 정상 사용자를 위해서라도 80번 포트를 열어 놔야 한다

 

*위험은 100% 제거할 수 없으며, 줄일 뿐이다

 

 

Information Sercurity Component

 

정보 보안의 3요소 / 목표

Confidentiality -> 기밀성, 비밀성

Intergrity -> 무결성

Availability -> 가용성

 

3요소 외의 요소 및 보안 기술

Identication -> 식별

Authentication -> 인증(중요)

Authorization -> 권한 부여

Accounting -> 회계 또는 계정 관리

Non-Repudiation -> 부인 방지

Access Control <- 접근 통제(중요)

 

정보 보안이란 기밀성, 무결성, 가용성을 보장해 주는 활동이다

 

 

Web Hacking Process

 

PTES

- 모의 해킹 수행 표준

- 침투 테스트 과정을 7단계로 구조화

 

정보 수집 -> 침투 및 시스템 장악(중요) -> 공격 전이

 

*실무에서는 PTES라는 수행 표준이 있기 때문에 절차를 따라서 수행한다

 

 

Web Architecture and Component

 

DBMS

- MySQL

- Oracle

- MS-SQL

 

APM Package

- Apache

- PHP

- MySQL

 

웹 보안 실습을 위해 설치해야 될 프로그램

1) CentOS 7

2) Kali Linux

3) Windows 2008 Server, Windows 10

4) DVWA(웹 취약 서버)

5) OWASP

- ZAP(취약점 분석 및 공격 도구)

6) Burf Suite

 

화면에서 Web Client와 Web Server와 제일 중요하며,

그 중에서도 Web Server를 제일 중요하게 보면 된다

 

 

DNS & Web, DB

 

DNS Server도 중요하지만,

Web Framework인 Client와 Server를 집중적으로 실습을 진행할 예정이다

 

 

Web Architecture and Component

 

Protocol -> 통신 규약

언어로 통신을 많이 하며, Client와 Server 사이에 Protocol을 사용한다

 

고유 식별자

1) 주민등록번호

2) 운전면허번호

3) 여권 번호

4) 외국인등록번호

 

ex)

이름의 경우 동명이인이 있을 수 있지만 주민등록번호라는 식별자로 찾아낸다

 해당 화면의 경우에도 Port 번호의 식별자를 통하여 찾아낼 수 있는 점을 확인할 수 있다

 

 

Web Architecture and Component(Web Proxy)

 

Web Proxy -> 대리자

 

Web Proxy의 장점

1) 캐싱 -> 부하 감소, 응답 시간 단축, 대역폭 절감

2) 인증 -> 보안 강화, 사용자 관리, 로그 및 감사

 

*보통의 경우에는 Client와 Server지만 중간에 Web Proxy가 있을 수도 있으며,

웹 공격이나, 스캔을 할 때에는 Web Proxy라고 생각하면 된다

 

 

Web Client and Server Communication

 

Web Browser와 Web Server 간에 HTTP가 존재한다

 

 

URL/URN/URI

 

www.domain.com -> FQDN

www.test.co.kr의 경우 www는 host, test.co.kr의 경우에는 Domain이다

 

 

OSI 7 Layer Model vs TCP/IP Model

 

Data Link, Physical의 1, 2계층은 Network Interface라고도 한다

 

1, 2, 3, 4계층의 경우 Lower로 하위 계층, 5, 6, 7계층의 경우 Upper로 상위 계층이다

 

Application -> SSH, PGP, PEM(22 Port)

Presentation -> Encoding, Decoding, Encryption

Transport -> SSL, TLS(443 Port)

Network -> IPSec

Data Link -> PPTP, L2F, L2TP

 

물리 계층이 보안과 가장 거리가 멀다

 

*Port 번호의 경우 단순히 Port 번호가 아니라, 서비스 식별자로 봐야 된다

 

 

OSI 7 Layer Reference Model

Network -> 논리적 LLC

Physical -> 물리적 MAC 주소

 

Switch는 1, 2계층을 수행하는 장비이며,

Router의 경우는 상위에 두고 보면 된다

 

Transport -> L4 Switch

Network -> Router, ARP

Data Link, Physical -> MAC

 

Data Link 계층까지만 작동이 된다면 데이터 전송이 될 준비는 끝났다고 보면 된다

 

 

이 중에서 IP와 ICMP가 제일 상위 프로토콜이다

 

Link 계층 -> PPTP, L2F, L2TP

IP 계층 -> IPSec

 

*PPTP는 MS, L2F는 Cisco

 

[TCP 포트 사용 번호]

 

 

네트워크 해킹 2

해킹의 기초 단계1) 정보 수집(중요)2) 침투 및 시스템 장악3) 공격 전이 PTES(모의해킹 수행 표준) -> 8단계로 수행 OSI 7 Layer Model vs Tcp/IP Model [OSI 7 Layer Model] OSI 7계층 중에서 가장 보안과 가장 관

rasaqwe.tistory.com

 

포트 사용 번호 부분의 경우 네트워크 해킹 초반부에 기재해 두었다

 

 

네트워크 해킹 3

Ethernet Frame ARP Header Ethernet and ARP Header  IPv4 Header TCP Header  *Check Sum -> 오류를 체크 UDP Header *Check Sum -> 오류를 체크 TCP VS UDP[TCP]1) 연결형2) 신뢰성TCP는 4계층인  Transport 계층이며, 4계층은 신

rasaqwe.tistory.com

 

Header의 경우에도 해당 페이지로 외울 수 있도록 암기가 필요하다

 

*Header의 경우 검색 시 나오는 이미지로 추가 학습이 가능하다

 

 

Encapsulation and Decapsulation

 

5, 6, 7계층의 경우 Message -> PDU

 

Network까지를 데이터 계층으로 본다

 

*계층 사이에 NIC가 존재하게 된다

 

 

TCP Header

 

TCP는 20Byte다

 

TCP/SSL(TLS) Handshake

 

TCP 3-Way Handshake(Connection) / TCP 4-Way Handshake(Disconnection)

왼쪽 3-Way, 오른쪽 4-Way

 

연결을 할 때는 3-Way Handshake, 끝날 때는 4-Way Handshake

 

 

TCP 3-Way Handshake + SSL/TLS

 

 

 

HTTP Request Message, HTTP Response Massage는 구분할 줄 알아야 된다

 

HTTP

- L7

- 80번 포트00

- HTML

 

HTTP Protocol

 

무상태성과 비연결성이 HTTP의 중요한 점이다

 

P2P = Peer to peer

- 한쪽이 서버가 될 수도, 클라이언트가 될 수도 있다

 

클라이언트를 자식, 서버를 부모로 생각하면 편하다

 

 

현재 HTTP는 Stateless이다

 

 

HTTP Method

 

GET과 POST를 가장 많이 사용하며,

GET 요청은 보안에 취약하고, POST는 보안에 강하다

 

GET, POST, PUT, DELETE는 알아두고,

Proxy에 사용되는 CONNET, OPTIONS, TRACE, PATCH도 알아두면 좋다

 

 

해당 화면의 내용도 읽어 보는 게 좋다

 

 

HTTP Status Code

 

200 OK

400번대에 404 File Not Found, 403 Forbidden

500번대에서는 500 Interner Server Error

 

위의 코드 정도는 알아두는 게 좋다

 

 

HTTP Header

 

1) 암호화

2) 난독화

3) Binary 컴파일

 

 

HTTP Request / HTTP Response

왼쪽 Request, 오른쪽 Response

 

 

SSL / TLS

 

IETF에서 TLS를 개발했으며,

SSL/TLS는 서버 간의 상호 인증을 한다

 

https -> 웹 브라우저만 설치하면 사용 가능

shttp -> 원조지만 불편해서 사용하지 않는다

 

shttp를 사용하지 않는 이유는,

필요한 것들을 모두 설치해야 되기 때문이다

 

PGP

PEM

PGP와 PEM을 볼 때도 PEM이 원조지만 PGP를 더 많이 사용한다

 

 

*현재는 MD5를 사용하지 않는다

 

 

미국에서는 DES를 사용하다 현재는 AES를 사용하고 있다

우리나라의 경우 SEED, ARIA, HIGHT, LEA를 사용 중에 있다

DES의 기반이 SEED, AES 기반이 ARIA다

 

MD5, SHA-1 SHA-2(SHA-224, SHA-256, SHA-384, SHA-512)

MD5 -> 128Bit

SHA-1 -> 160Bit

 

비트 수가 낮기 때문에 깨지고

일방향, 양방향 해시 함수로 암호화를 시킨다

해시 함수의 경우 키가 없기 때문에 일방향으로 암호화를 시킨다

또 충돌성을 줄이기 위해 비트 수를 늘려가는 걸로 만들게 된다

 

X.509 -> 공인인증서 = PKI

 

암호화 강도: 키 길이

 

*현재는 SHA-1도 사용하지 않고 있다

 

 

 

강의 소감

며칠에 걸쳐 웹 보안의 이론이 어느 정도 정리됐다

아직 마무리 지은 건 아니지만 그래도 많은 분량의 이론을 배웠다

네트워크 보안의 첫부분과 매우 유사하지만, 다른 점도 분명히 존재하고

또 웹 보안만의 특징도 이론에 다 포함되어 있는 것 같다

웹 보안의 시작인 만큼 해당 내용들을 반복적으로 복습해야겠다

 

출처 - 정보 보안 박성업 강사님 제공

'웹 해킹' 카테고리의 다른 글

웹 해킹 6  (1) 2024.07.22
웹 해킹 5  (0) 2024.07.21
웹 해킹 4  (1) 2024.07.19
웹 해킹 3  (1) 2024.07.17
웹 해킹 2  (0) 2024.07.17