본문으로 건너뛰기
>_ITDITD웹 보안 플랫폼
glossary

용어 사전

CVE, CVSS, RCE, SSRF, XSS, SPF/DKIM/DMARC — 용어마다 한 줄 정답과 쉬운 설명을 함께 담았습니다.

2026-07-04

GDPR란 — EU의 개인 데이터 보호 규칙과, 유출 시의 통지 의무

GDPR(General Data Protection Regulation)은 EU 역내의 개인 데이터를 보호하는 EU의 포괄적 규칙. EU의 사람들에게 서비스를 제공하면 역외의 사업자에게도 미칠 수 있다. 적법한 근거(동의 등)·목적의 명확화·데이터 최소화·본인의 권리(공개/삭제)·유출 시의 당국 통지(원칙 72시간) 등을 요구하며, 중대한 위반에는 고액의 제재금이 있다. 기술적인 요점은 '필요한 개인 데이터만 모은다·보유하지 않는다·안전하게 지킨다·새면 신속히 탐지해 통지할 수 있다'는 것으로 집약된다.

2026-07-04

OWASP Top 10이란 — 웹 앱에서 가장 중대한 10대 리스크의 표준 목록

OWASP Top 10은 비영리 단체 OWASP가 몇 년마다 공개하는 '웹 앱에서 가장 중대한 10대 리스크' 목록. 개발자·운영자의 공통 언어로 널리 쓰인다. 최신판(2021)의 선두는 '접근 제어 미비(Broken Access Control)'이며, 이하 인젝션·설정 실수·취약하고 오래된 컴포넌트·인증 미비 등이 이어진다. 개별 공격 기법이 아니라 '리스크의 카테고리'이므로, 자신의 앱을 점검하는 관점으로 쓰는 것이 옳다.

2026-07-04

PCI DSS란 — 신용카드 정보를 다루기 위한 보안 기준

PCI DSS(Payment Card Industry Data Security Standard)는 카드 정보를 저장·처리·전송하는 사업자가 충족해야 하는 국제적인 보안 기준. 카드 국제 브랜드가 책정하며, 네트워크 보호·저장 데이터의 암호화·접근 제어(최소 권한)·모니터링/로그·취약점 관리 등을 요구한다. 실무에서 가장 안전한 것은 '직접 카드 번호를 보유하지 않고, 준수된 결제 대행(토큰화)에 맡겨 적용 범위를 최소화한다'는 것.

2026-07-04

공개키 암호란 — 공개키와 개인키 쌍으로 암호화·서명하는 구조

공개키 암호='공개키(누구에게 나눠줘도 되는 것)'와 '개인키(본인만 가지는 것)'의 쌍을 사용하는 방식. 공개키로 암호화한 것은 대응하는 개인키로만 복호화할 수 있고, 개인키로 만든 서명은 공개키로 검증할 수 있다. 이 비대칭성이 TLS(HTTPS)의 키 교환·전자서명·패스키의 토대. 방어의 요점은, 암호를 직접 만들지 않는다(검증된 구현을 쓴다)/개인키를 엄중히 관리·실효할 수 있게 한다/키 길이와 알고리즘을 최신 권장에 맞춘다는 것.

2026-07-02

악성코드란 — 종류, 감염 경로, 그리고 기본 방어

악성코드(Malicious Software)는 기기나 데이터에 해를 끼칠 목적으로 만들어진 악성 소프트웨어의 총칭입니다. 바이러스·웜·트로이 목마·랜섬웨어·스파이웨어·봇은 모두 그 일부입니다. 종류마다 겉모습은 달라도 방어는 공통된 세 층 — 진입을 막고(업데이트·의심스러운 첨부/매크로를 열지 않기·MFA), 탐지하고(EDR·안티바이러스), 되돌릴 수 있게 하기(백업)입니다. 종류를 외우기보다 이 보편 원칙을 굳히는 것이 본질입니다.

2026-07-02

일회용 비밀번호(OTP)란? — TOTP/HOTP/SMS의 차이와 한계

일회용 비밀번호(OTP)는 한 번 쓰면 무효가 되는 짧은 수명의 일회성 코드. 인증 앱의 TOTP(시간 기반), HOTP(카운터 기반), SMS-OTP(SMS 전송)가 있다. 고정 비밀번호의 유출·재사용에 강하고 2단계 인증의 '가지고 있는 것'으로 자주 쓰인다. 다만 한계가 있어 중간자 피싱(AiTM)에서는 OTP도 가짜 사이트를 거쳐 중계되어 돌파될 수 있다. 진정한 피싱 저항성은 도메인에 묶인 패스키. OTP는 '없는 것보다 훨씬 낫지만 종점은 아니다'.

2026-07-02

2단계 인증(2FA)이란? — 2단계 검증과의 차이와 방식별 강약

2단계 인증(2FA)은 '알고 있는 것(비밀번호)'에 '가지고 있는 것·본인 자체(코드·키·생체)'라는 다른 범주의 증명을 더해 본인 확인을 강하게 하는 구조. 흔히 혼동되는 2단계 검증(두 번 확인)과는 엄밀히 다른 개념으로, 비밀번호 + SMS 코드는 사실상 같은 범주의 두 단계에 가깝다. 강도는 방식으로 결정되며 SMS/이메일 < 인증 앱(TOTP) < 패스키/물리 키(FIDO2). 본 사이트의 입장은, 먼저 무엇이든 2FA를 켜는 것, 그 위에서 피싱에 넘길 수 없는 방식으로 옮겨가는 것.

2026-06-29

Let's Encrypt란 무엇인가 — HTTPS를 자동화하는 무료 인증 기관(CA)

Let's Encrypt = 무료의 자동화된 TLS 인증 기관(CA). ACME 프로토콜이 도메인 통제 여부를 자동으로 검증하므로 발급과 갱신이 모두 무인화됩니다. 인증서는 설계상 단기(90일) — 키 유출의 노출 구간을 줄이고 자동화를 강제하기 위함입니다. 현실에서 가장 흔한 사고는 공격이 아니라, 갱신이 조용히 멈춰 → 인증서 만료 → 브라우저 경고 → 사용자 이탈로 이어지는 것입니다. 그래서 만료를 모니터링해야 합니다. 본 사이트 역시 Caddy의 자동 TLS를 통해 Let's Encrypt를 사용합니다.

2026-06-29

OpenSSL이란 — HTTPS의 토대가 되는 라이브러리와 그 방어법

OpenSSL = HTTPS(TLS/SSL)와 암호화를 떠받치는 오픈소스 라이브러리입니다. 대부분의 사람은 직접 작성하지 않고 웹 서버, OS, 언어 런타임을 통해 물려받습니다. 그래서 버그 하나의 영향 범위가 엄청나게 넓습니다(Heartbleed가 전형적인 사례). 방어법: 자신의 스택이 어떤 OpenSSL을 쓰는지 파악하고, 지원 종료(EOL) 버전을 돌리지 말며, 기반 라이브러리도 CVE 감시에 포함하고, 신속하게 패치하는 것입니다. 본 사이트가 제공하는 인증서조차 그 밑에서는 OpenSSL 계열 구현으로 암호화를 수행합니다.

2026-06-28

패스키란? 훔칠 것이 없는 비밀번호 없는 로그인

패스키는 공유된 비밀이 없는 로그인입니다. 기기가 개인 키와 생체 인증으로 서명하고 서버는 짝이 되는 공개 키만 저장합니다. 따라서 유출되어도 악용할 수 없고, 서명이 도메인에 묶여 있어 가짜 사이트에서는 완료되지 않아 구조적으로 피싱에 강합니다. 비밀번호 + SMS 코드보다 안전하며, 중요한 계정부터 먼저 전환하세요.

2026-06-27

비밀번호 해싱이란? 단방향 변환으로 비밀번호를 안전하게 저장하기

비밀번호 해싱은 비밀번호를 되돌릴 수 없는 단방향 변환으로 저장하는 것입니다. 평문으로 저장하지 마세요. 암호화와 달리 복호화해 되돌릴 수 없으며, 그것이 바로 목적입니다. 그러나 평범한 MD5/SHA-256은 레인보우 테이블과 무차별 대입에 무너집니다. 해법: 사용자별 솔트와 의도적으로 느린 해시(bcrypt/Argon2/scrypt). 직접 만들지 말고 표준 함수를 사용하세요.

2026-06-27

솔트란? 비밀번호 해시에 더하는 사용자별 '양념'

솔트는 비밀번호를 해싱하기 전에 더하는 사용자별 무작위 값입니다. 그러면 같은 비밀번호도 사용자마다 다르게 저장되어, 미리 계산된 레인보우 테이블을 무력화하고 한 번의 크래킹으로 여러 계정을 깨는 것을 막습니다. 솔트는 비밀이 아니므로 해시와 함께 저장하세요. bcrypt/Argon2는 자동으로 더해 줍니다.

2026-06-13

피싱이란? 공격 유형과 '알아채기'보다 확실한 방어법

피싱은 신뢰하는 상대를 사칭해 가짜 로그인 페이지로 유인하여 자격 증명이나 데이터를 훔치거나 악성코드를 실행시킵니다. 소프트웨어 결함이 아닌 사람의 판단을 노리며, 랜섬웨어와 정보 유출의 최대 진입 경로입니다. 현대의 중간자(AiTM) 피싱은 일회용 코드까지 실시간으로 실제 사이트에 중계하므로 SMS/앱 MFA가 무력화될 수 있습니다. 확실한 방어는 '알아채기'가 아니라 메커니즘입니다. 도메인에 묶인 피싱에 강한 MFA(패스키/보안 키), 링크 대신 공식 사이트로 직접 가기, 이메일 인증(SPF/DKIM/DMARC).

2026-06-12

JWT(JSON Web Token)란? 서명된 출입증의 작동 원리와 안전하게 쓰는 법

JWT는 서버가 서명해 발급하는 변조 방지 '출입증'입니다. header.payload.signature 세 부분으로 이루어지며, 서버가 서명을 검증해 진위를 확인합니다. 주의: (1) 항상 서명을 검증하고 기대하는 alg를 고정(alg:none 거부); (2) 누구나 내용을 읽을 수 있으니 시크릿을 넣지 말 것; (3) 만료를 짧게 두고 폐기 전략을 마련. 디코딩(읽기)과 검증(진위 확인)은 다른 것입니다.

2026-06-12

랜섬웨어란? 동작 원리, 침투 경로, 그리고 몸값을 내지 않는 법

랜섬웨어는 파일을 암호화하고 되돌려주는 대가로 지불을 요구하는 악성코드입니다. 현대의 공격은 이중 갈취를 더합니다 — 먼저 데이터를 훔치고 유출하겠다고 협박하므로, 복호화만으로는 침해가 멈추지 않습니다. 주요 진입 경로: 피싱, 약하거나 MFA가 없는 VPN/RDP, 패치되지 않은 인터넷 노출 결함. 가장 중요한 방어는 오프라인/불변 백업과 복원 테스트 — 몸값 없이 복구할 수 있는 능력입니다. 또한 진입을 막고(MFA, 패치) 피해 범위를 한정하세요(최소 권한, 분할).

2026-06-11

BitLocker란 — 분실·도난된 기기의 데이터를 지키는 Windows 디스크 암호화

BitLocker는 Windows에 내장된 디스크 암호화입니다. PC가 꺼져 있거나 드라이브가 분리된 상태의 데이터를 보호해, 도난·분실을 암호문으로 바꿉니다. 가장 큰 함정은 복구 키 — 잃어버리면 본인조차 잠겨버립니다. 켜져 있고 로그인된 PC는 보호하지 못하므로, 강력한 로그인과 자동 잠금을 함께 써야 합니다.

2026-06-11

C2(명령 제어)란 — 침해 후 공격자가 기기를 조종하는 통로

C2는 감염된 기기가 공격자 서버로 콜백(비콘)하여 명령을 받고 데이터를 빼내는 통로로, 침해 이후 단계입니다. 포착의 핵심은 의심스러운 주기적 아웃바운드 트래픽과 알려진 악성 목적지입니다. 방어: 이그레스 필터링, DNS 모니터링, IOC/IOA 대조, 최소 권한. '잔존 C2 없음'을 확인하는 것은 침해 조사의 핵심 단계입니다.

2026-06-11

CORS란 — 작동 원리와 잘못된 설정이 노출하는 것

CORS는 다른 오리진의 JS가 내 API 응답을 읽을 수 있는지를 브라우저가 제어하는 방식입니다. 설정 오류 — 임의의 Origin 반사, 또는 자격 증명과 함께 Access-Control-Allow-Origin:* — 는 제3자 사이트가 로그인된 데이터를 읽게 합니다. 진짜 방어: 허용 목록, Origin 무분별 반사 금지, 기본 거부.

2026-06-11

EDR이란 — 엔드포인트의 '행위'를 기록해 빠져나간 공격을 탐지·대응하기

EDR은 엔드포인트의 행위를 지속적으로 기록하고, 의심스러운 활동을 탐지(IOA 방식)하며, 대응(격리, 조사)을 돕습니다. 시그니처/IOC 기반 안티바이러스가 놓치는 파일리스·정상 도구 악용 공격을 행위와 타임라인으로 잡아냅니다. 소규모 팀은 흔히 풀 EDR이 필요 없으며 — OS 내장 보호 + 로그 + IOA 사고방식으로 상당한 가치를 얻습니다.

2026-06-11

IOA(Indicator of Attack)란 — 흔적이 아니라 행위로 침해를 알아채기

IOA(Indicator of Attack)는 진행 중인 공격의 행위(권한 상승 → 측면 이동 → 탈취)로 침해를 알아챕니다. 사후의 IOC와 짝을 이루는 개념입니다. 공격자는 해시와 IP를 즉시 바꾸지만, 기법(행위)은 바꾸기 어려워 — IOA는 더 오래 유효합니다. 소규모 팀도 '평소와 다른 행위'를 지켜보는 것으로 접근할 수 있습니다.

2026-06-11

IOC(Indicator of Compromise)란 — 침해를 드러내는 흔적

IOC(Indicator of Compromise)는 침해가 남긴 흔적 — 알려진 악성 파일 해시, 공격자 IP/도메인, URL, 이상한 프로세스 — 입니다. 가치는 알려진 악성을 기계적으로 탐지·차단하는 것입니다. 하지만 공격자가 값싸게 바꿀 수 있는 사후적 단서이므로, IOC 대조는 치료제가 아니라 마지막 점검입니다. 진짜 방어는 타지 않는 설계(최소 권한, 패치, MFA)입니다.

2026-06-11

세션 고정(Session Fixation)이란 — 공격자가 이미 아는 ID로 피해자를 로그인시키는 공격

세션 고정은 공격자가 아는 세션 ID를 피해자가 쓰게 만든 뒤, 그 ID로 로그인하면 피해자를 가장하는 공격입니다. 진짜 방어법: 로그인 시(그리고 권한 변경 시) 세션 ID를 재생성하는 것. URL의 ID를 받지 말고, HttpOnly/Secure/SameSite로 쿠키를 강화하세요.

2026-06-10

클릭재킹이란 — 숨겨진 버튼을 누르게 만드는 보이지 않는 함정

클릭재킹은 진짜 사이트를 공격자 페이지 위에 투명하게 겹쳐, 사용자가 의도치 않은 행동(송금, 설정 변경, 동의)을 하게 만듭니다. 진짜 방어는 프레임에 끼이지 않는 것 — CSP frame-ancestors와 X-Frame-Options입니다.

2026-06-10

IDOR이란 — ID만 바꿔서 남의 데이터를 보게 되는 것

IDOR은 사용자가 ?id=124를 125로 바꿔 남의 청구서나 개인 데이터를 읽게 만드는 — 취약한 접근 제어입니다. 진짜 방어: 매 접근마다 서버 측에서 로그인된 사용자가 이 객체에 권한이 있는지 검사하기. 추측하기 어려운 ID는 해결책이 아닙니다.

2026-06-10

오픈 리디렉션이란 — 신뢰받는 URL이 다른 사이트로 가는 발판이 되는 취약점

오픈 리디렉션은 ?next= 형태의 파라미터가 사용자를 임의의 외부 사이트로 넘겨 보내, 신뢰받는 도메인을 피싱에 빌려주는 취약점입니다. 진짜 방어법: 외부 URL을 리디렉션 대상으로 절대 받지 않고, 상대 경로와 허용 목록만 허용하는 것.

2026-06-10

경로 탐색(Path Traversal)이란 — ../ 로 서버가 절대 내주면 안 되는 파일을 읽는 취약점

경로 탐색은 파일명 입력에 ../ 를 섞어 기준 디렉터리를 빠져나가 .env, 설정, 키를 읽거나 쓰는 취약점입니다. 진짜 방어법: 사용자 입력을 날것의 파일 경로로 절대 쓰지 말고, 정규화한 뒤 허용된 기준 디렉터리 안으로 가두는 것.

2026-06-08

CSRF(사이트 간 요청 위조)란 — 로그인된 사용자가 의도치 않게 행동하게 만들기

CSRF는 브라우저가 쿠키를 자동으로 붙이는 습성을 악용해, 로그인된 사용자의 브라우저가 의도치 않은 행동을 보내게 만듭니다. 진짜 방어는 CSRF 토큰과 SameSite 쿠키입니다. 상태 변경에 GET을 절대 쓰지 마세요.

2026-06-08

SPF / DKIM / DMARC란 — 도메인을 위장 메일로부터 지키는 세 가지

SPF/DKIM/DMARC는 수신 측이 당신 도메인의 메일을 검증할 수 있게 하는 세 가지 DNS 설정입니다. SPF = 어느 서버가 보낼 수 있는가, DKIM = 암호학적 서명, DMARC = 정책과 보고서. 함께 쓰면 당신의 이름을 사칭한 위장을 막습니다. DMARC는 p=none에서 위로 단계적으로 올리세요.

2026-06-08

SQL 인젝션(SQLi)이란 — 입력이 데이터베이스의 명령을 바꿔 쓰는 취약점

SQLi는 입력이 데이터가 아니라 '명령의 일부'로 읽혀 쿼리의 의미를 바꾸는 취약점입니다 — 곧장 읽기/변경/삭제로 이어집니다. 진짜 방어법은 SQL을 문자열로 이어 붙이기를 멈추고, 값을 플레이스홀더(프리페어드 스테이트먼트)로 넘기는 것입니다.

2026-06-08

XSS(Cross-Site Scripting)란 — 다른 사람의 브라우저에서 실행되는 코드

XSS는 공격자가 제공한 문자열을 다른 사용자의 브라우저에서 '스크립트로' 실행시킵니다 — 곧장 세션 탈취와 가장으로 이어집니다. 진짜 방어법은 출력 시 이스케이프입니다. 프레임워크의 자동 이스케이프를 끄지 마세요.

2026-06-07

CVE란 — 취약점에 붙는 공용 '등번호'

CVE는 취약점에 부여되는 전 세계 공용 식별자입니다(예: CVE-2025-12345). CVE = 이름, CVSS = 심각도, KEV = 실제로 악용되는가. 모니터링의 기준점입니다. 손이 아니라 기계로 추적하세요.

2026-06-07

CVSS란 — 심각도 점수와 그 실제 채점 방식

CVSS는 심각도를 0.0–10.0으로 평가합니다. 점수는 정의된 지표(공격 벡터, 복잡도, 권한, 사용자 상호작용, 범위, CIA 영향)를 공개 공식으로 계산한 값이며 — 추측이 아닙니다. 기준을 알면 10.0이 무엇을 뜻하는지 읽을 수 있습니다. 그래도 우선순위는 KEV(악용 여부)와 사용 여부로 정하세요.

2026-06-07

.env란 — 환경 파일이 유출되면 무슨 일이 일어나는가

.env는 앱의 시크릿(DB 인증, API 키, 암호화 키)을 담습니다. 키가 한 파일에 모여 있어, 노출되면 모든 시크릿이 한꺼번에 새어 나갑니다. 앱은 문서 루트 바깥에 두고, git에 절대 커밋하지 말며, 유출되면 전부 교체하세요.

2026-06-07

RCE(원격 코드 실행)란 — 왜 최악의 취약점 부류인가

RCE는 공격자가 당신의 서버에서 임의의 코드를 실행하게 합니다 — 곧장 장악으로 이어지는 최악의 부류입니다. 피해 범위는 실행 중인 프로세스의 권한으로 결정됩니다. 핵심 방어는 빠른 패치, CVE 모니터링, 최소 권한입니다.

2026-06-07

SSRF(Server-Side Request Forgery)란

SSRF는 외부 입력 URL을 악용해 서버가 내부 자원(내부 IP, 클라우드 메타데이터)을 치게 만듭니다. URL을 가져오는 기능이 있다면, 목적지 허용 목록, 내부 대상 차단, 그리고 리디렉션/DNS 리바인딩 구멍을 닫는 것이 필요합니다. Capital One 침해의 진입점이었습니다.