U-61
🔑 SNMP Community String 복잡도
서비스 관리
위험도: 상💡 쉽게 말하면
community string이 public이면 금고 비밀번호를 0000으로 둔 것과 같습니다. 누구나 기본값을 알기에 그냥 열어 보죠. 공격자는 정보를 읽고, private까지 기본값이면 설정을 바꿔 버립니다.
community string이 public이면 금고 비밀번호를 0000으로 둔 것과 같습니다. 누구나 기본값을 알기에 그냥 열어 보죠. 공격자는 정보를 읽고, private까지 기본값이면 설정을 바꿔 버립니다.
🎯 직접 해보기 — 공격을 실행해 보세요
아래에서 시스템 상태를 취약 또는 안전(조치 적용)으로 바꾼 뒤 공격 실행을 눌러, 같은 공격이 어떻게 다르게 끝나는지 직접 확인하세요.
# 공격자가 기본 커뮤니티로 정보를 읽고 변조한다
# [공격 실행] 버튼을 누르면 시작합니다.
📋 설정 비교 (왜 막혔나?)
✗ 취약한 설정
# community string 확인
#
grep -i community /etc/snmp/snmpd.conf
rocommunity public
rwcommunity private
→ 기본 커뮤니티 사용 (취약)
✓ 안전한 설정
# 복잡한 값 + 접근제한
#
grep -i community /etc/snmp/snmpd.conf
rocommunity Str0ng#Comm 10.0.0.0/24
→ 복잡도+소스 제한, SNMPv3 권장 (양호)
🔧 조치 방법
- public/private 등 기본 community string을 추측 어려운 값으로 변경합니다.
- community 뒤에 접근 허용 네트워크를 지정해 소스를 제한합니다.
- 가능하면 인증·암호화를 지원하는
SNMPv3를 사용합니다.
✅ 점검 체크리스트
- 기본 community string(public/private)이 변경됨
- 접근 소스가 제한되었는가
- SNMPv3 사용 검토
점검기준: 서비스 관리 > SNMP Community String 복잡도