본문 바로가기
Web Hacking

웹 해킹 (Web Hacking)을 시작하기전에 웹 (Web) 이란?

by zz! 2024. 5. 19.
728x90

웹 해킹에 대해 공부를 하기전에, 웹 (Web)이 무엇인지 알아보고 웹 해킹에 대해 공부를 해보겠습니다.

웹 해킹은 개발이 곧 웹 해킹이라는 실력이므로, 웹 개발에 대한 지식이 매우 중요하다고 볼 수 있습니다.

 

 

목차

1. 웹 (Web) 이란?

2. 웹 (Web)의 역사

3. 웹 (Web)의 구성 요소

4. 웹 (Web)의 발전

5. 웹 해킹(Web Hacking) 이란?

 

1. 웹 (Web) 이란?

웹(Web)은 월드 와이드 웹(World Wide Web)의 줄임말로, 전 세계의 컴퓨터와 인터넷을 통해 서로 연결된 거대한 정보 네트워크를 의미합니다. 웹은 우리가 인터넷을 통해 다양한 정보를 검색하고, 웹 사이트를 탐색하며, 소셜 미디어를 이용하고, 온라인 쇼핑을 하는 등 일상에서 경험하는 대부분의 디지털 활동의 기반이 되고 있습니다.

 

2. 웹 (Web)의 역사

웹의 개념은 1989년, 스위스의 유럽 입자 물리 연구소(CERN)에서 일하던 팀 버너스 리 박사에 의해 처음 제안이 되었습니다. 정보의 공유와 접근을 용이하게 하기 위해서 HTML(하이퍼텍스트 마크업 언어), URL(통합 자원 식별자), HTTP(하이퍼텍스트 전송 프로토콜)와 같은 웹의 기본 기술을 개발하였습니다. 

1991년, 세계 최초의 웹 사이트가 CERN의 서버에서 공개되었으며, 이는 곧 전 세계로 퍼져 나가 오늘날 우리가 알고 있는 거대한 인터넷 세상이 되었습니다.

 

3. 웹 (Web)의 구성 요소

3.1 웹 브라우저 (Web Browser) : 사용자가 웹 페이지를 검색하고 탐색할 수 있게 해주는 소프트웨어입니다. 

ex) 구글 크롬, 모질라 파이어폭스, 마이크로소프트 엣지 등이 있습니다.

3.2 웹 서버 (Web Server) : 웹 페이지와 리소스를 저장하고 ,클라이언트(웹 브라우저)의 요청에 따라 해당 리소스를 전달하는 역할을 합니다.

3.3 HTML (하이퍼텍스트 마크업 언어) : 웹 페이지의 구조를 정의하는 언어로, 웹 문서의 뼈대를 구성합니다.

3.4 CSS (케스케이딩 스타일 시트) : 웹 페이지의 디자인과 레이아웃을 정의하는 언어로, HTML과 함께 사용합니다.

3.5 Javascript : 웹 페이지에 동적인 기능을 추가하기 위한 프로그래밍 언어입니다.

 

4. 웹 (Web)의 발전

웹은 초기에 단순한 문서 공유 시스템에서 현재의 복잡하고 풍부한 기능을 제공하는 멀티미디어 플랫폼으로 발전해 왔습니다. 

4.1 웹 1.0 : 정적 웹 페이지 중심의 초기 웹입니다. 사용자는 정보를 읽기만 할 수 있으며, 상호작용이 제한적이였습니다.

4.2 웹 2.0 : 사용자 생성 콘텐츠와 소셜 미디어의 등장으로 웹이 더욱 상호작용적이고 동적으로 변했습니다. 블로그, 위키, SNS 등이 이 시기에 발전했습니다.

4.3 웹 3.0 : 의미론적 웹(Semantic Web) 또는 지능형 웹으로, 데이터의 의미를 이해하고 해석하여 더 나은 검색과 사용자 경험을 제공하는 웹입니다. 인공지능(AI)와 머신러닝(ML) 기술이 통합되어 있습니다.

 

5. 웹 해킹(Web Hacking) 이란?

웹 해킹(Web Hacking)은 웹 애플리케이션, 웹 사이트 또는 웹 서버의 보안 취약점을 악용하여 무단으로 접근하거나 손상시키는 행위를 말합니다. 웹 해킹은 민감한 정보를 탈취하거나, 웹 사이트를 변조하거나, 서비스 장애를 일으키는 등 다양한 형태로 발생할 수 있습니다.

웹 해킹의 주요 유형

여기서는 간단히 이런 공격이구나 하고 알아보도록 하겠습니다.

1. SQL 인젝션 (SQL Injection)

- 공격자는 웹 애플리케이션의 데이터베이스에 직접 SQL 명령어를 삽입하여, 데이터를 무단으로 조회, 수정, 삭제할 수 있습니다. (데이터베이스 라고 하면, ex) 사용자들의 개인 정보가 포함되어 있는 데이터들을 무단으로 조회, 수정, 삭제 할 수 있다고 생각하시면 되겠습니다.)

2. 크로스 사이트 스크립팅 (XSS: Cross-Site Scripting)

- 공격자는 웹 페이지에 악성 스크립트를 삽입하여 사용자에게 피해를 줄 수 있습니다. 이 스크립트는 사용자의 브라우저에서 실행되며, 쿠키 탈취, 피싱 공격 등에 사용이 되고 있습니다.

3. 크로스 사이트 요청 위조 (CSPF: Cross-Site Request Forgery)

- 공격자는 사용자가 인식하지 못한 상태에서 웹 애플리케이션이 수행할 수 있는 특정 동작을 요청하도록 만듭니다.

ex) 사용자가 특정 웹 사이트에 로그인된 상태에서 다른 사이트를 방문했을 때, 의도치 않은 요청을 전송하게 하는 공격입니다.

4. 파일 업로드 취약점 (File Upload Vulnerabilities)

- 공격자는 악성 파일을 업로드하여 서버에서 실행되도록 만들 수 있습니다. 이 파일은 웹 셸(Web Shell) 형태로, 서버에 대한 원격 제어 권한을 제공할 수 있습니다.

5. 디도스 (DDoS : Distributed Denial of Service)

- 여러 대의 장치에서 동시에 웹 서버를 공격하여 과부하를 일으키고, 정상적인 서비스 제공을 방해하는 공격입니다.

728x90