PE Notes · 네트워크
MODBUS
마스터-슬레이브 산업 프로토콜 MODBUS의 RTU·ASCII·TCP, 코일·레지스터와 함수 코드를 정리하고, 인증·암호가 없는 평문 제어의 위험과 망 분리·화이트리스트를 짝으로 둡니다.
1979년 나온 는 지금도 PLC·RTU·HMI가 레지스터를 읽고 쓰는 공통어입니다. 단순해서 살아남았고, 그 단순함이 인증과 암호를 빼 버렸습니다. 와 가 IT와 붙는 순간, 평문 코일 쓰기가 모터 정지가 됩니다.
RTU, ASCII, TCP
마스터가 묻고 슬레이브만 답합니다. RS-485 기준 주소 1~247, 0은 브로드캐스트입니다. 슬레이브는 먼저 말하지 않습니다.
는 바이너리와 입니다. ASCII는 사람이 읽고 LRC로 검사하며 느립니다. 는 이더넷에 올려 포트 502를 엽니다. CRC 대신 MBAP 헤더(트랜잭션 ID·길이·유닛 ID)가 앞에 붙습니다. 게이트웨이가 직렬 RTU와 TCP를 잇습니다.
| 비교축 | RTU | ASCII | TCP |
|---|---|---|---|
| 매체 | RS-232/485 | 같은 직렬 | 이더넷 |
| 인코딩 | 바이너리 | 문자 | ADU+MBAP |
| 검출 | CRC | LRC | TCP 체크섬 등 |
| 자리 | 현장 버스 | 디버그·구형 | IT–OT 연결 |
오류제어 토픽의 CRC가 RTU 프레임 끝에 2바이트로 붙습니다. 검출이지 인증이 아닙니다.
네 저장소와 함수 코드
코일은 1비트 출력(모터 ON/OFF), 이산 입력은 1비트 읽기 전용, 입력 레지스터는 16비트 계측, 는 16비트 설정값입니다. 현장에서 가장 많이 읽는 코드가 03(보유 레지스터 읽기)입니다.
RTU 프레임은 [주소][함수][데이터…][CRC]입니다. 보유 레지스터 100번부터 5개를 읽으면 함수 03, 시작 주소와 수량이 데이터에 실립니다.
| 코드 | 동작 |
|---|---|
| 01·02 | 코일 / 이산 입력 읽기 |
| 03·04 | 보유 / 입력 레지스터 읽기 |
| 05·06 | 단일 코일 / 레지스터 쓰기 |
| 15·16 | 다중 코일 / 레지스터 쓰기 |
는 무엇을 할지만 말하고, 누가 해도 되는지는 말하지 않습니다. 쓰기와 읽기가 같은 평문 채널에 있습니다.
인증이 없고 암호도 없다
누구나 마스터인 척 502로 들어오거나 직렬 버스에 올라타면 코일을 뒤집습니다. 스니핑으로 설정값이 보이고, 캡처한 쓰기를 다시 넣으면 재전송 공격입니다. 브로드캐스트는 한 명령으로 여러 슬레이브를 동시에 돌립니다. 대량 질의는 슬레이브를 멈추게 합니다.
대응은 프로토콜 교체만으로 끝나지 않습니다. OT–IT를 가르고, 으로 502를 제한하며, 이나 래퍼로 구간을 덮습니다. 게이트웨이는 허용 함수·주소 화이트리스트를 두고, OT 가 평소 없는 쓰기를 올립니다. 장기적으로는 인증·암호·모델을 갖춘 OPC UA로 옮기고, 레거시는 브리지 뒤에 둡니다.
| 구멍 | 결과 | 막기 |
|---|---|---|
| 인증 없음 | 위조 마스터 | 세그먼트·허용 주소 |
| 평문 | 도청·변조 | VPN·TLS 래퍼 |
| 권한 없음 | 임의 쓰기 | 함수 화이트리스트 |
| 브로드캐스트 | 일제 제어 | 0번 차단 |
| 요청 폭주 | 정지 | 속도 제한·IDS |
가용성이 기밀보다 앞서는 OT에서는, 잘못된 쓰기를 막는 일이 암호화만큼 급합니다.
기술사 답안 포인트
기출 이력
제137회 정보관리기술사
관련 용어
관련 토픽
보안
스마트팩토리 취약점 및 대응방안
IT/OT가 붙으며 생산과 안전까지 열리는 스마트팩토리 취약점을 퍼듀 계층과 공격 경로로 읽고, 망 분리·단방향 게이트웨이·IEC 62443 대응을 정리합니다.
보안
방화벽, IDS, IPS, VPN
허용·탐지·차단·터널의 네 장치를 인라인과 탭, 오탐 영향으로 비교하고, 상태 추적과 IPsec·TLS VPN, ZTNA로의 자리를 정리합니다.
네트워크
오류제어 FEC, ARQ, CRC
비트 오류를 검출만 할지 스스로 고칠지 다시 보낼지로 가르고, CRC와 Stop-and-Wait·Go-Back-N·Selective Repeat, HARQ를 비교합니다.