728x90

1️⃣ 보안(Security)이란?
보안은 정보(information), 시스템(System), 네트워크(NetWork), 데이터(Data)등을 보호하는 활동과 기술로 보안의 목표는 크게 세가지로 구분할 수 있습니다.
| 요소 | 설명 |
| 기밀성(Confidentiality) | 권한이 없는 사람이 접근하지 못하도록 보호함 |
| 무결성(Integerity) | 데이터가 위조, 변조되지 않도록 보호 |
| 가용성(Availability) | 정당한 사용자가 필요할 때 시스템과 데이터에 접근 가능 보장 |
- 보안의 추가 요소
- 인증(Authentication): 사용자가 누구인지 확인하는 요소(ex.로그인)
- 인가(Authorization): 사용자가 무엇을 할 수 있는 지 권한을 확인
- 부인방지(Non-repudiation): 행위자가 책임을 회피하지 못하게 보장
- 웹/서버 보안의 필요성
- 해킹, 악성코드, 데이터 유출, 렌섬웨어 등 보안의 위험이 존재
- 웹 서비스, 모바일 앱, IoT 등 디지털 시스템들이 주로 공격 대상임
2️⃣ 보안(Security) 공부를 하기위한 기본 환경 세팅(윈도우 기준)
- 가상화 환경을 통한 환경 구축(추천)
- 목적: 공격/실습 환경을 안전하게 분리하기 위함
- 사용전 Windows 기능 켜기 -> Hyper-V 비활성화
- 도구:
- 설치 단계
- VirtualBox 설치 - 설치 파일을 실행하여 단계에 따라 설치
- Kali Linux ISO 다운로드 - Kail Linux ISO 페이지로 이동해 설치
- 설치: 위 가상화 환경에 ISO를 연결 후 설치(설치법 링크)
- 학습 내용 정리
- 목표: 정보 보안 3대요소(CIA: 기밀성, 무결성, 가용성)
- 인증(Authentication), 인가(Authorization), 부인방지(Non-repudiation)
- HTTP/HTTPS, REST API, 클라이언트-서버 구조
- 학습 방법
- 보안 관련 서적, 블로그, 유튜브 강의 참고
- 네트워크 OS, 기본 구조 학습
- 실습용 웹 환경 세팅
- 기본 도구
- 패키지 매니저: apt, brew
- 코드 편집기: VSCode
- 터미널: Git Bash, Linux Terminal
- 기본 도구
# Ubuntu 예시
sudo apt update
sudo apt install build-essential git curl wget
- 실습용 서버 설치
- Node.js + Express or Python + Flask
- 목적: 웹 취약점 실습, 서버/클라이언트 동작 이해
- HTTP GET/POST 요청 실습
- 간단한 CRUD 기능 구현
# Node.js 설치
https://nodejs.org 를 통해 LTS 버전 다운로드 설치
# Express 설치 예시
npm install -g express-generator
express myapp
cd myapp
npm install
npm start
- 브라우저에서 http://localhost:3000에 접속 가능
- 웹 취약점 실습 도구
- OWASP Juice Shop: 웹 취약점 학습 앱
sudo apt install juice-shop
juice-shop
- 브라우저 접속: http://localhost:42000
- 실습 내용: XSS, SQL Injection, CSRF 등 웹 취약점
- DV/DW(선택)
- PHP/MySQL 기반 취약점 학습
- 목적: 다양한 공격 시나리오 경험
- 보안 분석 테스트 도구
- Burp Suite: 웹 트래픽 분석, 요청 변조, 취약점 테스트
- Wireshark: 네트워크 패킷 캡쳐/분석
- Nmap: 네트워크 스캔, 포트 금지
- Metasploit: 침투 테스트 실습
3️⃣ 학습 순서
- Kali Linux 설치 -> 기본 명령어와 환경 적응
- Node.js 웹 서버 구축 -> HTTP 요청/응답 이해
- OWASP Juice Shop -> 웹 취약점 실습
- Burp Suite -> 트래픽 분석 및 공격 시뮬레이션
- Wireshark, Nmap -> 네트워크 분석
- Metasploit -> 침투 테스트 학습
- 암호화, JWT, 인증/인가 등 보안 기술 학습
✅ 학습 전 참고 사항 !!!! (중요)
- 항상 가상 환경에서 실습하기 -> 실제 시스템 상 공격 금지!!!(정보 통신망 침해 행위 처벌 가능!!! 🚫)
- 실습 후 Snapshop 복원을 통해 환경 초기화
- 개발 블로그에 단계별 설치법, 명령어, 스크린샷 추가로 정리하기 좋음
728x90
LIST
'보안' 카테고리의 다른 글
| [보안] 5. Wireshark와 Nmap으로 네트워크 분석하기 (1) | 2025.08.26 |
|---|---|
| [보안] 4. Burp Suite 트래픽 분석 및 공격 시뮬레이션 (0) | 2025.08.20 |
| [보안] 3. XSS, SQL Injection, CSRF 등 웹 취약점 실습 (3) | 2025.08.17 |
| [보안] 2.웹 취약점 실습용 서버/클라이언트 + CRUD + HTTP GET/POST (0) | 2025.08.14 |