☕ Java 코드 에디터
취약한 코드
// [취약] 신뢰할 수 없는 입력을 그대로 역직렬화 → RCE 위험
ObjectInputStream ois = new ObjectInputStream(socket.getInputStream());
Object obj = ois.readObject();
💡 수정 가이드 (KISA 기준)
1. 역직렬화 필터
허용 클래스 화이트리스트 적용.
ObjectInputStream ois = new ObjectInputStream(in);
ois.setObjectInputFilter(ObjectInputFilter.Config
.createFilter("com.bank.dto.*;!*")); // 허용 클래스만
Object obj = ois.readObject();
📊 분석 결과 및 설명
🎯 목표
신뢰할 수 없는 데이터 역직렬화 시 허용 클래스를 제한하거나 안전한 포맷을 씁니다.
⚠️ 현재 취약점
Untrusted Deserialization
임의 객체 역직렬화로 RCE가 가능합니다.