사이버 보안이란?
사이버 보안은 컴퓨터, 휴대폰, 네트워크, 데이터를 공격, 손상, 도난으로부터 지키는 일이에요. 목표는 세 가지이고 CIA 3요소라고 불러요.
- 기밀성: 허락받은 사람만 데이터를 볼 수 있어요.
- 무결성: 데이터가 정확하고 아무도 몰래 바꾸지 않았어요.
- 가용성: 필요할 때 시스템과 데이터가 작동해요.
프라이버시는 내 개인 정보를 내가 통제할 권리예요. 보안이 좋으면 프라이버시도 지켜져요. 온라인 개인 안전(사이버 괴롭힘, 안전한 검색, 신고)은 사이버 안전을 보세요.
흔한 사이버 위협
- 악성코드(해로운 소프트웨어): 바이러스는 파일에 붙어 있다가 파일이 실행되면 퍼져요. 웜은 네트워크를 통해 스스로 퍼져요. 트로이 목마는 쓸모 있어 보이는 프로그램 안에 숨어 있어요. 스파이웨어는 몰래 나를 지켜봐요. 랜섬웨어는 파일을 잠그고 돈을 요구해요.
- 사회공학: 기계가 아니라 사람을 속이는 방법이에요. 피싱은 가짜 이메일이나 메시지를 써요. 어깨너머 훔쳐보기는 누군가 PIN을 누르는 것을 보는 거예요. 프리텍스팅은 이야기를 꾸며 내서 정보를 얻어 내는 거예요.
- 무차별 대입 공격: 가능한 비밀번호를 하나씩 모두 넣어 보다가 맞을 때까지 계속해요.
- 서비스 거부(DoS): 서버에 요청을 퍼부어서 진짜 사용자가 들어가지 못하게 해요. DDoS는 해킹된 기기 수천 대를 한꺼번에 써요.
- 약한 고리: 패치하지 않은 소프트웨어, 기본 비밀번호, 열린 네트워크 포트, 업데이트가 안 된 카메라 같은 스마트(IoT) 기기예요.
인증과 접근 통제
인증은 내가 말한 그 사람이 맞는지 확인하는 일이에요. 요소는 세 종류가 있어요.
- 내가 아는 것: 비밀번호, PIN.
- 내가 가진 것: 휴대폰 코드(OTP), 보안 키.
- 내가 인 것: 지문, 얼굴(생체 정보).
서로 다른 두 종류를 함께 쓰면 2단계 인증(2FA)이에요. 강한 비밀번호는 길고 글자, 숫자, 기호가 섞여 있어요. 소문자 26개만 쓰면 4글자 비밀번호는 26⁴ = 456,976가지이지만, 8글자는 26⁸ ≈ 2,080억 가지예요. 접근 통제는 각 사용자에게 필요한 권한만 주는 거예요(학생은 성적을 볼 수만 있고, 선생님만 바꿀 수 있어요). 몇 번 틀리면 계정을 잠그는 것과 CAPTCHA는 무차별 대입을 느리게 만들어요.
암호화
암호화는 읽을 수 있는 평문을 열쇠를 써서 뒤섞인 암호문으로 바꾸는 거예요. 맞는 열쇠가 있는 사람만 다시 복호화해서 되돌릴 수 있어요.
카이사르 암호는 오래된 간단한 예예요. 모든 글자를 열쇠만큼 밀어요. 열쇠가 3이면 A → D, B → E이고 SAFE → VDIH가 돼요. 가능한 열쇠가 25개뿐이라 깨기 쉬워요. AES 같은 현대 암호화는 열쇠가 너무 길어서 전부 시도하려면 우주의 나이보다 더 오래 걸려요.
- 대칭키 암호화는 잠글 때와 열 때 같은 열쇠를 써요.
- 공개키(비대칭) 암호화는 공개 열쇠로 잠그고 개인 열쇠로 열어요. 브라우저의 자물쇠 표시와
https가 이 방식을 써요.
방화벽, 안티 악성코드, 업데이트, 백업
- 방화벽: 들어오고 나가는 데이터 패킷을 살펴보고 규칙에 어긋나면 막는 소프트웨어 또는 장치예요.
- 안티 악성코드: 파일을 검사해서 알려진 악성코드 패턴과 비교하고, 이상한 행동도 지켜봐요.
- 업데이트(패치): 보안 구멍을 고쳐요. 공유기와 스마트 기기까지 자동 업데이트를 켜고, 기본 비밀번호는 바꾸세요.
- 백업: 데이터의 복사본이에요. 3-2-1 규칙: 복사본 3개, 저장 장치 종류 2가지, 1개는 다른 장소(예: 클라우드)에 보관해요.
- 모의 해킹: 회사가 전문가에게 돈을 주고(허락을 받고) 자기 시스템을 공격하게 해서 약점을 먼저 찾아요.
- 사람: 피싱을 알아보는 교육은 가장 좋은 방어 중 하나예요.
해 보기: 강한 암호 문구 만들기
서로 관련 없는 단어 네 개를 무작위로 고르세요. 예를 들면 mango-river-lamp-seven이에요(이 문구는 쓰지 마세요!). 글자 수를 세어 보세요. raj123 같은 짧은 비밀번호와 비교해 보세요. 어느 쪽이 외우기 쉽고 맞히기는 더 어려울까요? 그다음 3D 자유 놀이에서 카이사르 암호로 단어를 암호화하고, 친구에게 열쇠로 복호화해 보라고 하세요.
핵심 공식과 정의
- CIA 3요소: 기밀성(Confidentiality), 무결성(Integrity), 가용성(Availability)
- 비밀번호 경우의 수 = (쓸 수 있는 문자 수)^(길이), 예: 26⁸
- 카이사르 암호: 암호문 글자 = 평문 글자를 열쇠만큼 민 글자 (Z → A로 이어짐)
- 3-2-1 백업: 복사본 3개, 저장 매체 2종류, 외부 보관 1개
풀이 예제
1. 카이사르 열쇠 3으로 CAT을 암호화하세요.
C → F, A → D, T → W. 암호문: FDW.
2. 열쇠 3으로 만든 KHOOR을 복호화하세요.
각 글자를 3칸 뒤로 밀어요: K → H, H → E, O → L, O → L, R → O. 평문: HELLO.
3. 3자리 PIN(0–9)은 모두 몇 가지일까요?
10 × 10 × 10 = 10³ = 1,000.
4. 메시지가 이렇게 말해요. "고객님의 은행 계좌가 막혔습니다. 여기를 누르고 1시간 안에 PIN을 입력하세요." 어떤 공격이고, 어떻게 해야 할까요?
피싱(사회공학)이에요. 누르지 마세요. 은행의 공식 앱을 열거나 공식 전화번호로 전화해서 확인하고, 그 메시지를 신고하세요.
5. 학교 성적 서버에 가짜 요청이 쏟아져서 아무도 열 수 없어요. CIA 중 어느 것이 공격받았나요?
가용성이에요. 서비스 거부 공격이에요.
6. 비밀번호와 지문으로 로그인하면 어떤 요소 종류를 쓴 걸까요?
아는 것(비밀번호)과 나인 것(지문)이에요. 2단계 인증이에요.
자주 하는 실수
- 방화벽이 바이러스를 없애 준다고 생각하는 것. 방화벽은 네트워크 트래픽을 거르고, 악성코드는 안티 악성코드 프로그램이 찾아서 없애요.
- 여러 사이트에 같은 비밀번호를 쓰는 것. 한 곳이 유출되면 모든 계정이 열려요.
- 암호화하면 메시지를 보냈다는 사실까지 숨겨진다고 믿는 것. 암호화는 내용을 숨기지, 보냈다는 사실을 숨기지는 않아요.
- 하나뿐인 백업을 같은 컴퓨터에 두는 것. 컴퓨터를 도난당하거나 랜섬웨어에 잠기면 백업도 함께 사라져요.