security
CHAPTER 56 / 84
읽기 약 2분
FUNCTION
보안 전용 가상 환경 구축
핵심 개념
venv + 보안 라이브러리 설치 + 격리된 실습 환경을 만든다.
본문
격리된 가상 환경의 필요성
보안 도구는 시스템 Python에 직접 설치하면 안 됩니다.
- 의존성 충돌 (예:
cryptography버전 차이) - 시스템 도구 오염 (특히 macOS·Linux의 시스템 Python)
- 실험·롤백이 어려움
venv 사용법
# 가상 환경 생성 + 활성화 (셸 명령 — 실제로는 터미널에서 실행)
# python3 -m venv whitehat
# source whitehat/bin/activate # macOS/Linux
# whitehat\Scripts\activate # Windows보안 필수 패키지
requirements-security.txt 파일을 프로젝트 루트에 두고:
requests>=2.31
python-nmap>=0.7
paramiko>=3.4
cryptography>=42.0
python-dotenv>=1.0
beautifulsoup4>=4.12
scapy>=2.5pip install -r requirements-security.txt 한 줄로 모두 설치.
환경 변수로 비밀 관리
# ⚠️ 이 코드는 허가된 환경에서만 사용하세요.
# .env 파일에 API 키·인증 정보 분리 (절대 git에 커밋 금지)
from dotenv import load_dotenv
import os
load_dotenv() # 현재 디렉토리의 .env 자동 로드
VT_API_KEY = os.getenv('VIRUSTOTAL_API_KEY')
SHODAN_KEY = os.getenv('SHODAN_KEY')
if not VT_API_KEY:
raise SystemExit('VIRUSTOTAL_API_KEY가 .env에 없습니다.')
print(f'VirusTotal 키 로드 완료 (앞 4자: {VT_API_KEY[:4]}...)').gitignore 필수 항목
# 보안 프로젝트 .gitignore
.env
*.pem
*.key
whitehat/
__pycache__/
*.pyc실습 환경 연동
- TryHackMe: https://tryhackme.com — 학습용 머신 무료 제공
- HackTheBox: https://www.hackthebox.com — 실전 침투 테스트
- DVWA (Damn Vulnerable Web App): 로컬 Docker로 실행
AI 프롬프트
🤖 AI에게 잘 물어보는 법 — 모델·전략별 프롬프트
Claude
무료: Sonnet 4.6 / Pro $20/mo: Opus 4.6
내 venv 환경의 requirements.txt에서 보안 라이브러리 버전 충돌·취약점을 분석하고 안전한 버전 조합을 추천해줘.
ChatGPT
무료: GPT-5.5 / Plus $20/mo: GPT-5.5 Pro
TryHackMe·HackTheBox·DVWA 중 초보자가 가장 빠르게 시작할 수 있는 환경을 각각의 장단점 비교표로 보여줘.
Gemini
무료: 2.5 Flash / Pro $19.99/mo: 3.1 Pro
내 프로젝트 폴더 전체를 분석해서 .env·키 파일·비밀 정보가 git 추적에서 빠져있는지 종합 점검해줘.
Grok
무료: Grok 4.1 / SuperGrok $30/mo
2026년 보안 실습 환경 트렌드 — 로컬 Docker vs 클라우드 랩(Hack The Box Pro Labs) 비용 대비 학습 효과를 솔직히 비교해줘.
⭐ 이것만 기억하세요
보안 전용 가상 환경 구축은 이 3가지만 확실히 잡으세요
1.venv로 격리된 환경에서만 보안 라이브러리를 설치해야 시스템 오염을 막는다
2..env + python-dotenv 조합으로 API 키를 코드에서 분리하면 git 유출 사고를 방지할 수 있다
3.다음 챕터에서 바이트와 인코딩 — 보안의 기본 언어를 배운다
공유하기
진행도 56 / 84