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를 비교합니다.