로봇운영 소프트웨어로봇 운영 소프트웨어 개발서버 연동 소프트웨어 개발
출제기준 좌표1·1·2·3
1과목 · 로봇운영 소프트웨어

로봇 보안

로봇 운영 소프트웨어 개발서버 연동 소프트웨어 개발
# 로봇운영소프트웨어
01

📌 개요

  • 로봇이 서버·클라우드와 연결되는 순간 로봇은 네트워크 공격의 대상이 된다
  • 보안이 특별히 중요한 이유 = 사이버 공격이 물리적 피해로 직결 — 해킹당한 로봇 팔은 사람을 다치게 할 수 있다
  • 시험 출제 포인트: 정보보안 3요소(CIA), 공격 유형(도청·스푸핑·재전송·DoS), 대칭키 vs 공개키 암호의 비교, 해시·전자서명의 역할, TLS의 하이브리드 구조
02

📖 핵심 개념

정보보안의 3요소 — CIA

보안의 목표를 요약한 고전적 3요소다. 시험 최빈출.

  • 기밀성(Confidentiality): 허가된 사람만 정보를 볼 수 있다 — 도청 방지, 암호화로 달성
  • 무결성(Integrity): 정보가 위·변조되지 않았음을 보장 — 해시·전자서명으로 달성
  • 가용성(Availability): 필요할 때 서비스가 동작해야 한다 — DoS 공격 방어, 이중화로 달성

여기에 실무적으로 세 가지가 추가된다.

  • 인증(Authentication): 상대가 주장하는 그 주체가 맞는지 확인 (누구냐)
  • 인가(Authorization): 인증된 주체에게 어떤 권한을 줄지 결정 (무엇을 해도 되냐)
  • 부인방지(Non-repudiation): 행위를 한 사람이 나중에 "내가 안 했다"고 부인하지 못하게 함 — 전자서명으로 달성

로봇 시스템의 보안 위협

공격 수법 로봇에서의 피해
도청(Sniffing) 통신을 몰래 엿봄 지도·영상·작업 데이터 유출
스푸핑(Spoofing) 신원을 위장(가짜 서버·가짜 로봇) 위조 명령 주입
중간자 공격(MITM, Man-in-the-Middle) 양쪽 사이에 끼어 통신을 중계·변조 명령 변조, 데이터 조작
재전송 공격(Replay Attack) 가로챈 정상 패킷을 나중에 다시 보냄 과거의 "이동" 명령 재실행
서비스 거부(DoS/DDoS) 트래픽 폭주로 서비스 마비 관제 불능, 가용성 상실
악성코드(Malware) 악성 프로그램 설치 로봇 제어권 탈취
무단 접근(Unauthorized Access) 취약한 인증 뚫기(기본 비밀번호 등) 원격 조작 탈취
로봇 보안의 특수성

IT 시스템의 해킹은 데이터 피해로 끝나지만, 로봇 해킹은 물리적 안전사고(충돌, 상해)로 이어진다. 그래서 로봇에서는 보안(Security)이 안전(Safety)의 전제 조건이다. 또한 로봇의 임베디드 환경은 연산 자원이 제한되어 가벼운 보안 기법이 요구된다.

암호화 — 대칭키 vs 공개키

  • 암호화(Encryption) = 평문(Plaintext)을 키(Key)로 변환해 암호문(Ciphertext)으로 만드는 것
  • 키 운용 방식에 따라 두 계열로 나뉨 — 아래 비교표는 시험 단골
구분 대칭키(비밀키) 암호 공개키(비대칭) 암호
키 구성 암·복호화에 같은 키 사용 공개키 + 개인키 쌍 (공개키로 잠그면 개인키로만 열림)
속도 빠름 — 대량 데이터에 적합 느림 (수백~수천 배)
키 배송 문제 있음 — 키를 안전하게 전달할 방법 필요 없음 — 공개키는 공개해도 됨
키 개수 (n명 통신) n(n−1)/2개로 급증 2n개
대표 알고리즘 AES, SEED, ARIA RSA, ECC(타원곡선), Diffie-Hellman(키 교환)
  • 하이브리드 방식: 공개키 암호로 세션키(대칭키)를 안전하게 교환한 뒤, 실제 데이터는 빠른 대칭키로 암호화 — 두 방식의 장점만 취한다. TLS/SSL이 이 구조다
  • TLS(Transport Layer Security): 인터넷 통신 암호화의 표준. HTTP에 TLS를 씌운 것이 HTTPS, MQTT에 씌우면 MQTTS. 서버 인증서(공개키 + 신원을 인증기관 CA가 서명한 것)로 서버의 신원을 확인하고 세션키를 교환한다

해시와 전자서명

  • 해시 함수(Hash Function): 임의 길이 데이터를 고정 길이 요약값(해시)으로 바꾸는 일방향 함수. 원문이 1비트만 바뀌어도 해시가 완전히 달라지므로 무결성 검증에 쓰인다. 역산 불가, 대표: SHA-256. 비밀번호는 평문이 아닌 해시로 저장한다
  • 전자서명(Digital Signature): 보내는 사람이 자신의 개인키로 문서(의 해시)를 서명하고, 받는 사람이 그 사람의 공개키로 검증. 서명이 맞으면 ① 그 사람이 보낸 것(인증·부인방지) ② 내용이 안 바뀐 것(무결성)이 동시에 보장된다
  • 암호화(공개키로 잠금→개인키로 엶)와 서명(개인키로 서명→공개키로 검증)은 키 사용 방향이 반대라는 점에 주의

인증과 접근 통제

  • 인증 수단 3요소: 지식 기반(비밀번호), 소유 기반(OTP 토큰·인증서·스마트카드), 존재/특징 기반(지문·홍채 등 생체). 두 가지 이상 조합하면 다중 인증(MFA, Multi-Factor Authentication)
  • 접근 통제: 역할 기반 접근 통제(RBAC, Role-Based Access Control) — 사용자에게 직접 권한을 주지 않고 역할(운영자·정비사·관리자)에 권한을 묶어 부여
  • 최소 권한 원칙(Principle of Least Privilege): 업무에 필요한 최소한의 권한만 부여

네트워크·시스템 보안 대책

  • 방화벽(Firewall): 규칙에 따라 허용된 트래픽만 통과
  • VPN(Virtual Private Network): 공용 인터넷 위에 암호화된 가상 전용망을 구성 — 원격지에서 로봇 네트워크에 안전하게 접속
  • IDS/IPS(침입 탐지/방지 시스템): 공격 패턴을 탐지(IDS)하고 차단(IPS)
  • 로봇 특화 대책: ROS 2의 보안 프레임워크 SROS2(DDS Security 기반 — 노드 인증·토픽 암호화·접근 통제), OTA 업데이트전자서명으로 펌웨어 위변조 검증, 기본 비밀번호 변경, 불필요 포트 차단
03

📊 다이어그램 · 수식

TLS 하이브리드 암호 통신의 개념 흐름

DIAGRAM
sequenceDiagram
    participant R as 로봇 (클라이언트)
    participant S as 운영 서버
    R->>S: 접속 요청 (지원 암호 방식 제시)
    S->>R: 서버 인증서 전달 (공개키 + CA 서명)
    Note over R: CA 서명 검증 → 서버 신원 확인
    R->>S: 세션키 재료를 서버 공개키로 암호화해 전송
    Note over R,S: 양쪽이 동일한 세션키(대칭키) 확보
    loop 데이터 통신
        R->>S: 세션키(AES 등)로 암호화된 데이터
        S->>R: 세션키로 암호화된 응답
    end

전자서명의 원리

DIAGRAM
graph LR
    subgraph 송신자
        D1["문서"] --> H1["해시 계산"] --> SG["개인키로 서명"]
    end
    D1 --> NET["전송: 문서 + 서명"]
    SG --> NET
    subgraph 수신자
        NET --> H2["문서의 해시 재계산"]
        NET --> VF["공개키로 서명 복호"]
        H2 --> CMP{"두 값 일치?"}
        VF --> CMP
        CMP -- "일치" --> OK["무결성 + 인증 + 부인방지 확인"]
        CMP -- "불일치" --> NG["위변조 또는 위장"]
    end
04

🎯 핵심 요약 · 암기 포인트

익힘 0 / 13카드를 눌러 뒤집고, 앞면에서 아는지 표시하세요.
Q · 1
정보보안 3요소(CIA)는?
A
기밀성(Confidentiality)·무결성(Integrity)·가용성(Availability)
Q · 2
기밀성·무결성·가용성 각각의 대표 달성 수단은?
A
기밀성 = 암호화, 무결성 = 해시·전자서명, 가용성 = DoS 방어·이중화
Q · 3
인증(Authentication)과 인가(Authorization)의 차이는?
A
인증은 "누구인지" 신원 확인, 인가는 인증된 주체에게 "무엇을 허용할지" 권한 부여
Q · 4
재전송 공격(Replay Attack)이란?
A
가로챈 정상 패킷을 나중에 그대로 다시 보내 정상 명령처럼 실행시키는 공격
Q · 5
대칭키 암호의 장점과 약점은?
A
빠르고 대량 데이터에 적합하지만, 같은 키를 나눠 가져야 하는 키 배송 문제가 있다
Q · 6
공개키 암호의 특징은?
A
공개키·개인키 쌍을 사용해 키 배송 문제가 없지만 대칭키보다 훨씬 느리다 (RSA, ECC)
Q · 7
대칭키·공개키의 대표 알고리즘은?
A
대칭키 = AES, 공개키 = RSA·ECC
Q · 8
TLS의 하이브리드 구조란?
A
공개키 암호로 세션키를 안전하게 교환한 뒤, 실제 데이터는 빠른 대칭키(세션키)로 암호화하는 방식
Q · 9
해시 함수의 성질과 용도는?
A
일방향(역산 불가), 원문이 조금만 바뀌어도 값이 완전히 달라짐 — 무결성 검증·비밀번호 저장 (SHA-256)
Q · 10
전자서명은 어떤 키로 서명하고 어떤 키로 검증하는가?
A
송신자의 개인키로 서명, 송신자의 공개키로 검증 — 무결성·인증·부인방지 제공
Q · 11
다중 인증(MFA)이란?
A
지식(비밀번호)·소유(OTP·인증서)·생체(지문) 중 두 가지 이상을 조합한 인증
Q · 12
ROS 2의 보안 프레임워크는?
A
SROS2 — DDS Security 기반으로 노드 인증·토픽 암호화·접근 통제 제공
Q · 13
로봇 보안이 IT 보안보다 더 중요해지는 이유는?
A
사이버 공격이 데이터 피해에 그치지 않고 물리적 안전사고(충돌·상해)로 직결되기 때문
05

✏️ 예상문제

1. 정보보안 3요소(CIA)에 해당하지 않는 것은?

① 기밀성(Confidentiality) ② 무결성(Integrity) ③ 가용성(Availability) ④ 부인방지(Non-repudiation)

정답 및 해설

정답: ④ CIA는 기밀성·무결성·가용성이다. 부인방지는 3요소에 추가로 논의되는 확장 요소로, 전자서명으로 달성한다.

2. 대칭키 암호와 공개키 암호의 비교로 옳지 않은 것은?

① 대칭키 암호는 암호화와 복호화에 같은 키를 쓴다 ② 공개키 암호는 대칭키 암호보다 연산 속도가 빠르다 ③ 대칭키 암호는 키를 안전하게 전달해야 하는 키 배송 문제가 있다 ④ AES는 대칭키, RSA는 공개키 알고리즘이다

정답 및 해설

정답: ② 반대다. 공개키 암호는 수학적 연산이 무거워 대칭키보다 수백~수천 배 느리다. 그래서 TLS는 공개키로 세션키만 교환하고 데이터는 대칭키로 암호화하는 하이브리드 구조를 쓴다.

3. 가로챈 정상 명령 패킷을 저장해 두었다가 나중에 그대로 다시 전송하여 로봇이 과거 명령을 재실행하게 만드는 공격은?

① 스니핑(Sniffing) ② 서비스 거부(DoS) ③ 재전송 공격(Replay Attack) ④ 무차별 대입(Brute Force)

정답 및 해설

정답: ③ 재전송 공격이다. 패킷 내용이 암호화되어 있어도 통째로 다시 보내면 통할 수 있으므로, 타임스탬프나 일회용 난수(Nonce)·순서 번호를 넣어 방어한다.

4. 전자서명에 대한 설명으로 옳은 것은?

① 송신자의 공개키로 서명하고 개인키로 검증한다 ② 기밀성을 보장하는 것이 주된 목적이다 ③ 무결성·인증·부인방지를 제공한다 ④ 서명 검증에는 인증기관이 필요 없고 아무 키나 사용해도 된다

정답 및 해설

정답: ③ 서명이 검증되면 그 개인키의 주인이 보냈고(인증·부인방지) 내용이 바뀌지 않았음(무결성)이 보장된다. ① 서명은 개인키로 하고 공개키로 검증한다. ② 기밀성은 암호화의 역할이다. ④ 공개키가 진짜 그 사람 것인지 보증하기 위해 인증기관(CA)의 인증서 체계를 쓴다.

5. OTA(원격 소프트웨어 업데이트)에서 배포되는 펌웨어의 위변조를 확인하는 가장 적절한 방법은?

① 펌웨어 파일 크기를 비교한다 ② 배포자의 전자서명을 검증한다 ③ 전송 속도를 측정한다 ④ 파일 이름 규칙을 확인한다

정답 및 해설

정답: ② 제조사가 개인키로 펌웨어에 서명하고 로봇이 공개키로 검증하면, 위변조된 펌웨어(해시 불일치)나 제3자가 만든 펌웨어(서명 불일치)를 설치 전에 걸러낼 수 있다. 크기·이름은 쉽게 위조된다.

06

🔗 관련 노트

로봇소프트웨어개발기사 필기 · 학습 교재출제기준 2025.1.1 – 2027.12.31